I got the problem that I found I could not ping the IP address “172.17.54.104” within my Linux VM. The IP address is an internal server. Then I found the root cause is that, Docker is installed on my Linux VM which by default create a “docker0” bridge with the IP range “172.17.x.x”. So an IP routing rule is created for the “172.17.x.x” IP range which overrides the corrrect IP I want to access.
A workaround is to execute the following command to remove the IP routing rule:
1 | ~> ip route |
However, in this case if you restart the OS, the routing rule will come back. The final solution is that, update(or create if it’s not existing) the “/etc/docker/daemon.json” file like below:
1 | { |
Then restart the Docker service:
1 | sudo service docker restart |
Now if you execute the “ifconfig” command, you can see the “docker0” network’s IP address is updated to “inet addr:172.26.0.1”. And it will still work after OS restarts.