可以建立TCP连接但是无法ping通?windows设置
前提
首先请确保关闭防火墙后可以ping通。否则你的路由都不通,不在本文讨论范围内。
本文解决开启防火墙发现TCP连接可达但是无法ping通的问题。
做法
- 启用入站规则中的文件和打印机共享(ipv4或者ipv6根据需要自己看)
-
尝试ping。如果还不行执行3
-
检查是否是同一个子网。第1步设置的这个规则要求:必须同一个子网才可以ping,如果不在一个子网,即使路由可达,也不能ping。如果不是,则需要添加一个允许非同子网主机ping的规则:
新建入站规则->自定义->所有程序->协议:ICMPv4(ICMPv6),剩下的一路下一步即可。
后记
点开文件和打印机共享请求 - (ICMPv4 in)的属性,可以看到默认只对本地子网有效,也就是源IP必须和本机的某块网卡的IP在同一个子网(并不要求ping数据包必须来自该网卡)。这就是设置了防火墙但无法ping的元凶!