Docker创build了两个破坏我的互联网访问的桥梁
我正面临着一个很奇怪的问题:
这是我的configuration:
- docker17-ce
- Ubuntu 16.04。
我从两个不同的地方与不同的互联网提供商工作。
首先,一切正常,我可以运行docker工人开箱即可访问互联网没有任何问题。
但是,第二个地方, 当docker运行的时候,我无法访问互联网,而docker创build的这两个虚拟的桥梁则更加精确 。
在这个地方,互联网连接操作非常扼杀,我可以平谷歌DNS的8.8.8.8,但几乎所有DNS请求失败,大部分时间后几秒钟的互联网连接完全closures。
(第一个和第二个唯一的区别是互联网提供商)。
起初,我想我可以通过更改默认的网桥ip来解决这个问题,但是这根本不能解决问题。
问题是docker守护进程的–bip选项会更改默认docker bridge docker0的IP 地址 ,但是docker也会创build另一个名为br-1a0208f108d9的桥,它不会反映传递给–bip选项的设置。
我想这第二个桥梁给我的networking造成麻烦,因为它重叠了我的WiFi适配器configuration。
我很难试图诊断这一点。
我的问题是:
- 我怎么能确定我的假设是正确的,这第二bridget是与我的WiFi适配器冲突
- 这第二座桥是什么? 很容易find关于docker0桥的文档,但是我找不到与这个第二桥相关的任何东西br-1a0208f108d9
- 如何完全相同的设置可以在一个地方而不是另一个地方工作。
有了这个麻烦,我觉得我很接近我的docker知识水平,但在此之前,我不得不增加我的networkingpipe理知识。
希望你能帮忙。
阅读完后我设法解决这个问题:
第二个docker桥br-1a0208f108d9是由docker工创build的,因为我使用了一个docker-compose文件,它涉及到创build其他自定义networking。
这个networking使用了一个固定的IP范围 :
networks: my_network: driver: bridge ipam: config: - subnet: 172.16.0.0/16 gateway: 172.16.0.1
- 在我家,物理wifinetworking适配器被自动分配使用DHCP地址192.168.0.X.
- 但在其他地方,相同的WiFi适配器得到地址172.16.0.x
这与定制dockernetworking相冲突。
解决scheme只是改变自定义dockernetworking的IP。