【说明】
windows10:已关闭防火墙
linux发行版本:centos7.9(已禁用SElinux、已关闭防火墙)
虚拟机软件:VMware Workstation 17
虚拟机网络模式:NAT模式
docker版本:20.4.5
docker网络模式:桥接模式
相关IP地址:
win10(VMnet8网卡) | 192.168.5.1/24 |
centos7.9(ens33网卡) | 192.168.5.136/24 |
docker0 | 172.17.0.1/16 |
容器(busybox) | 172.17.0.2/16 |
关系图:
【目的】
使win10物理机与虚拟机上的docker容器(busybox)能够相互ping通访问。
【分析】
此时win10与linux与docker之间,除了win10ping不通docker,其余两两均可ping通,原因是win10上没有到达172.17.0.0/16网段的路由,需要手动添加。
【操作】
在win10上以管理员身份运行cmd,输入命令:
route add 172.17.0.0 mask 255.255.0.0 192.168.5.136
输入命令 route print 查看路由表:
此时ping 172.17.0.2却还是不通,理论上此时是可通的
尝试ping 172.17.0.1(linux上的docker0网卡),可通
在尝试过网上的各种办法后都没有解决这个问题,最后尝试在linux上开启防火墙,发现可以ping通:
我又尝试再次关闭防火墙之后再ping:
发现还是可通的。
【结论】
到这里虽然表面上达到了实验目的,但对于这一现象博主目前还是不知道其底层原因。
希望大佬能够指点一二。