技术指南
什么是 CGNAT?与普通 NAT、公网 IPv4 有何区别?
了解 CGNAT 如何共享地址与端口,判断 100.64.0.0/10、入站访问和固定出口需求,为宽带、企业 API 与托管业务选择合适的 IPv4。
了解 IPv4 Continuity客户能上网,不代表客户能从公网访问自己的服务器。对 ISP 来说,CGNAT 可以提高 IPv4 地址的利用率;对需要托管应用、固定出口或远程接入的客户来说,独立公网 IPv4 则能减少端口映射和共享地址带来的麻烦。理解两者的区别,才能把合适的连接能力交付给每一类客户。
CGNAT(Carrier-Grade NAT,运营商级网络地址转换)让多个用户共享一个公网 IPv4 地址。运营商在自己的网络内转换地址和端口,用较小的公网地址池承载更多用户连接。它节省的是每位用户占用的公网地址数量,并不会产生新的 IPv4 地址。
CGNAT 如何工作?
普通家庭 NAT 通常位于客户路由器:手机、电脑等设备使用私网地址,通过路由器共享连接的公网地址。CGNAT 则把另一层地址转换放在运营商网络中,让多个独立客户网络共享同一批公网地址。常见部署路径如下:
客户设备 → 家庭路由器 → 运营商 CGNAT → 共享公网 IPv4 → 互联网
因此,部分接入网络存在两层 NAT:客户侧一层,运营商侧一层。运营商级转换由 ISP 管理,客户在家庭路由器中设置的端口转发通常无法直接控制外层转换。RFC 6888介绍了 CGN 的定义及运行要求。
共享的不只是地址,还有端口
同一个公网地址可以同时承载多个用户的连接,因为 CGNAT 还会转换传输层端口,并保存对应关系。以下是简化示例:
| 用户侧连接 | 公网侧连接 |
|---|---|
| 用户 A:100.64.10.20:50001 | 203.0.113.20:22001 |
| 用户 B:100.64.20.30:51002 | 203.0.113.20:22002 |
| 用户 C:100.64.30.40:52003 | 203.0.113.20:22003 |
外部服务看到的源地址都是 203.0.113.20,返回流量则依据协议、端口和转换状态找到对应用户。规划容量时,需要同时考虑公网地址数量、可分配端口、并发会话与设备处理能力;地址利用率提高后,这些资源也要跟上客户增长。
100.64.0.0/10 是什么地址?
100.64.0.0/10 是供运营商使用的共享地址空间,范围从 100.64.0.0 到 100.127.255.255。它不是普通的全球可路由公网地址,也不同于 RFC 1918 定义的 10.0.0.0/8、172.16.0.0/12 和 192.168.0.0/16 私网地址段。其用途见 RFC 6598。
如果路由器 WAN 地址落在这个范围内,而互联网服务看到的是另一个公网地址,通常说明连接经过了运营商地址转换。网络也可能采用其他地址规划;将 WAN 地址、对外地址和接入方案一起核对,比只看一个地址更准确。
CGNAT 与普通 NAT 有什么区别?
| 比较项 | 客户侧 NAT | CGNAT |
|---|---|---|
| 管理方 | 客户或客户的网络管理员 | ISP 或接入服务提供商 |
| 共享范围 | 一个客户网络内的设备 | 多个独立客户网络 |
| 公网地址 | 通常对应一条客户连接 | 可由多个客户共同使用 |
| 端口转发 | 通常可在客户路由器配置 | 还涉及运营商侧的转换能力 |
| 连接定位 | 公网地址通常可定位到客户连接 | 还需结合端口、时间、协议和映射记录 |
需要先了解地址转换基础,可以阅读NAT 工作原理。CGNAT 的关键变化,是将共享范围扩展到了运营商的多个用户。
客户会感受到哪些差异?
从外部访问自己的服务
浏览网页、看视频等由用户主动发起的连接通常适合 CGNAT。自建服务器、部分 VPN、远程摄像头、点对点应用或游戏联机,则可能需要从外部建立连接。此时,独立公网 IPv4 能让入口地址与端口规划更直接。应用的穿透或中继功能也可能提供连接,但具体表现取决于应用和网络设计。
固定出口与客户允许名单
企业 API、合作伙伴接口和防火墙经常通过源 IP 识别连接。独立且稳定的公网出口便于客户维护允许名单,也更容易将一个地址与自己的业务对应起来。多人共享的出口地址不适合充当单个客户的独立身份。
端口与并发连接
每个公网地址的端口资源有限。共享比例、会话超时和并发连接共同影响可用容量。当客户应用连接数增加时,运营商需要观察端口使用和转换设备负载,而不只是公网地址池的剩余数量。
共享地址的信誉影响
外部平台可能按照源 IP 限流、风控或过滤。多个无关用户共享同一地址时,其中一人的行为可能影响其他人的访问体验。独立地址让信誉更容易与客户自己的服务关联。RFC 6269讨论了地址共享对入站连接、端口、应用和基于 IP 的控制产生的影响。
CGNAT 与公网 IPv4,如何按业务选择?
| 客户需求 | CGNAT | 独立公网 IPv4 |
|---|---|---|
| 网页、视频等日常出站流量 | 通常适合,节省地址用量 | 同样适合 |
| 固定且独立的源地址 | 源地址可能与其他客户共享 | 便于维护客户自己的出口身份 |
| 公网服务器与 API | 通常需要额外的入口或中继设计 | 便于直接规划入口与路由 |
| 端口转发与远程接入 | 受运营商侧转换方式影响 | 客户更容易控制,仍需正确配置防火墙 |
| 客户连接排障 | 需关联地址、端口、时间与会话 | 地址层面的定位更直接 |
| 信誉隔离 | 存在共享出口带来的相互影响 | 更容易按客户和服务独立管理 |
ISP 可以同时提供两种服务:普通住宅和移动上网使用 CGNAT,企业接入提供公网 IPv4,托管或基础设施客户使用可路由的地址块。这样既提高现有地址利用率,也让需要更强连接能力的客户获得相应产品。
定位连接与运行成本
假设故障记录只给出“203.0.113.20,14:35 UTC”,运营团队可能仍无法确定涉及哪位用户。如果同时获得源端口、协议与精确时间,就能与 CGN 的映射记录对应,更快定位连接。准确的时间同步、会话记录和查询能力直接影响排障效率。
CGNAT 减少了每位用户的地址用量,也增加了转换设备、端口管理、日志存储和客户例外配置等工作。比较方案时,应将这些运行成本与新增公网容量一起计算,避免地址池节省了成本,客户支持却承担了更多反复排障。
扩展业务时,为公网 IPv4 留出增长空间
CGNAT 的互联网出口仍然需要公网 IPv4。随着企业客户、托管业务、固定出口和直接入站需求增长,公网容量依然是网络产品的重要基础。
LARUS 通过第一方 IPv4 租赁和 Unlimited IPv4 支撑网络扩展,将地址供应与路由、RPKI/ROA、反向 DNS、信誉和续租连续性一起考虑。你可以继续让 CGNAT 服务适合共享的流量,同时为企业 API、客户服务器与公网接入准备稳定容量。了解IPv4 租赁如何支持部署与持续运营。
常见问题
如何判断自己是否处于 CGNAT 后面?
比较路由器显示的 WAN IPv4 与互联网服务看到的公网 IPv4。地址不同、尤其 WAN 地址属于 100.64.0.0/10 时,是重要线索。再结合 ISP 的接入配置,就能确认实际路径。
CGNAT 会让所有游戏或 VPN 都无法使用吗?
不会。许多应用可以正常工作。需要主动入站、直接点对点连接或特定端口映射的应用,更容易受到影响。排障时先明确应用需要哪一种连接,再选择公网地址、穿透或中继方案。
在家庭路由器开启端口转发就够了吗?
家庭路由器只能控制本地转换。如果运营商外层仍有 CGNAT,还需要外层提供相应映射,或选择可直接接入的公网 IPv4 服务。
CGNAT 能解决 IPv4 地址耗尽吗?
它能提高地址利用率,但不会增加 IPv4 地址总量。运营商仍然需要公网出口,以及为企业、托管和其他独立地址需求准备的容量。
使用公网 IPv4 后还可以部署 NAT 吗?
可以。客户可以在自己的公网 IPv4 后继续使用 NAT 和防火墙。公网地址提供对外身份与可规划的入口,客户侧 NAT 则组织内部设备的连接。
IPv4 与业务连续性
为每一类客户交付合适的连接能力。
用 Unlimited IPv4 扩展网络,让 LARUS 第一方供应与 Continuity 持续支持客户的服务器、API 和连接。
