use*_*184 4 networking debian raspberry-pi docker armbian
这里是一个菜鸟,从 Orange Pi 3(Rasberry Pi 克隆)中的 docker 开始。
我正在尝试配置并启动 docker 容器 (bitwarden_rs),但是当我这样做时,我失去了与外部网络的连接。Docker 弄乱了我的路由表。
网络配置:我有一个网桥br0,桥接eth0和wlan0。(eth0连接路由器,wlan0配置为AP模式)
容器停止时的表:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default _gateway 0.0.0.0 UG 425 0 0 br0 <---OK
link-local 0.0.0.0 255.255.0.0 U 1000 0 0 br0
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
192.168.1.0 0.0.0.0 255.255.255.0 U 425 0 0 br0
192.168.2.0 0.0.0.0 255.255.255.0 U 425 0 0 br0
Run Code Online (Sandbox Code Playgroud)
容器运行时的表(外部无法访问互联网)
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 0.0.0.0 0.0.0.0 U 205 0 0 docker0 <---NOT OK
default _gateway 0.0.0.0 UG 425 0 0 br0
link-local 0.0.0.0 255.255.0.0 U 205 0 0 docker0
link-local 0.0.0.0 255.255.0.0 U 230 0 0 vethed140ce
link-local 0.0.0.0 255.255.0.0 U 1000 0 0 br0
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
192.168.1.0 0.0.0.0 255.255.255.0 U 425 0 0 br0
192.168.2.0 0.0.0.0 255.255.255.0 U 425 0 0 br0
Run Code Online (Sandbox Code Playgroud)
我能做什么来修复它?这是 docker 配置问题或者可能是我的系统问题(armbian)。谢谢
在ubuntu 20.04上,我尝试了很多方法,例如阻止dhcpd更新路由 或更改NetworkManager配置以让网络管理器忽略veth *设备 以上都不起作用。
我花了很多时间发现connman服务改变了默认路由。通过取消注释以下行来更改其配置文件 /etc/connman/main.conf:
#NetworkInterfaceBlacklist = vmnet,vboxnet,virbr,ifb,veth-,vb-
Run Code Online (Sandbox Code Playgroud)
和
systemctl restart connman
Run Code Online (Sandbox Code Playgroud)
重新启动 connman 服务。问题最终得到解决。
| 归档时间: |
|
| 查看次数: |
4471 次 |
| 最近记录: |