MAP-E:draft-03 与 RFC 7597
文档仍在编辑中,内容可能与实际版本有出入。
这是一篇补充阅读。正常配置 Flet’H 时,不需要先理解 MAP-E 的两种规范(draft 与 RFC)的历史差异。
先记结论:draft 通常不是另一种独立线路服务,而是旧实现、兼容模式或旧命名。真正影响能否联网的是计算出来的 MAP-E 参数是否和 ISP / VNE 的规则一致。
MAP-E RFC 是什么
Section titled “MAP-E RFC 是什么”MAP-E 的正式规格是 RFC 7597。它定义了用 IPv6 承载 IPv4 的 MAP 规则,包括:
- IPv4 前缀
- IPv6 前缀
- EA bits
- PSID 长度
- offset
- BR 地址
- 可用端口集
Flet’H 在 MAP-E 场景里最终关心的也是这些结果:IPv4 地址、BR 地址、PSID、offset 和可用端口范围。
draft 是什么
Section titled “draft 是什么”在日本 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”,也不等于“线路一定有问题”。
draft 和 RFC 在技术细节上的区别
Section titled “draft 和 RFC 在技术细节上的区别”虽然两者都叫 MAP-E,但 draft-03 和最终的 RFC 7597 并不完全相同。与 Flet’H 直接相关的区别如下:
| 项目 | draft-03(早期草案) | RFC 7597(正式标准) |
|---|---|---|
| MAP CE 的 IPv6 地址布局 | 接口标识中按 draft-03 的位置嵌入 IPv4 地址和 PSID | 使用 RFC 7597 第 6 节定义的另一种接口标识布局 |
| 默认 PSID offset | 4 | 6;但规则也可以指定其他值,因此看到 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 地址,不要只根据 draft 或 RFC 标签判断。