摘要
- RFC 3519 把 Mobile IPv4 数据封装进 UDP,并让家庭代理把穿过 NAT 后看见的外层源地址与端口当作有效转交定位符。
- Mobile IP 认证保护注册消息内的转交地址,却不保护 NAT 改写的外层二元组。短绑定寿命、keepalive 与 IPsec 可以限制后果,却不能认证该定位符。
Mobile IPv4 与 NAPT 各自的假设在这里碰撞。前者要求家庭代理把数据隧道送往可全局路由的转交地址;后者依靠 TCP 或 UDP 端口,把共用一个公网地址的多个私网节点区分开。普通 IP-in-IP 没有端口,数据隧道通常无法被 NAPT 正确分流,而本来就是 UDP 的注册请求与应答却可能顺利往返。
RFC 3519 为数据补上了这个传输标识。移动节点在 Registration Request 里加入 UDP Tunnel Request 扩展;家庭代理可用 UDP Tunnel Reply 接受或拒绝,并在 IP-in-UDP、GRE-in-UDP 与 minimal encapsulation in UDP 之间确定形式。数据与重新注册继续使用原注册的源端口,目标端口固定为 434,让转换器有一组可以维护的映射键。
肯定应答的含义十分具体:家庭代理同意当前 mobility binding 使用 UDP 隧道。它没有认证 NAT 产生的地址与端口,也没有测出映射会存活多久,更没有证明下一份入站数据一定抵达移动节点。
家庭代理把外层 IP 源地址与注册消息内部的 care-of address 比较。如果两者不一致,它据此判断移动节点可能位于 NAT 之后。允许 UDP 穿越时,除特殊 R 标志路径外,家庭代理会把观察到的外层源地址作为有效转交地址。
这一步把两种证据拼在一起。Mobile-Home 或 Foreign-Home Authentication Extension 保护注册消息字段,其中包括消息内的转交地址。NAT 可以改写的外层 IP 地址与 UDP 端口不在该认证范围内。然而,家庭代理真正向回发送数据时,正需要这组外层值。
RFC 3519 没有淡化结果。路径上的攻击者可以修改 Registration Request 的 IP 与 UDP 头部,使新 mobility binding 指向攻击者选择的位置。完成一次改写后,攻击者甚至无需继续操纵流量;错误重定向会持续到绑定到期或移动节点再次注册。
经 foreign agent 注册 co-located care-of address 的路径把边界表现得更清楚。注册消息与最终 UDP 隧道可能使用不同端口,家庭代理必须先保持 half-bound 状态,等待移动节点的第一份 keepalive,才能学到正确的隧道端口。
只观察到注册交换的攻击者就可能抢先发送伪造 keepalive。标准要求其外层源 IP 必须与 Registration Request 一致,从而把攻击范围限制在同一地址的另一端口,却仍没有认证端口本身。移动节点收到肯定应答后立刻发送第一份 keepalive,可以缩短竞争窗口,但不能把观察值变成签名身份。
Keepalive 还有另一项工作。NAT 可能在空闲后删除映射。RFC 3519 使用 UDP 封装的 ICMP Echo Request/Reply,让移动节点发现映射丢失。多次重传仍无回应时,它可以重新注册,把新映射暴露给家庭代理,并在同一网络上缩短间隔,但不得低于十秒。
默认间隔是 110 秒,家庭代理可以建议其他值。不过标准明确禁止家庭代理动态调整间隔来补偿映射丢失,因为它没有足够信息可靠判断。离故障信号更近的移动节点负责适配。这里没有“统一 NAT 超时”,只有局部观察者按自己的证据决策。
三种寿命可能彼此分离。经过认证的 mobility binding 仍有效时,NAT 映射可能已经消失;新的出站包可能创建新映射,而家庭代理仍向旧端口发送。绑定存在、映射存在与数据可达因此是三张不同凭证。
标准建议使用保守的短绑定寿命。它能限制攻击者停止操作后错误重定向继续存在的时间,也能缩短未检测移动造成的黑洞,却不能阻止外层头被改写。寿命控制降低坏状态的持续范围,不提高输入的权威性。
IPsec 的作用也很窄。RFC 3519 认为它可以在中间网络不可信时保护用户数据机密性,并让安全关联无需因移动重新建立;同一章节又明确指出,除保护被劫持流量的内容外,IPsec 不防御前述重定向。内容保密与目的地权威不是同一件事。
UNSAF 讨论对代价非常坦率。移动节点不会学习并传播转换后的地址,但家庭代理仍依赖未受保护、可被伪造的有效转交地址。更强的长期方案需要发现沿途每次转换、验证每台 NAT 的转换权限,并把靠近家庭代理的 NAT 地址放进已签名注册中。RFC 3519 选择了与既有 NAT 协作,而不是宣称信任缺口消失。
IANA Mobile IPv4 注册表保存新消息、两个扩展与错误码的编号。它证明实现之间可共享同一代码点,不证明一次会话已协商、外层二元组属于某节点或隧道已经成功。
RFC 3519 的历史意义不是“认证失效”,而是“已认证对象可与未认证路由证据共同生成重大状态”。注册本身可以有效,而实际转交定位符可以是假的。准确的运维叙述必须允许这两句话同时成立。
来源
- https://www.rfc-editor.org/rfc/rfc3519.html
- https://www.rfc-editor.org/rfc/rfc3519.txt
- https://www.rfc-editor.org/info/rfc3519
- https://datatracker.ietf.org/doc/rfc3519/
- https://datatracker.ietf.org/doc/rfc3519/history/
- https://www.rfc-editor.org/errata_search.php?rfc=3519
- https://www.rfc-editor.org/rfc/rfc3344.html
- https://www.rfc-editor.org/rfc/rfc2003.html
- https://www.rfc-editor.org/rfc/rfc2004.html
- https://www.rfc-editor.org/rfc/rfc2784.html
- https://www.rfc-editor.org/rfc/rfc3024.html
- https://www.rfc-editor.org/rfc/rfc2663.html
- https://www.rfc-editor.org/rfc/rfc3022.html
- https://www.rfc-editor.org/rfc/rfc3424.html
- https://www.iana.org/assignments/mobileip-numbers/mobileip-numbers.xhtml
- https://heng.lu/running-code-primary-the-patch-needed-to-preserve-the-internet-original-design/
- https://heng.lu/on-reality-layers-symbolic-power-and-why-clarity-feels-so-hostile/
- https://heng.lu/minimum-initial-specification-localized-future-decision-voluntary-adoption-internet-coordination-system/
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限 Strategic Circle
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance
