为什么 A 能 ping 通 B,B 却不能 ping 通 A ?
有开发小哥咨询了一个问题,记录一下处理过程分享给有需要的朋友。
问题如下:
A、B 两台开发服务器连接交换机,并且 A、B 两台服务器的 IP 地址设置为同一个网段,却发现 A 能 ping 通 B ,B 却不能 ping 通 A 。
如图:
问题原因:
开发小哥怀疑交换机或者网络有问题,但排查半天也没找到原因,因为这种情况我遇到比较多,就直接说大概率是防火墙的问题,
A 能 ping 通 B ,B 却不能 ping 通 A,是因为 A 开启了防火墙,禁止 ping,这样 B 就不能 ping 通 A 了,这么做通常都是出于安全考虑。
Windows 服务器系统,Windows7,Windows10 系统,默认防火墙都是禁止了 ping 请求的,还有大多数物理防火墙,如果做网关的话,默认也是禁止 ping 的。
Windows防火墙
为什么有些人新装的 Windows10 可以 ping 通呢,那是因为安装Ghost版本的系统,系统制作人员把防火墙规则开启了,所以安装好系统后,这台电脑也能够被ping通。
遇到这种单通的情况,我们只需要添加被ping电脑的防火墙,也就是拓扑图上 A Windows防火墙的入站规则,或者临时直接关闭防火墙,B 就能 ping 通 A 了。
如果不想关闭防火墙,又想 A 被 ping 通,就设置 A 的 Windows 防火墙入站规则,点击 Windows 图标,搜索防火墙,点击Windows Defender防火墙-高级设置-入站规则-找到文件和打印机共享(回显请求 - ICMPv4-In),双击-允许连接-确定,可能有好几个,都设置允许连接吧。
设置文件和打印机共享(回显请求 - ICMPv4-In)
选择允许连接
设置好以后,B 就能 ping 通 A 了。