AWS/阿里云VPC虚拟私有云网络规划与子网划分最佳实践

云上网络规划是上云的基础,错误的CIDR设计或子网划分会导致IP冲突、扩展困难和安全风险。本文结合AWS和阿里云的真实约束,从VPC大小选择、多AZ高可用、公有/私有子网布局、混合云互联到安全组/ACL配置,给出可直接落地的分步决策树与回滚方案。

AWS/阿里云VPC虚拟私有云网络规划与子网划分最佳实践
封面图:ZuCDN · ZuCDN 原创

为什么需要一份可执行的VPC规划手册?

在一个真实迁移项目中,客户将原有/16的本地网络直接搬到了阿里云VPC,结果半年后容器化扩容时发现可用IP不足,不得不重建VPC并重新割接所有资源。这类事故的根源是:大多数团队只关注功能可用性,忽略了IP容量、路由收敛和故障域隔离的长远影响

本文假设你同时面对AWS和阿里云两种环境(或需要迁移/混合使用),给出适用于两个平台但需注意差异点的规划方法。所有步骤都包含风险提示可逆操作建议。

一、VPC IP地址范围设计:从预算开始反推

1.1 核心决策:选多大CIDR?

适用环境:新规划VPC,或已有VPC需要扩容(注意AWS无法修改VPC主CIDR,阿里云可以附加辅助CIDR但有限制)。

  • 最小化原则:尽量使用/16及以下(例如/16),但预留未来扩展空间。
  • 避免冲突:必须与本地网络、其他VPC、对等连接网络的CIDR完全不重叠。建议从RFC 1918地址池中选取一个从未用过的网段,例如/8中划分。
  • 多VPC场景:使用独立的大段,例如总部用/16,开发用/16,生产用/16,且各段互不重叠。

风险警示:用/24或更小网段创建VPC,后续几乎一定会因不够用而重建。某创业公司将生产VPC设为/28,一年后因微服务数暴涨被迫手工迁移1000+个实例。

验证方法:创建VPC后立即用网络评估工具(如AWS IPAM或阿里云网络规划工具)扫描冲突,而非等到业务上线。

1.2 阿里云 vs AWS的差异

特性AWS阿里云
主CIDR修改不可修改,只能删除重建可附加辅助CIDR(上限5个)
IPv6支持可附加/56 IPv6 CIDR需额外开通IPv6网关
专线网段限制无特殊限制需在云企业网中规划,避免路由黑洞

二、子网划分:AZ、可用区与故障域

2.1 子网大小与数量

每个子网建议至少/24(251个可用地址),避免未来因微服务拆分而频繁新建子网。对于容器集群(如K8s),每个Node可能需要消耗多个IP,因此建议使用/20甚至/16子网。

子网数量规划:

  • 每个可用区至少创建一个公有子网(挂载互联网网关)和一个私有子网(无公网直连)。
  • 如果使用NAT网关(共享出口),私有子网需要在路由表中指向NAT网关。阿里云建议每个可用区独立NAT网关以提升容灾。
  • 预留10%的地址空间用于未知需求(例如未来新增可用区或隔离网络)。

2.2 子网划分示例

假设使用/16 VPC,目标3个可用区(us-east-1a, 1b, 1c):

可用区A: 公有 /24, 私有 /20
可用区B: 公有 /24, 私有 /20
可用区C: 公有 /24, 私有 /20
预留: /24 (用于未来NAT网关或端点)

这样每个私有子网有4096个地址,足以应对单可用区100+实例的容器集群。

三、路由与安全控制:ACL vs 安全组

3.1 路由表设计规则

原则:每个子网一张自定义路由表,不给VPC默认路由表添加额外路由(避免误影响其他子网)。

  • 公有子网路由:0.0/0 -> Internet Gateway (AWS) 或 NAT网关(阿里云使用公网NAT网关)。
  • 私有子网路由:0.0/0 -> NAT Gateway(出口用)或直接内网互联。
  • T形路由:若需通过VPN或专线去本地,所有流量指向专线网关/虚拟网关。

风险点:不要为私有子网同时配置指向IGW和NAT的路由,会导致路由冲突。AWS会以最长前缀匹配,但阿里云可能产生非对称流。

3.2 ACL与安全组使用场景

安全组(有状态):适合实例级别细粒度控制,限制特定端口和源IP。

网络ACL(无状态):适合子网级别边界防护,限制已知恶意IP段或强制禁止非核心协议。

最佳实践:

  • 子网ACL只做粗颗粒度黑名单(例如拒绝来自特定国家的IP或非业务端口)。
  • 安全组做白名单:最小权限,仅允许业务依赖的端口(如HTTP 443, 数据库3306仅限特定安全组)。
  • 两者规则数量不要接近平台上限(AWS VPC ACL 20条/每个ACL,阿里云100条)。

四、混合云与多VPC互联

4.1 专线/VPN接入

若需连接本地数据中心:

  • SLA要求高的场景用专线,带宽保障且延迟稳定;补丁场景用IPsec VPN
  • 阿里云使用云企业网(CEN)VPN网关;AWS使用Transit Gateway (TGW)Direct Connect
  • 关键参数:BGP AS号、路由过滤、MTU设置。阿里云默认MTU 1500,如需巨帧需额外配置。

回滚方案:先建立测试隧道,确认路由不冲突再切换生产。若发现冲突,立即禁用BGP并删除路由。

4.2 多VPC互通策略

推荐使用中心化网络架构:

  • 创建共享服务VPC(部署NAT、防火墙、监控),其他VPC通过Transit Gateway或云企业网连接。
  • 避免VPC直接对等连接(Peering)过多导致的“网状网络”难以维护。
  • AWS TGW默认最多关联5000个VPC;阿里云CEN单地域默认支持30个VPC,可申请提升。

五、验证、监控与持续优化

5.1 上线前的检查清单

  • 每个子网的可用IP数是否大于预期实例数 + 预留20%?
  • 所有私有子网是否有正确的NAT路由?
  • 安全组是否默认拒绝所有入站,只放行必要端口?
  • 是否关闭了VPC的DNS解析(若需自定义DNS)?AWS默认启用,阿里云需手动开启。

5.2 持续监控工具

  • VPC Flow Logs (AWS) 或流日志(阿里云):记录流量并分析异常访问。
  • IP地址使用率告警:当子网利用率超过80%时自动告警,提前规划新子网。
  • 路由表变更审计:使用AWS Config或阿里云配置审计跟踪路由变化。

总结:可执行的最佳实践清单

  1. VPC CIDR:/16起步,预留扩展位,不与任何已存网络冲突。
  2. 子网:每个可用区至少2个子网(公有+私有),大小/24或/20,预留10%地址。
  3. 路由:每子网独立路由表,公有子网指向IGW,私有子网指向NAT或专线。
  4. 安全:ACL做粗粒度的黑名单,安全组做精细的白名单,遵循最小权限。
  5. 互联:使用中心化网关(TGW/CEN),避免对等连接风暴。
  6. 验证:使用平台内置工具扫描冲突,建立变更审批流程。
  7. 回滚:所有操作尽量通过基础设施即代码(Terraform)管理,方便快速重建。

无论你选择AWS还是阿里云,以上框架均适用。唯一需要调整的是各自控制台入口和API差异,但底层原则完全一致:容量预留、故障隔离、路由清晰、安全分层

延伸阅读