国内IPv4地址总量大概3.4亿个,占到全球已分配地址空间接近8%。这个数字看着不算小,摊到每个人头上就显得很紧。这类地址由APNIC统一分配,下发到国内之后再拆分给电信、联通、移动、教育网这几大主体。各家手里的地址段不会永久固定,运营商之间会互相转让,企业提交申请或者注销带宽也会持续带来变动,所以任何一份完整的地址列表,都只能代表某一个时间切片的状态。
中国电信的IPv4地址段,在现有数据源里统计出约1774条,网段跨度很大,小到1.0.1.0/24这类子网,也包含不少大块聚合段。比较典型的大段有1.48.0.0/15、1.68.0.0/14、1.80.0.0/13、14.16.0.0/12、27.16.0.0/12、36.16.0.0/12。电信地址分布有个特点,早期拿到的地址块体量更大、连续性更好,后续新增的大多是零散小段拼接起来。所以导出的列表里,既能看到/12、/13这种大范围聚合,也混杂大量/22、/24的碎片子网。编写防火墙规则时,如果追求精准匹配,最好直接用聚合后的CIDR清单,只手动录入少数几个大段,很容易漏掉那些零散子网。

联通拥有的IPv4地址总量少于电信,公开收集的条目大约1319条。主干网段包含1.24.0.0/13、1.56.0.0/13、1.188.0.0/14、27.8.0.0/13、27.40.0.0/13、36.32.0.0/14、39.64.0.0/11、42.4.0.0/14。联通前身就是中国网通,老玩家口中常提的网通IP,本质就是联通名下网段。网通联通合并之后双方地址池完成整合,但WHOIS注册信息还保留历史痕迹,部分网段标注China Unicom,还有一些依旧写着China Netcom。
移动IPv4列表条目数量看着不多,公开数据源仅308条上下。但这不代表移动地址资源少,只是它拿到的地址块普遍聚合度高,合并之后条目自然变少。36.128.0.0/10、39.128.0.0/10、101.144.0.0/12、111.0.0.0/10是移动主要网段。移动与铁通合并,铁通原有地址资源一并划入移动,所以部分IP查询工具标注“中国移动(含铁通)”,指的就是这套合并后的地址集合。铁通单独的AS号已经停用,维护地址清单时不用单独保留铁通分组。
教育网CERNET的地址段结构,和商业运营商差别很大。它的主自治系统编号AS4538,数据库记录有5067个IPv4前缀,合计约4283万个地址。数量看着可观,但CERNET采用两级分配模式,CERNET网络中心先把大块地址下发给各省节点,省级节点再继续拆分给到各个高校。结果就是同一所院校可能持有多段不连续网段,202.112.0.0/16、166.111.0.0/16、202.201.0.0/16这类核心网段分别对应清华、北大、华中科大这类主干节点,而高校实际在用的子网分散在各个上级网段之内。教育网地址还有个特殊点,大部分教育网段默认不会对外向国际BGP对等体广播,境外尝试访问这类IP基本无法连通。配置分流规则的时候,教育网段要单独处理,不能直接合并进普通国内运营商IP分组。
除去这几家,广电网络、长城宽带也就是鹏博士、科技网CSTNET,各自持有少量地址段。广电相关网段列表大概43条,长城宽带和鹏博士网段约70条,不过这些网段的BGP宣告状态比较复杂,不少网段实际依靠电信或者联通的上层出口对外发布路由。
想要拿到最新完整的网段清单,手动整理完全不现实。有不少开源项目会按天甚至按小时自动抓取更新。ispip.clang.cn在国内使用人数比较多,它把电信、联通、移动、广电、教育网、长城宽带拆成独立TXT文件,文件内每行一条CIDR,直接下载就能拿来使用。GitHub上gaoyifan/china-operator-ip项目每日更新,基于BGP原始数据生成,运营商分类划分更细。mayaxcn/china-ip-list每小时从APNIC拉取原始数据刷新,适合对时效性要求高的场景。这些项目都不属于官方发布,数据准确度依靠维护者持续维护,投入生产系统前,建议自行抽样校验。
网段会发生变动这件事需要记牢。企业注销宽带,对应的/24网段就会被运营商回收,隔一段时间可能分配给另一个省份的其他客户。去年查询某个IP归属广东电信,今年再查就有可能变成湖南联通。拿IP网段做访问控制、流量分流策略,定期更新清单远比一次性导入永久使用靠谱。