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理知识。

希望你能帮忙。

阅读完后我设法解决这个问题:

https://success.docker.com/Architecture/Docker_Reference_Architecture%3A_Designing_Scalable%2C_Portable_Docker_Container_Networks

第二个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。