首页/网络/IP 与子网速查/IPv6 最小 MTU 1280 与 PMTUD 黑洞
IPv6 与下一代网络42 条

IPv6 最小 MTU 1280 与 PMTUD 黑洞

IPv6 规定链路最小 MTU 1280,路由器不分片、只能源端分片;路径 MTU 靠 ICMPv6 类型 2(Packet Too Big)反馈。若它被防火墙拦掉,就会出现“ping 通、大包全丢”的 PMTUD 黑洞。

IP 与子网速查网络更新于 2026-10-13

为什么最小传输单元是固定的

六层标准规定链路必须支持至少一千二百八十字节的报文尺寸,这个数字是可用性的下限而非推荐值。之所以要求这样,是为了让所有链路都有一个无需协商即可通行的大小,避免分片带来的性能与可靠性问题;同时也避免把最小尺寸定得过小,导致协议头占比过高。

为什么会出现大包黑洞

六层把分片责任交给发送方:中间设备遇到超过下一跳承载能力的大包时不再自行分片,而是回送一个报文过大的差错通知,由发送方调整大小重发。如果这条差错通知被防火墙拦掉,发送方就会一直用过大尺寸重发,表现为连通性测试正常、稍大的数据全部丢失。

基本信息

链路最小尺寸一千二百八十字节,必须支持
分片责任由发送方执行,中间设备不再分片
反馈机制报文过大的差错通知回送给发送方
典型症状小包通、大包不通,页面打不开
隧道场景封装越厚,可用的载荷越小

典型使用场景

  • 排查网页打不开:连通性测试正常但应用不可用时,优先怀疑这条反馈被拦截
  • 隧道加固:封装层数越多,越需要调低接口尺寸或做报文段钳制
  • 防火墙策略复核:确认差错通知被放行,是策略评审的固定检查项
  • 验证手段:用逐步加大的探测报文确定可通行的最大尺寸
  • 跨运营商排障:路径中某一段承载能力较小且不回送通知时,需要逐段确认
  • 方案设计:在设计阶段就把封装开销算进可用载荷,避免上线后才发现问题

症状与验证

症状与验证
ping -6 -s 1400 目标地址
# 大包不通、小包通,基本可以判定为路径尺寸探测问题
# 提示报文过大,或大包完全超时
ping -6 -s 1200 目标地址
# 小尺寸通常正常,用于对照
# 处置:放行报文过大类型的差错通知,或在隧道场景对报文段长度做钳制

尺寸与处置对照

场景可用载荷常见问题处置方向
普通以太网标准尺寸少见保持默认
单层封装减去封装开销大包丢失调低接口值
多层封装减去多层开销小包通大包不通报文段长度钳制
差错被拦截名义可用发送方一直重试放行差错通知
六层的路径探测依赖差错通知,因此它不是可选的优化项而是必需机制;拦截它会在应用层表现为难以定位的间歇故障,尤其是页面加载与大文件传输。
隧道场景下不要沿用默认尺寸假设:每多一层封装就少一部分可用载荷,尽早调低接口值或做报文段长度钳制,比上线后再排查省事得多。

易错点

  • 防火墙拦截报文过大类型的差错通知,表现为连通性测试正常但网页转圈
  • 沿用以太网默认尺寸假设,隧道封装后载荷溢出,大包全部丢失
  • 只用小包做连通性验证就判定链路正常,忽略了尺寸相关问题的存在

数据来源与参考

  • RFC 8200 §5(MTU 与分片)
  • RFC 8899(DPLPMTUD)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