什么是CGNAT?为什么会用到它?
CGNAT(Carrier-Grade NAT,运营商级地址转换)是运营商为节省紧缺的公网IPv4地址,让多个用户共用同一个公网IP的一种大规模地址转换方式。使用CGNAT时,路由器的WAN IP显示的可能不是真正的公网IP,而是100.64.0.0/10范围内的地址。
最后更新
CGNAT是怎么出现的?
全球IPv4地址只有约43亿个,而联网设备的数量早已远远超过这个数字。当运营商无法再给每一位用户单独分配一个公网IP时,CGNAT就应运而生。
就像家用路由器用NAT把家里多台设备合并成一个公网IP出去一样,CGNAT则是运营商设备再把多个用户合并成一个公网IP,多加了一层转换。
怎么知道自己的线路是否在用CGNAT?
在路由器管理页面查看WAN IP(作为公网IP接收到的地址),如果以 100.64. 开头,说明正在使用CGNAT。这个网段是专门为CGNAT保留的,并不是真正的公网IP。
如果路由器的WAN IP和ipnow.kr上显示的公网IP不一致,就说明中间有运营商的CGNAT设备又做了一次地址转换。
使用CGNAT会带来哪些不便?
如果想在家里运营服务器,或者通过端口转发从外部访问摄像头、NAS等设备,由于路由器的WAN IP并非真正的公网IP,端口转发可能无法正常工作。
遇到这种情况,通常的解决办法是向运营商咨询是否可以申请固定公网IP。相关内容也可以参考动态IP与固定IP的区别。
- 100.64.0.0/10: 专门为CGNAT保留的网段
- 路由器WAN IP落在这个网段说明正在使用CGNAT
- 端口转发、自建服务器更适合使用真正的公网IP
CGNAT和私有IP是同一个概念吗?
两者相似但并不相同。私有IP(如192.168.x.x)是由你自己家里的路由器管理的地址,而CGNAT网段(100.64.x.x)是运营商用来把多个用户归并在一起的地址。详细区别请参考公网IP与私有IP的区别。
| 项目 | 数值 | 来源 |
|---|---|---|
| CGNAT共享地址范围 | 100.64.0.0/10 | RFC 6598 · 2012-04 |
常见问题
所有运营商都会用CGNAT吗?
这取决于运营商、套餐类型(固网还是移动)以及地区,并不统一。要确认是否使用,直接查看路由器WAN IP或咨询运营商最为可靠。
可以要求运营商不给我用CGNAT吗?
部分运营商可能提供可单独申请的固定公网IP套餐或附加服务,具体流程需要向所使用的运营商确认。
用了CGNAT会影响日常上网吗?
浏览网页、看视频等一般性使用通常不受影响。受影响的主要是需要外部主动连入你网络的服务器和端口转发用途。
用IPv6能避开CGNAT吗?
IPv6的地址空间大得多,通常可以给每台设备分配独立地址,因此很多情况下不再需要CGNAT。不过实际是否支持IPv6,还要看运营商和所访问的服务。