跳转到内容

MAP-E:draft-03 与 RFC 7597

文档仍在编辑中,内容可能与实际版本有出入。

这是一篇补充阅读。正常配置 Flet’H 时,不需要先理解 MAP-E 的两种规范(draft 与 RFC)的历史差异。

先记结论:draft 通常不是另一种独立线路服务,而是旧实现、兼容模式或旧命名。真正影响能否联网的是计算出来的 MAP-E 参数是否和 ISP / VNE 的规则一致。

MAP-E 的正式规格是 RFC 7597。它定义了用 IPv6 承载 IPv4 的 MAP 规则,包括:

  • IPv4 前缀
  • IPv6 前缀
  • EA bits
  • PSID 长度
  • offset
  • BR 地址
  • 可用端口集

Flet’H 在 MAP-E 场景里最终关心的也是这些结果:IPv4 地址、BR 地址、PSID、offset 和可用端口范围。

在日本 IPv4 over IPv6 线路和 OpenWrt 旧脚本里,你可能会看到 MAP-E(draft)draft 或旧版 map 的说法。

这通常指 draft-ietf-softwire-map-03。这是 MAP-E 成为正式 RFC 标准前的一个草案版本。由于日本的 VNE(如 JPNE)部署较早,当时 RFC 7597 尚未定稿,因此很多早期设备和实现都参考了 -03 草案。

这些说法通常表示:

  • 早期 draft-03 时代留下来的实现或命名。
  • 旧版 OpenWrt map 脚本对该草案的兼容行为。
  • 某些线路或设备文档沿用旧字段名。
  • UI 或配置项还保留 draft 标签。

它不等于“不是 MAP-E”,也不等于“线路一定有问题”。

虽然两者都叫 MAP-E,但 draft-03 和最终的 RFC 7597 并不完全相同。与 Flet’H 直接相关的区别如下:

项目draft-03(早期草案)RFC 7597(正式标准)
MAP CE 的 IPv6 地址布局接口标识中按 draft-03 的位置嵌入 IPv4 地址和 PSID使用 RFC 7597 第 6 节定义的另一种接口标识布局
默认 PSID offset46;但规则也可以指定其他值,因此看到 offset 4 不能单独证明使用了 draft
端口集算法使用 A | PSID | M 的 infix / GMA 布局保留相同的基本布局;不能只凭端口公式区分 draft 和 RFC

日本的 MAP-E 商用服务采用 draft-ietf-softwire-map-03 实现。Flet’H 也按 draft-03 的兼容方式计算参数并构造 MAP-E 隧道,不使用 RFC 7597 的实现方式。

排障时应对照 ISP / VNE 实际提供的 IPv4 地址、BR、PSID、offset、端口集和 MAP-E 本地 IPv6 地址,不要只根据 draftRFC 标签判断。