首页/网络/IP 与子网速查/464XLAT:手机上最普及的 IPv4 兼容方案
IPv6 与下一代网络42 条

464XLAT:手机上最普及的 IPv4 兼容方案

464XLAT(RFC 6877)两端协作:设备内 CLAT 把 v4 应用流量转成 v6 发给运营商,网络侧 PLAT(即 NAT64)再转回 v4。Android 与多数移动网络默认启用,用户无感。

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

这套机制解决什么问题

移动网络已经普遍只提供六层地址,但大量应用仍然只会使用四层协议。为了让这些应用不改代码就能继续工作,设备侧与网络侧各放一个转换器协同工作:设备侧把四层流量转成六层发出去,网络侧再把它转回四层送向目标。

为什么要两端配合

只在网络侧做一次转换也并非不行,但设备侧必须先解决“应用以为自己在用四层地址”的问题:转换器会给设备一个虚拟的私有四层地址,对应用而言一切照常,实际报文在离开设备前就已经变成六层。由于两个转换器分别在设备与网络内,链条两端都有,这套机制因此得名。

基本信息

设备侧角色把四层流量转成六层发出
网络侧角色把六层流量转回四层送向目标
给应用的假象设备获得一个虚拟的私有四层地址
典型落地移动终端系统默认启用
用户感知基本无感,应用无需修改

典型使用场景

  • 移动端应用兼容:只支持四层协议的应用在纯六层网络里仍能正常访问服务
  • 排查终端地址:手机上看到的四层地址往往是虚拟地址,并非真实出口
  • 抓包分析:在六层侧抓包看不到四层语义,需要结合设备侧转换状态一起判断
  • 日志核对:服务端日志记录的是网络侧的出口地址,与终端看到的地址不一致属正常
  • 网络切换验证:从无线切到蜂窝网络时,转换链路的建立与拆除会影响连接保持
  • 方案评估:为纯六层网络提供服务时,评估是否需要同时支持四层目标

路径示意

路径示意
应用(四层) → 设备侧转换器 → 六层网络
             → 网络侧转换器 → 四层目标
# 设备侧给应用一个虚拟的私有四层地址,形成“在用四层”的假象
# 排查时注意:六层侧抓包看不到原来的四层地址语义

两个转换器对照

角色位置职责排障要点
设备侧终端内部四层转六层看转换是否建立
网络侧运营商网络六层转四层看转换是否放行
应用视角终端以为在用四层地址为虚拟地址
服务视角目标侧看到网络侧出口与终端地址不同属正常
排障时容易忽略双端翻译这一层:在六层侧抓包看不到四层语义,在服务端看到的也不是终端地址,两者对不上并不代表有问题,需要按转换链路逐段对应。
不要以为手机拿到的是真实四层地址:多数情况下那是设备侧转换器提供的虚拟地址,同一台设备在不同网络下的取值还可能不同,不能用来做身份绑定。

易错点

  • 以为手机拿到的是真实四层地址,实际多为设备侧转换器提供的虚拟地址,不能用于身份绑定
  • 排障时忽略双端翻译,在六层侧抓包看不到四层语义,误判为流量丢失
  • 把服务端日志里的出口地址与终端显示地址直接比对,两者本就不同,白费排查时间

数据来源与参考

  • RFC 6877(464XLAT)
  • RFC 6146(NAT64)

相关工具

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