在Ubuntu中透過特定網路安裝docker後無法連接到互聯網

在Ubuntu中透過特定網路安裝docker後無法連接到互聯網

在 Ubuntu 18.04 中安裝 docker 後,我無法連接到非常特定的網路!我們有大學網路登入的使用者名稱和密碼,問題是我無法再登入。我使用的 VPN 連線是到伺服器的:access1.sharif.ir
我知道有一個類似的問題,例如: 在 Ubuntu 18.04 中安裝 docker-ce 會破壞主機的網路連接
但我沒有守護程式.json在我的 docker 資料夾中,我不知道該怎麼辦。請幫忙!

答案1

您可以嘗試執行以下命令:

dhclient -v -4

當我的機器因 Docker 而失去連接時,它對我很有幫助。

答案2

注意:此解決方案已在多台電腦上進行了測試,網址為謝里夫科技大學在 ubuntu 和 arch 筆記型電腦上。

我在 上的完全相同的網路上遇到了完全相同的問題manjaro (arch linux)。這是因為 docker172.27.1.1預設使用的是Sharif Universitynetwork 中使用的確切網路。

我只是更改了 docker 預設路由,這在 docker 論壇中進行了解釋這裡。要解釋更多信息,請透過以下方式開啟(或建立)文件/etc/docker/daemon.json

sudo nano /etc/docker/daemon.json

然後添加此 json 來解決問題(請注意,您應該使用您的機構或公司不使用的東西):

{
    "bip" : "10.10.2.1/24",
    "ipv6": false
}

之後,重新啟動系統即可完成。您也可以使用ifconfigifconfig docker0命令查看您的 docker 介面。

答案3

我在 Debain 10 下也遇到同樣的問題dhclient。問題是執行任何 docker 容器都會透過主機站點上的 docker 介面新增新的預設路由:

(base) mkawka@smok:~$ ip route
default dev vethe8e28b3 scope link 
default via 192.168.5.1 dev wlp2s0 
default dev enp3s0 scope link metric 1002 linkdown 
10.99.0.0/16 dev docker0 proto kernel scope link src 10.99.0.1 
169.254.0.0/16 dev enp3s0 proto kernel scope link src 169.254.10.179 linkdown 
169.254.0.0/16 dev vethe8e28b3 proto kernel scope link src 169.254.53.97 
192.168.5.0/24 dev wlp2s0 proto kernel scope link src 192.168.5.4 

編輯:好的,Debian 的解決方案是阻止 Connman 玩弄 docker 網路介面。為此,請編輯該文件/etc/connman/main.conf並確保取消註釋以下行:

NetworkInterfaceBlacklist = vmnet,vboxnet,virbr,ifb,ve-,vb-,docker,veth

我想對於其他發行版 NetworkManager 可能有類似的選項。

相關內容