4. 网络多区域互联设计
多区域高可用架构的成败,往往不取决于计算资源是否充足,而取决于区域之间的网络是否“连得通、走得对、断得开”。AWS 提供了五种主要的跨区域互联构件:VPC 对等连接(VPC Peering)、中转网关(Transit Gateway,TGW)、云广域网(Cloud WAN)、站点到站点 VPN(Site-to-Site VPN)和专用连接(Direct Connect,DX)。它们并非互相替代,而是处在不同的层次和适用场景中,本章重点讨论如何组合使用并规划路由。
一、五种互联构件的定位
VPC 对等连接是最轻量的点对点连接,两个 VPC 之间建立一条逻辑链路,流量不经过互联网。它支持跨区域(Inter-Region Peering),但不支持传递路由:如果 A 与 B 对等、B 与 C 对等,A 无法通过 B 访问 C。因此对等连接适合少量 VPC 之间的直连,一旦 VPC 数量增长到十几个,全互联的链路数会按 n(n-1)/2 增长,运维成本迅速失控。
中转网关是区域级的枢纽,VPC、VPN、DX 网关都作为附件(Attachment)挂接到 TGW 上,由 TGW 的路由表决定哪些附件之间可以互通。跨区域时使用 TGW 对等连接(Peering Attachment),把两个区域的 TGW 连起来,从而实现“星型汇聚 + 区域间骨干”的结构。TGW 支持路由传递,这是它相对对等连接的核心优势。
云广域网可以理解为托管的全球骨干网,用策略(Policy)而非逐条路由来定义网络分段和连通性。它把多个区域、多个 TGW 以及本地站点统一纳入一张逻辑网络,适合区域数量多、需要按业务单元隔离的大型组织。
站点到站点 VPN通过互联网建立 IPsec 隧道,把本地数据中心或分支接入某个 VPC 或 TGW。它部署快、成本低,但时延和带宽受公网影响,通常作为备份路径或临时接入手段。
专用连接通过专线接入 AWS,提供稳定带宽和低时延,是生产环境本地到云的主链路。DX 可接入 DX 网关或 TGW,跨区域访问时通常结合 TGW 对等连接完成。
二、组合策略:从简单到规模化
当只有两个 VPC 需要互通时,直接建立跨区域对等连接最省事,路由表里各加一条指向对等连接的路由即可。但当出现“区域 A 的三个 VPC 要访问区域 B 的两个 VPC”时,对等连接需要 3×2=6 条链路,且每条都要在两端路由表中维护条目。此时应改用 TGW:每个 VPC 挂到本区域 TGW,两个 TGW 之间建一条对等连接,链路数降为 5 条附件加 1 条对等连接,路由由 TGW 路由表统一管理。
本地接入方面,推荐“DX 为主、VPN 为备”的双路径设计。DX 通过专用连接网关或 TGW 附件接入,VPN 作为备份隧道接入同一 TGW。两条路径在 TGW 路由表中同时存在时,可通过 BGP 的 AS_PATH 或本地优先级控制选路,正常情况下流量走 DX,DX 中断时自动切换到 VPN。需要注意:如果 DX 和 VPN 都终结在同一个 TGW 上,TGW 会依据路由优先级选择,而不是简单叠加带宽。
三、路由规划的关键约束
多区域路由规划最容易踩的坑是CIDR 重叠。TGW 和 VPC 对等连接都要求两端网段不重叠,一旦本地数据中心使用 10.0.0.0/8 而某个 VPC 也使用 10.1.0.0/16,跨区域路由就会冲突。规划阶段应建立统一的地址分配表,例如:区域 A 使用 10.1.0.0/16 至 10.9.0.0/16,区域 B 使用 10.11.0.0/16 至 10.19.0.0/16,本地数据中心使用 192.168.0.0/16,预留 172.16.0.0/12 给未来区域。
其次是路由表隔离。TGW 支持多张路由表,可以把生产 VPC、测试 VPC、共享服务 VPC 分别关联到不同路由表,通过路由表之间的关联和传播规则实现分段隔离。例如生产路由表只传播生产 VPC 和共享服务 VPC 的路由,测试流量无法进入生产网段。这比用安全组做隔离更彻底,因为它在路由层就阻断了可达性。
第三是非对称路由。当同一目标网段同时存在 DX 和 VPN 两条路径,且两端选路策略不一致时,去程走 DX、回程走 VPN,会导致连接被状态防火墙丢弃。解决办法是让两端使用一致的 BGP 策略,或在 TGW 路由表中明确只保留一条最优路径。
四、一个可参考的规划示例
假设某企业有两个业务区域和一个本地数据中心,规划如下:区域 A 部署生产 VPC(10.1.0.0/16)和共享服务 VPC(10.2.0.0/16),区域 B 部署灾备 VPC(10.11.0.0/16)。区域 A 和区域 B 各建一个 TGW,两者之间建立 TGW 对等连接。本地数据中心通过 DX 接入区域 A 的 TGW,同时建立一条 VPN 作为备份。Cloud WAN 策略将生产 VPC 和共享服务 VPC 划入“生产段”,灾备 VPC 划入“灾备段”,两段之间默认不互通,仅在故障切换时通过策略调整放行。
路由验证时,可以从区域 B 的灾备 VPC 发起对区域 A 共享服务 VPC 的连通性测试,观察 TGW 路由表中是否存在 10.2.0.0/16 的条目,以及该条目指向的是 TGW 对等连接还是本地附件。如果测试不通,优先检查两端 TGW 路由表是否都传播了对端 CIDR,其次检查 VPC 路由表中是否有指向 TGW 的默认路由或明细路由。