1
我在Ubuntu系統上有一個Ubuntu容器。容器就像客戶端一樣,Ubuntu主機系統就像服務器一樣工作。所以我想通過套接字編程將數據發送到我的主機系統。要將數據發送到主機系統,我希望主機IP。如何獲取容器中的主機IP。我試過在Docker容器中獲取主機IP
/sbin/ip route|awk '/default/ { print $3 }'
但是它返回的是Docker ip:172.17.42.1
。但是我的主機系統idp是:192.168.2.101
。如何在Docker容器中獲取主機IP。你可以看到下面的代碼來知道問題。
Ubuntu的主機server.c看起來象下面這樣:
bind(listenfd, (struct sockaddr*)&serv_addr, sizeof(serv_addr));
listen(listenfd, 10);
connfd = accept(listenfd, (struct sockaddr*)NULL, NULL);
集裝箱client.c看起來象下面這樣:
serverAddr.sin_family = AF_INET;
serverAddr.sin_addr.s_addr = inet_addr("127.0.0.1"); // <-- I want place my Host IP here
如何獲得主機的IP集裝箱?