926 字
5 分钟
校园网 IP 切换原理

很多人会注意到一个现象:在校园网里隔一段时间查一下自己的公网 IP,会发现它在悄悄变化,但自己刷网页、登微信、打游戏却完全没有感知。这篇笔记拆解这背后的原理:NAT 出口为什么频繁换 IP,以及为什么用户感觉不到。

1. 校园网为什么用 NAT#

校园网通常只有一个或少数几个公网 IP,但网内可能有成千上万台设备(手机、电脑、平板)。要把这么多设备接上互联网,靠的是 NAT(网络地址转换)

  • 每台设备拿到的是一个内网 IP(如 10.x.x.x172.16.x.x192.168.x.x),这些地址在公网上无法路由。
  • 设备访问外网时,出口的 NAT 设备(路由器/网关)把源地址从内网 IP 改写成公网 IP,并记录一条”内网 IP+端口 ↔ 公网 IP+端口”的映射。
  • 对端回包时,NAT 再根据映射表把目的地址翻译回内网 IP,送到对应设备。

也就是说,所有设备的流量对外都”伪装”成从那几个公网 IP 发出,对外呈现的公网 IP 是 NAT 出口决定的,而不是你的设备决定的。

2. 为什么校园网的公网 IP 会频繁切换#

公网 IP 的频繁变化,通常由这几个机制叠加造成:

  • DHCP 短租约:出口公网 IP 本身可能也是向运营商 DHCP 租来的,租约一过期就可能续到另一个 IP。
  • 多出口负载均衡:大型校园网往往接了多条运营商线路(电信、联通、教育网等),网关根据负载把流量分到不同出口,于是你看到的公网 IP 在不同出口之间跳。
  • 故障/拥塞切换:某条出口线路抖动或拥塞时,网关会自动把流量切到健康线路,公网 IP 跟着变。

所以”公网 IP 变了”在校园网里是常态,而非异常。

3. 为什么已建立的连接不受影响#

关键在于:NAT 设备对已经打开的应用、已经建立的 TCP 连接(比如正在刷的网页、登着的微信、打着的游戏),会保留这个会话的映射关系:

  • 哪怕公网 IP 变了,已经建立的连接不会断,应用完全不受影响,用着和平时一模一样。
  • 只有当发起全新的连接(比如新开一个 SSH、重新登录某个服务、新开浏览器标签页),才会使用新的公网 IP。

4. 为什么应用本身不关心源 IP#

现在的所有互联网应用(微信、浏览器、视频软件等),只需要「网络通」,完全不依赖固定的源公网 IP:

  • 源 IP 变了,应用不会报错、不会掉线,用户察觉不到任何异常。
  • 只有需要「源 IP 白名单」的服务(比如服务器的安全组、企业 VPN、特定后台系统),才会因为源 IP 变了而被拦截——这就是在校园网里 SSH 突然连不上服务器的一个常见根因。

5. 链路切换是毫秒级的#

校园网的负载均衡、故障切换都是毫秒级完成的,几乎感觉不到断网,自然也不会意识到 IP 变了。

小结:校园网公网 IP 频繁变化是 NAT + 多出口的正常行为;已建立的连接靠 NAT 映射表维持不断;普通应用不依赖固定源 IP 所以无感;只有依赖源 IP 白名单的服务(典型如 SSH 白名单、VPN)才会被影响。

校园网 IP 切换原理
https://youki.bbroot.com/posts/network/campus-network-ip/
作者
youki
发布于
2026-04-02
许可协议
CC BY-NC-SA 4.0