本页协议说明(点开阅读)

ICMPv6 (Internet Control Message Protocol for IPv6)

它比 ICMP 管得多

IPv4 里 ICMP 只是个「报错和 ping」的辅助协议,拦掉了网络还能用。

★★★ 但 IPv6 把好几件必需的事都搬到了 ICMPv6 上:

· NDP(邻居发现,相当于 ARP);
· RA / SLAAC(找路由器、自动配地址);
· MLD(组播成员管理);
· PMTUD(因为路由器不分片,只能靠它通知源端)。

为什么 PMTUD 变成必需

★★★ IPv6 的路由器不分片。包太大时它只能丢弃,然后回一个 Packet Too Big(类型 2),告诉源端「这条路只能过 1400」。

★★★ 源端收到之后把自己的包改小,重发。

★★ 所以这个报文一旦被防火墙拦掉,症状是小包通、大包全丢,而且没有任何提示 —— 这叫 PMTUD 黑洞。

★ 常见误解

★★★ 「照 IPv4 的习惯把 ICMP 全拦掉」 —— 在 IPv6 里这等于断网:邻居发现不通 → 连同一网段的机器都找不到;RA 不通 → 主机拿不到地址。

★★ 「ICMPv6 只是 ICMP 换了个版本号」 —— 它多了 NDP、RA、MLD 这几大块,职责范围完全不同。

★★ 「拦掉能提升安全」 —— 该做的是按类型精细放行(放行 1/2/3/4 和 133~137),而不是一刀切。

冀ICP备2026021556号-2|冀公网安备13068302000206号