出了国,手机怎样借用当地网络?
出国后,手机可以借用与家乡运营商有合作关系的当地网络。当地网络先找到你原来的运营商,请它帮助确认身份。
确认身份像回答一道每次不同的题。手机里的安全芯片和家乡网络各自用保存的秘密计算;当地网络核对应答,不需要拿走那份长期秘密。
通过检查后,网络记下你在哪里服务,让来电能找到你。上网的数据可能绕回家乡,也可能从当地出去。本片采用一套以 4G 为主的简化流程。
跟住同一串号码,一次只改一个条件
- 选择没有合作关系的网络:信号强,是否就能注册?
- 让身份核对失败,观察上网流程会在哪里停下。
- 比较“绕回家”和“当地出口”,跟住同一份请求走过的路线。
再往里看一层
进一步操作与数值核对
- 选网:切到“手动 C”。C 的信号最强,但它和你家没有漫游协议,注册被拒,手机只剩紧急呼叫。再把“套餐未开通国际漫游”打开:这次当地网络愿意,却是你家拒绝了。
- 认证:选“K 错一位”,拖动要翻转的那一位。SIM 用错的 K 检查 AUTN 时就发现对不上;即使硬算出应答,64 位里也大约一半不同。换成“途中改 RAND”,结果一样;选“重放旧向量”,AUTN 本身是真的,但序号已经用过,SIM 拒绝回答,改发同步令牌 AUTS。
- 上网:保持同一个请求,比较“绕回家”和“当地出口”的往返时间与网站看到的地址。换成“家乡网站”,两种路径的差别几乎消失。拖动两国距离,看哪一段随距离增长。
- 来电:从“家乡的家人”切到“身边的当地朋友”。朋友明明就在旁边,电话却要先回家再回来。
这些编号是示例:001-01 是 3GPP 测试网络使用的代码,002 与三家当地运营商是虚构的。
想核对技术细节?
出国后,手机先借用当地网络,再请家乡运营商帮助确认身份。你可以把它理解成“在外地服务点核对原来的会员身份”,但真正的核对依靠密码计算。下面用一套以 4G 注册为主的教学流程,分开看选网、验身份、上网和来电。落地后为你服务的,完全是当地运营商的基站和核心网;而它自己并不知道你的密钥。它能做的,是读出你是哪家运营商的用户,然后去问你家。
线索写在 SIM 卡里的 IMSI 上。按照 ITU-T E.212,它最多 15 位:前三位是国家码 MCC,接着两到三位是运营商码 MNC,其余是你在这家运营商里的编号。当地网络从 MCC 和 MNC 拼出你家核心网的地址(3GPP TS 23.003 规定了这种域名格式),经由运营商之间专用的漫游互联网络 IPX(GSMA IR.34)把请求送到你的归属网络。只有和你家签了漫游协议的伙伴,请求才会被转发。手机选网时也先看 SIM 卡里的伙伴名单,而不是只挑信号最强的那家(TS 23.122)。
真正的认证是一次挑战与应答。SIM 卡和归属网络共享一把 128 位的密钥 K,它从不在空中传送,当地网络也拿不到。归属网络先挑一个随机数 RAND,用 K 算出期望应答 XRES 和一个网络校验码 AUTN,把这组“认证向量”交给当地网络。当地网络只把 RAND 和 AUTN 发给手机。SIM 用 K 先检查 AUTN——确认请求真的来自你家,而且不是旧消息重放——再算出应答 RES。RES 等于 XRES,当地网络就放行(TS 33.102、TS 33.401)。注意这是双方共享同一把对称密钥的做法,和公钥密码不同:没有公开的钥匙,也没有签名。
认证之后,当地网络发一次位置更新,归属网络在你的用户记录里写下“这个用户现在由哪张网络服务”,并把你的签约数据发过去(TS 29.272)。从此,打给你的电话会先到家,由家里查这条记录,再转到你所在的网络;你上网的数据,要么通过隧道绕回家乡网关再出去,要么从当地网关直接出去(TS 23.401、GSMA IR.88)。
SIM 卡里究竟算了什么?
本篇运行的是 3GPP 的示例算法集 MILENAGE(TS 35.206),它以 AES-128 为核心,用 K、运营商常数 OPc、RAND、序号 SQN 和管理字段 AMF 算出五个函数:
另有 f3、f4 生成加密与完整性密钥 CK、IK。归属网络发出的校验码为 AUTN = (SQN ⊕ AK) ‖ AMF ‖ MAC:序号用 AK 遮住,免得旁人借序号追踪你。SIM 先用 f5 解出 SQN,再重算 MAC;只有持有同一把 K 的一方才能造出正确的 MAC,所以这一步证明了网络是真的。然后检查 SQN 是否比自己记下的更新,防止旧消息重放。
画面中的 K、OP、RAND、SQN 与 AMF 取自官方一致性测试集 1(TS 35.208);本站的实现在单元测试中逐项复现了测试集 1、2 的全部输出。运营商也可以使用其他算法(例如 TUAK),真实用户的 K 永远不会公开。
4G 还会把 CK、IK 与当地网络的编号一起送进 HMAC-SHA-256,得到 K_ASME(TS 33.401 附录 A)。这把后续密钥因此和当地网络绑定:换一家运营商,得到的就是另一把。
5G 有什么不同?
5G 可以用归属网络的公钥保护永久身份 SUPI(常见形式是 IMSI),生成 SUCI,同时保留联系归属网络所需的路由信息。是否隐藏身份取决于启用的方案;标准也允许不提供隐藏保护的 null scheme,不能把“使用 5G”直接等同于“身份一定加密”(TS 33.501)。认证方式 5G AKA 的核心仍是同一套挑战与应答,但最终的比对由归属网络的 AUSF 再确认一次,家里对“你是不是真的在场”有更直接的把握。归属侧的用户数据由 UDM 负责,对应 4G 的 HSS。
往返时间是怎么估算的?
模型只计入传播:光在光纤中约每毫秒走 204 km(折射率约 1.47),线路按两地直线距离的 1.4 倍计;无线接入与当地核心网取 25 ms 往返,每经过一个网关或交换点加 2 ms。两国相距 8000 km 时,“绕回家”访问当地网站要跨海两次,往返约 250 ms;“当地出口”约 30 ms。这些都是模型估算,不含拥塞、排队和服务器处理,也不代表任何真实运营商的线路。
实际部署里,4G 数据漫游长期以绕回家为主,因为家乡运营商便于计费、执行套餐规则,某些只对家乡地址开放的服务也能继续使用。当地出口需要双方额外约定。
电话为什么要绕回家?
你的号码属于家乡的号码段,所以任何人拨它,交换网络都会先把呼叫交给你家的关口交换机。家里查位置记录,得知你在哪张网络,就向那边要一个临时漫游号码 MSRN,再按这个号码把呼叫接过去;当地网络随后寻呼你的手机(TS 23.018)。所以身边的当地朋友打给你,呼叫也会先出国再回来,除非双方网络支持优化路由。画面演示的是传统电路交换来电,它要求手机驻留在 2G/3G,或者在 4G 上做了电路域与分组域的联合附着(CSFB,来电时回落到 2G/3G)。VoLTE 用 IMS 处理呼叫,细节不同,但同样先经过归属网络。之后当地运营商会把你用掉的服务记成话单交给家乡运营商结算,你只和家乡运营商打交道。