VPC、子网、路由表、NAT、IGW、TGW……这一串名词是不是总让你摸不着头脑?如果你总是难以把这些概念串联起来形成清晰的理解,那么这篇文章就是为你而写的。
我们将通过实际案例和现实经验,带你一步步理清 AWS 网络的核心概念。

网络配置常常被忽视,也容易被误解!
我们不仅要搞懂 AWS 网络的各种概念,更要知道如何在实际中正确使用它们。
不仅是定义,更要理解背后的原理
我们不只是告诉你这些组件是什么,还会解释为什么 AWS 网络需要这样设计。
1.CIDR 块与 IP 地址规划
“一旦 IP 地址规划做得不好,后果将是长期且难以修复的。”
每个 VPC 都需要分配一个 IPv4 的 CIDR(无类别域间路由)地址块(比如 10.0.0.0/16),之后再从中划分子网。
在设计网络时,需要统一考虑开发、测试、生产等多个环境,以及不同 AWS 账号之间的协作。务必避免 CIDR 地址冲突,特别是当你打算使用 VPC
对等连接(VPC Peering)或 Transit Gateway 时。
此外,AWS 会在每个子网中保留 5 个 IP 地址用于内部用途,因此请在设计 IP 范围时充分预留空间。
问:什么是 CIDR 块?你会如何在多个 AWS 环境中避免 IP 地址冲突?

2.子网设计:公共子网、私有子网与隔离子网的区别
- 🔸 公共子网:具有指向 Internet Gateway(IGW)的路由,可直接访问公网
- 🔸 私有子网:不连接 IGW,通过 NAT 网关访问互联网
- 🔸 隔离子网:既无公网访问,也无 NAT 支持,仅供内部通信
⚡️根据实际使用场景进行子网设计:
Web 服务器 → 部署在公共子网中
应用层和数据库 → 部署在私有子网中
内部工具或敏感型业务系统 → 部署在隔离子网中
最佳实践:将每个架构层分布在多个可用区(Availability Zone)中,以提升系统的高可用性。
3.路由:网络的核心控制中枢
路由表用于将流量在 VPC 内部的不同组件之间或向外部网络进行转发。
建议为每个子网配置专用的自定义路由表,而不是使用默认路由表,以实现更精细的流量控制。
如果使用了 NAT 网关,务必确保仅在私有子网中将默认路由(0.0.0.0/0)指向 NAT 网关。
此外,不要忘记为如 S3 或 DynamoDB 等 AWS 服务配置 VPC 端点(VPC Endpoint),这样可以通过私有网络访问这些服务,增强安全性。
在排查网络问题时,一定要核查子网与路由表之间的绑定关系是否正确。
问:如果某个私有子网中的 EC2 实例无法访问互联网,你会如何进行排查?

4.VPC Peering、Transit Gateway、VPN 与 Direct Connect 的区别
Transit Gateway 能显著简化跨多个 VPC 和多个账户的网络架构,但相对而言成本较高。
在选择网络连接方案时,应综合考虑系统的可扩展性、费用开销与网络延迟等因素。

5.安全机制:安全组(SG)、网络 ACL(NACL)和流日志(Flow Logs)
安全组(SG):具备状态跟踪功能,适用于对 EC2 实例进行精细化访问控制。
网络 ACL(NACL):无状态,适合用于子网层面的额外安全防护,尤其在对合规性要求较高的场景中较为常见,但不建议频繁使用。
流日志(Flow Logs):建议启用,用于监控网络流量,帮助排查数据包丢失问题以及理解流量走向和行为模式。
注意:安全组只依据“允许”规则进行评估;网络 ACL 同时支持“允许”和“拒绝”规则,且按照规则顺序进行处理(而非规则 ID);
小贴士:如果网络连接在一个方向上正常但反方向失败,通常是安全组或网络 ACL 配置不匹配导致的。
6.VPC 端点类型(接口型与网关型)
网关端点(适用于 S3 和 DynamoDB):具备良好的扩展能力,且无需额外费用。
接口端点:在子网中创建弹性网络接口(ENI),可实现对 AWS 服务(如 STS、KMS)的私有访问。
实际场景:如果你使用的是无法访问公网的私有子网,可以通过配置 VPC 端点访问 S3,用于写入应用日志或备份数据等操作。
7.DNS、Route 53 与 Split Horizon 技术
Route 53 的私有托管区域(Private Hosted Zones)允许你在 VPC 内部配置自定义 DNS 名称解析,非常适合微服务架构中服务之间的私有通信场景。
在部署多 VPC 架构时,如果有跨 VPC 的私有解析需求,别忘了将私有托管区域关联到对应的多个 VPC。
✨ 进阶技巧:
动态端口问题:出站流量通常会使用大于 1024 的临时端口,NACL 的入站规则必须允许这些端口,否则连接将失败。
弹性网络接口(ENI)数量限制:不同类型的实例支持的 ENI 数量不同,关系到你可以附加的 IP 数量和服务能力,务必事先了解,避免不小心达到上限。
NAT 网关跨可用区通信会产生额外费用:建议每个可用区部署一个 NAT 网关,优化网络成本与性能。
弹性 IP 存在使用配额,如有大规模部署计划,建议提前申请额度提升。
给所有资源打上标签:在复杂网络环境中,缺乏标签将导致架构难以维护和排查。
面试常见问题
问:Internet Gateway(IGW)和 NAT 网关有什么区别?
问:为什么一个部署在私有子网的 EC2 实例在访问外部 API 时会超时?
问:VPC Peering 与 Transit Gateway 在是否支持传递路由(transitive routing)上有什么差异?
问:如果两个已建立 Peering 连接的 VPC 拥有重叠的 CIDR 地址段,会发生什么?
问:在一个无公网访问的私有子网中,如何设计访问 S3 的解决方案?

