摘要

  • IPv6 地址可达、前缀在 BGP 中可见、普通 ping 成功,都不能证明携带 Fragment、Destination Options、Hop-by-Hop 或 Routing Header 的包能通过。能力属于一次有条件的路径测试,而不是整个地址族。
  • RFC 7872、APNIC 和 RIPE 的公开测量显示,结果会随扩展头类型、长度、目的端样本、服务器位置和实验方法显著变化。这些历史数据能证明需要测量,不能冒充 2026 年全球丢包率。
  • 实际开关掌握在路径运营商、云/DDoS 服务和设备厂商手中。可证伪的趋势判断必须把普通 IPv6 与 8–128 字节扩展头变体放进多路径、多设备矩阵;可信替代方案是有边界、会过期、可诊断的路径能力合同。

两只包揭开一项隐藏产品

IPv6 基本头固定为 40 字节,可选的互联网层信息放在扩展头中。RFC 8200 定义一组 Next Header 链:每一段告诉接收者下一段是什么,直到找到 TCP、UDP 等上层头。需要按端口做 ACL、DDoS 或负载均衡的中间设备,必须先把链走完。

这就是成本机制。高速芯片的解析阶段、缓存和慢路径容量都有限。普通 IPv6 包可以线速转发;同一路径上,传输层头后移 64 或 128 字节,设备可能继续解析、忽略、送 CPU、限速或直接丢弃。全球统一的是包格式,逐台购买的是解析预算。

RFC 7045 说转发节点原则上应不因标准扩展头而丢包,检查扩展头的防火墙要能够正确识别标准类型;它也保留了明确配置策略的空间。这个边界很重要:协议能写清互操作要求,却不能给第三方旧线卡增加晶体管,也不能强迫一个独立 DDoS 服务接受无限处理成本。

RFC 7112 要求第一片包含直到上层头为止的完整 IPv6 头链,提高了可检查性,却不保证每台设备都解析得到那里。RFC 9098 指出,除路径 MTU 外,架构没有统一限制上层头能藏多深。若设备要看 Layer 4,就要顺序走完整条链。“IPv6 已开通”因此是必要条件,不是功能验收。

历史百分比为什么必须带着实验说明

RFC 7872 于 2016 年发布。World IPv6 Launch 的 Web 服务器样本中,8 字节 Destination Options、8 字节 Hop-by-Hop 以及其 Fragment 测试条件的丢包率分别为 11.88%、40.70% 和 30.51%;Alexa Web 样本对应为 10.91%、39.03% 和 28.26%。邮件与域名服务器不同,Alexa 域名服务器的 Fragment 条件达到 55.23%。

这些数字证明普通 IPv6 目标不是足够的分母,也证明扩展头类型和目的端角色能改变结果。它们不代表今天。名单、服务类型、测试包构造、路径与时间都是结果的一部分,删掉这些限定,就只剩一个看似精确的误导。

APNIC 后来把实验方向转向客户端。2022 年报告称,广告招募的测量平台每天执行约 400 万次实验,从少量服务器向终端发送带扩展头的流量。2023 年跟进实验把 Destination Options 与 Hop-by-Hop PadN 设为 8、16、32、64、128 字节,并测试初始分片从 1,200 到 1,416 字节。

2023 年 APNIC 报告记录:Destination Options 在 64 字节及以下约 30% 丢失,128 字节约 55%;同一指标在 2023 年 4 月曾从约 90% 突然变为 55%,原因未确定。同一篇 APNIC 报告还称,2023 年 4 月 27 日至 5 月 15 日,阿伯丁大学服务器对英国广告样本进行 370,742 次 Hop-by-Hop 试验,整体丢失 99.04%;8 字节为 98.25%,128 字节为 99.99%。

99% 很醒目,却不能自动定位责任设备。接入 ASN 之间存在差异,作者也明确没有确认丢包究竟在托管环境、虚拟交换、途中设备还是终端。最有价值的结论不是“互联网一律丢弃”,而是换服务器、长度或样本网络就会改变证据解释。路径兼容必须按格子测。

RIPE Atlas 的包大小研究提供相邻对照。它报告参加实验的 IPv6 探针中约 10% 出现分片问题,同时 100 字节探针已有约 11% 的基础全丢失;不同包大小对应约 1,284–1,292 个探针。研究明确表示无法知道结果对更广互联网的适用程度。没有同路径普通包基线,任何扩展头失败率都会把普通不可达算进来。

谁有权决定解析到第几字节

