Windows docker container cannot ping host

此生再无相见时 提交于 2019-12-07 12:10:42

问题


I am running a windows docker container on a Windows Server 2016 host, running default configuration.

When running the docker container using the command:

docker run -it microsoft/windowsservercore powershell

When I run the command:

ping <hostIPAddress>

It just says that the request times out. I have checked that I can ping 8.8.8.8 and google.com etc... and even other machines on the same subnet. The only one I cannot ping is the host.

I have added '--dns ' to the 'docker run' command but this only allows me to ping the host machine via hostname and not IP.

Has anyone else seen this problem and have a solution?


回答1:


I found a workaround (I'm not willing to call it a solution):

Windows Container Network Drivers: create a 'transparent' network:

docker network create -d transparent trans

Attach container to this network

docker run --network=trans ...

Important: Please note, that with this network, your container needs to obtain an IP Adress from the Host Subnet and it is directly exposed to it.

maybe related (this is about access the containers from the host):

According to https://github.com/Microsoft/Virtualization-Documentation/issues/253#issuecomment-217975932 (JMesser81):

This is a known limitation in our Windows NAT implementation (WinNAT) that you cannot access the external port in a static port mapping directly from the container (NAT) host.




回答2:


I am facing the same issue.

My workaround is to restart docker service, afterwards it works fine. I'm still looking for a permanent solution.

root@a6c40eb25cbf:/# ping xxx.xx.xx.xxx
PING xxx.xx.xx.xxx (xxx.xx.xx.xxx): 56 data bytes
64 bytes from xxx.xx.xx.xxx: icmp_seq=0 ttl=37 time=3.541 ms
64 bytes from xxx.xx.xx.xxx: icmp_seq=1 ttl=37 time=2.643 ms
64 bytes from xxx.xx.xx.xxx: icmp_seq=2 ttl=37 time=1.857 ms
^C--- xxx.xx.xx.xxx ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss


来源:https://stackoverflow.com/questions/43074576/windows-docker-container-cannot-ping-host

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!