云上IP地址规划:CIDR怎么选?怎么避免冲突?
本内容发表于:2026-06-09 10:14:20
浏览量
1001

云上IP地址规划:CIDR怎么选?怎么避免冲突?

微信图片_2026-06-09_101305_127.png

去年一个客户,VPC建完后跑了两年,业务发展很快。突然有一天,新服务部署不上去了,报错“IP地址不足”。查了一下,他们当年选了/24网段,一共256个IP。去掉每个子网保留的5个,只剩251个。VPC里有ECS、RDS、Redis、NAT网关、负载均衡,还有K8s节点。K8s一个节点就消耗一个IP,节点多了就爆了。

更麻烦的是,VPC建完CIDR不能改。要扩大IP池,只能重建VPC,把几十个服务全迁过去。折腾了一周。

这是云上IP规划最常见的悲剧:一开始随手填,后面哭着改。

今天聊聊云上IP地址规划。不是那种“CIDR是什么”的入门课,而是帮你理清楚:CIDR怎么选才够用?怎么避免和本地IDC冲突?哪些服务会消耗IP?

01 CIDR选多大?

很多人在云上建VPC,随手选一个/24(256个IP),觉得“肯定够”。这是第一个坑。

VPC内IP消耗比你想象的多

  • 每台ECS/EC2:至少1个主IP

  • 每个负载均衡:至少1个IP

  • 每个NAT网关:至少1个IP

  • 每个RDS实例:至少1个IP

  • 每个Redis实例:至少1个IP

  • K8s节点:每个节点1个IP

  • VPN/专线网关:占用IP

一个中等规模的业务,几十个K8s节点,加上数据库、缓存、负载均衡,IP很容易用完。

CIDR选型建议

业务规模推荐CIDR可用IP数说明
个人/小型测试/24251适合非生产、短期项目
中小型企业/204091推荐,预留扩展空间
大型企业/多环境/1665531适合多VPC、大规模部署
超大规模/8(不推荐)1677万太大,路由表效率低

那家客户后来重建VPC时选了/16(10.0.0.0/16),再也不担心IP不够了。

02 避开冲突:云上IP和本地IP不能重叠

混合云场景下,VPC要和本地数据中心通过VPN或专线连通。如果两边的IP段重叠,路由没法配。

冲突典型场景

  • 本地IDC用了10.0.0.0/8

  • 云上VPC也选了10.0.0.0/8

  • VPN/专线建立后,到10.0.0.0/8的流量不知道该走云内还是去本地

怎么避免

  • 规划前,先问网络团队:“本地用了哪些IP段?”

  • 避开本地段,选不重叠的CIDR,如172.16.0.0/12或192.168.0.0/16

  • 多个VPC之间也不能重叠,否则VPC对等连接配不了

那家客户本地IDC用了10.0.0.0/8,云上VPC选了172.16.0.0/12,没有冲突。

03 按环境划分:不要把所有鸡蛋放一个篮子

不要把生产、测试、开发环境塞进同一个VPC。不隔离,安全风险大,变更影响面广。

推荐多VPC结构

  • 生产VPC:/16(如10.0.0.0/16)

  • 预发/测试VPC:/16(如10.1.0.0/16)

  • 开发VPC:/16(如10.2.0.0/16)

每个环境独立,互不影响。也方便按环境做独立的安全策略。

如果VPC数量有限制,可在同一VPC内用不同CIDR段隔离。但网络策略控制更复杂。

04 子网划分:按可用区和用途拆分

一个VPC内要划分多个子网。

按可用区:每个可用区一套子网,实现高可用。

按用途

  • 公网子网(public):负载均衡、NAT网关、堡垒机

  • 应用子网(private):ECS/EC2

  • 数据子网(data):RDS、Redis

预留IP数:每个子网固定消耗5个IP(AWS等云厂商)。子网不是越多越好,太多会浪费IP。1个VPC建议不超过20-30个子网。

那家客户按环境分VPC,按可用区和用途分子网,结构清晰,后续运维也方便。

05 特殊IP消耗:K8s是个吞IP大户

K8s集群对IP的消耗经常被低估。

  • 节点IP:每个Worker节点1个VPC IP

  • Pod IP:默认从VPC CIDR分配,每个Pod占1个IP。200个Pod就是200个IP

  • Service IP:从VPC CIDR分配,每个Service占1个IP

如果VPC CIDR规划小了,K8s跑起来很快就把IP吃光。

解法

  • Pod IP用独立的Pod CIDR(AWS EKS支持),不占用VPC主CIDR

  • 节点选择较大的实例规格,减少节点数

  • 预留充足IP空间

06 一个真实案例:从/24重建到/16

一个客户,初创时选了/24(10.0.1.0/24)。两年后,K8s集群从5个节点扩到50个节点,加上RDS、Redis、ELB,IP不够用了。

改造方案:

  • 新建VPC:CIDR选10.0.0.0/16

  • 按环境分VPC:生产、测试分开

  • 按可用区分子网:每个可用区一套

  • 应用分批迁移,域名切流

耗时一周,迁移完成。运维负责人说:“当初随手选的/24,后来用一周来还债。早知道选大一点。”

写在最后

IP地址规划,看起来是“创建时填个数”的小事。但一旦建好,想改代价极大。

那家客户的运维负责人后来总结:“CIDR选大不选小,/16打底;避开本地段,不冲突;按环境分VPC,按用途分子网;K8s是大户,IP预留要算好。”

你的VPC,IP还够用吗?今天就去看看。