厂商资料把抽象问题落到了产品表。Cisco 的扩展头文档针对特定旧平台描述固定硬件解析资源,以 64 字节扩展头链说明硬件路径,并说明应用上层过滤时,超过资源的包可能转到软件路径。Cisco IOS XR 7.1.1 的 NCS 5500 ACL 文档显示线卡差异:部分型号在硬件处理指定扩展头,其他条件下带扩展头流量的 Layer 4 匹配不支持。

Juniper 提供 extension-headers 匹配与平台限定;其一项 IDS 服务若不显式配置 allow-ipv6-extension-header,带任意扩展头的包默认被阻挡。Nokia 资料展示 ipv6-eh max 与 limited 两种解析模式,在所述版本的部分过滤条件下最多搜索六个扩展头。

这些材料不能用来排设备排行榜。它们证明解析深度、识别类型、默认动作、计数器和快/慢路径都是产品与版本属性。购买路由器或安全服务时,也在购买一段未来协议空间。云客户往往连设备型号都看不到,却要承担它的选择。

安全理由并非虚构。RFC 8504 允许主机限制单个头长度、头数量、选项数量和聚合链长度。RFC 8883 为“扩展头过大”“链过长”“头过多”“选项过多”等处理上限定义 ICMPv6 Parameter Problem 代码。RFC 9288 给出 transit 过滤建议。RFC 9673 在 2024 年更新 Hop-by-Hop 处理,承认选择性处理并寻求可部署边界。RFC 9805 又把 Router Alert 对新协议的使用废止,保留既有用途。

定义错误码不代表设备已实现,也不代表 ICMP 能沿反向路径回来。标准许可也不是无限 CPU 权利。真正可审计的问题是:路径公开承载哪些类型、多少字节、何种速率,超过边界时是否发出可用诊断。

一套可以推翻本文的测试

用 90 天做公开矩阵:至少三类接入、三类 transit、三类云或 DDoS 服务;三种路由芯片、三种防火墙和三种主机栈;每类服务 100 对独立路径。条件包括普通 IPv6、Fragment、Destination Options、Hop-by-Hop、Routing/SRH。

聚合扩展头为 8、16、32、64、128 字节;在适用范围测试推荐顺序与另一种有效顺序;覆盖 TCP、UDP、类 QUIC UDP,包长 256、1,200、1,400 字节;每格 100 次。记录交付、静默丢失、p95 时延、吞吐、ICMP、快/慢路径与受控设备 CPU。

只有所有有效扩展头格子的交付率与普通 IPv6 相差不超过 0.1 个百分点,每 100,000 次最多一例扩展头特有静默丢弃,p95 时延与吞吐偏差均在 2% 内,受控 CPU 增量低于 5 个百分点,直到 128 字节无慢路径断崖,且主动超过已声明上限时至少 99.9% 能收到相应 RFC 8883 错误,才能推翻趋势。类型、字节、顺序、设备和策略还必须不比普通可达性更能解释结果,新扩展头使用也无需隧道、白名单、探测或换硬件而增长。

若有效 8 字节头在至少 10% 受控路径造成超过 5 个百分点交付差距,64 到 128 字节出现可重复断崖,p95 时延增加 25%,吞吐下降 20%,CPU 增加 15 个百分点,超过半数上限丢弃没有可用 ICMP,或只换设备/固件/DDoS/路径就改变结果,则趋势加强。这些是未来判定阈值,不是 2026 年统计。

地址持有人买到什么,没买到什么

IPv6 分配记录证明唯一性与登记状态,BGP 路由证明某种控制面可见性。二者都没有替客户采购整条供应链的可选包处理能力。号码资源持有人需要把路径功能与地址数量、路由可见、普通 ping 分开采购。

询问供应商:支持哪些扩展头/选项,字节与数量上限多少,何时转慢路径,防火墙默认是什么,RFC 8883 有无计数,设备/策略改变后承诺何时失效。双向测试。一份只写“IPv6 connectivity”的 SLA 可能没有说谎,只是没有说你以为它说了什么。

治理边界同样清楚。IANA 提供共同标识,IETF 定义语法和处理预期,RIR 负责分配和登记资源。它们都不运营 transit parser。路径上的设备拥有实际开关,却不会因此获得全球授权。运营商有权保护自己的服务,也应当使影响可见、措施成比例、边界可替换。

制度锁定来自一条闭环:应用因不确定而少用扩展头;低流量削弱升级理由;固定芯片继续制造不确定。封装或封闭 SRv6 域可以绕过问题,却把应用绑定到另一套隧道、控制器和厂商保证。纸面继续可扩展,实际能力按例外销售。