Docker Swarm覆盖网络-无法Ping其他主机

时间:2020-10-15 13:23:58

标签: docker networking docker-swarm docker-networking

我有一个带有2个节点的docker swarm覆盖网络,即本地主机和PC上的VM。

docker network list输出:

NETWORK ID          NAME                   DRIVER              SCOPE
26ca272f0118        bridge                 bridge              local
48f94e0d47b8        docker_gwbridge        bridge              local
6ffc94e5474c        host                   host                local
o4ydpduwyfc9        ingress                overlay             swarm
3a177ebcdaae        none                   null                local
a3807498a383        source_default         bridge              local
igtysi5waw6s        test-overlay-network   overlay             swarm

docker node list输出:

ID                            HOSTNAME            STATUS              AVAILABILITY        MANAGE  STATUS      ENGINE VERSION
qex25m1yhjm28ojb18yrd3my3 *   node1              Ready               Active              Leader              19.03.13
64lsy02tvk2h6gqjdhejwvcvp     node2              Ready               Active              Reachable           19.03.13

两个主机的输出相同。我有2个运行在localhost上的容器和2个运行在VM上的容器。我想做的是将其中一个与另一个ping通。

netstat -tuplen命令告诉我,两个主机都正在运行docker必需的以下端口。

Proto Recv-Q Send-Q Local Address           Foreign Address         State       User       Inode      PID/Program name    
tcp6       0      0 :::2377                 :::*                    LISTEN      0          616456     -                   
tcp6       0      0 :::7946                 :::*                    LISTEN      0          612282     -                   
udp        0      0 0.0.0.0:4789            0.0.0.0:*                           0          613172     -                   
udp6       0      0 :::7946                 :::*                                0          612283 

因此,我在所有容器中运行ifconfig并获取其ip,然后尝试相互ping通。 eth1接口上的IP列表:

  • 10.0.3.102->本地主机
  • 10.0.3.105->本地主机
  • 10.0.3.107->虚拟机
  • 10.0.3.110-> VM

我可以从本地主机ping VM,也可以从同一主机上运行的容器ping通。但是我无法从其他主机ping通容器。可能是什么原因?

0 个答案:

没有答案