我终于让它工作了,但我仍然有点困惑。
有人知道为什么这种方法(netsh)在 win10 上不起作用吗? 技术网络论坛
netsh advfirewall firewall add rule name="ICMP Allow incoming V6 echo request" protocol="icmpv6:8,any" dir=in action=allow
因为 GUI 方法有效(出于某种原因): 图形用户界面方法
对我来说唯一明显的区别是:第二种方法不包括防火墙配置文件公共,但这不可能是原因,对吧?
PS:如果您也想测试这一点,那么您可能还必须在路由器防火墙中允许 ping6(如果您想要进行这样的测试,包括临时 ipv6):http://www.ipv6-test.com/显示“可访问”而不是“ICMP 已过滤”)
答案1
对于遇到上述相同问题的其他用户。ICMPv6 回显请求的代码为 128,而不是 ICMPv4 中的 8。这需要在规则中反映出来。
netsh advfirewall firewall add rule name="ICMP Allow incoming V6 echo request" protocol="icmpv6:128,any" dir=in action=allow
注意OP 命令中icmpv6:128
的 而不是。icmpv6:8
答案2
看起来民众是必需的。即使在 GUI 方法中,如果未选择“公共”,ICMP 也会被过滤。
答案3
顺便说一句,Windows 10 的默认 icmpv6 允许规则将源 IP 地址限制为同一网络,单击属性并允许所有源地址,那么您就不需要创建手动规则。