TL;DR 如何修复网桥 docker0,以便在网络模式桥接时能够从我的容器访问互联网?
几周前发生的一次停电显然破坏了服务器网络配置,并且有一段时间,DHCP 服务器没有为计算机分配正确的 IP。我设法通过配置网络来解决这个问题netplan(我不能保证在停电之前完成,它是由另一个团队管理的)。
然而,docker当网络模式为 时,容器无法访问互联网bridge。
从主机上,我可以ping google.com并且 DNS 解析工作正常。其他一切似乎也都有效。但是,当我启动一个容器(例如:)时 docker run -it --rm python:3.6.1 /bin/bash就ping不再起作用了。
所以这是我检查过的几件事:
ping在容器内不起作用:ping google.com只是挂起:
root@85deb9b2ae95:/# ping google.com
^C
Run Code Online (Sandbox Code Playgroud)
ping 8.8.8.8丢失所有包裹:
root@85deb9b2ae95:/# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
^C--- 8.8.8.8 ping statistics ---
9 packets transmitted, 0 packets received, 100% packet loss
Run Code Online (Sandbox Code Playgroud)
/etc/resolv.conf在 docker 容器中看起来没问题:root@85deb9b2ae95:/# cat /etc/resolv.conf
# This file is managed by man:systemd-resolved(8). Do …Run Code Online (Sandbox Code Playgroud)