当我发现奇怪的行为时,我正在与Docker Swarm一起玩,试图了解Docker Swarm和覆盖网络的IPv6问题。
netstat应该显示所有连接,但是在docker overlay网络发布的端口上,则不显示端点连接。
复制工作:
在覆盖网络上部署nginx并发布端口80
docker network create --driver覆盖nginx 泊坞窗服务create --name my-nginx --publish target = 80,published = 80 --network nginx --replicas = 2 nginx
然后从任何客户端连接到使用netcat创建的Web服务器:
nc 10.0.2.34 80
检查双方的netstat输出:
客户:
[root@docker1 centos]# netstat -ano | grep 80
tcp 0 0 10.0.0.208:39924 10.0.2.34:80 ESTABLISHED off (0.00/0/0)
在服务器上:
[root@docker2 centos]# netstat -ano | grep 80
tcp6 0 0 :::80 :::* LISTEN off (0.00/0/0)
您将看不到客户端已建立的连接。 但是连接正常,我可以从nginx取得主页。
有人可以解释吗?