Amazon AWS 概念及相关操作步骤
AWS 虚拟私有云 VPC
在进入具体的网络配置前,必须理解 AWS 的地理隔离:
区域 (Region) :地理上的独立区域(如新加坡、弗吉尼亚)。区域之间完全隔离。
可用区 (Availability Zone, AZ) :一个区域内由多个物理机房组成。AZ 之间通过高速、低延迟光纤连接。高可用架构必须跨 AZ 部署。跨 AZ 之间的流量需要付费。
VPC 是你在 AWS 云中的逻辑隔离网络。你可以完全控制其 IP 地址范围、子网、路由表和网络网关。
核心组件:
CIDR 范围 :你为 VPC 定义的私有 IP 地址块(如
10.0.0.0/16)。子网 (Subnets) :将 VPC 划分为更小的网段。子网必须位于特定的可用区内。
公有子网 (Public Subnet) :路由指向互联网网关 (IGW),实例可以有公网 IP。
私有子网 (Private Subnet) :没有指向 IGW 的直接路由,通常通过 NAT 网关 访问外网 。
公有子网 和 私有子网 在配置上几乎一摸一样,唯一区别在于: 该子网关联的路由表(Route Table)中默认路由(0.0.0.0/0)是如何配置的。
- 公有子网 (Public Subnet) 其路由表中默认路由(0.0.0.0/0)指向 互联网网关 (Internet Gateway, ID 格式通常为 igw-xxxxxx) 。由于它直接连接到互联网大门,且子网内的实例拥有公网 IP,因此外部用户可以主动访问它,它也可以直接访问外部。
- 私有子网 (Private Subnet) 其路由表中默认路由(0.0.0.0/0)指向 NAT 网关 (NAT Gateway, ID 格式通常为 nat-xxxxxx),或者干脆没有任何去往外网的路由 。它没有直通互联网的大门。它通过 NAT 网关(单向出口)实现“能出不能进”的效果。
下图所示子网为 公有子网
- 路由表(Route Tables) 分为主路由表和自定义路由表
- 主路由表(Main route table) 随 VPC 自动生成,它控制未与任何其他路由表显式关联的所有子网的路由,也就是 VPC 中的默认路由。
- 自定义路由表 为新建的路由表。
- 一个子网只能关联一个路由表,一个路由表可以关联多个子网
流量如何进出
VPC 与外界互联网通信可以使用以下方式:
| 组件 | 作用 | 流量方向 | 用法说明| |
|---|---|---|---|
| Internet Gateway (IGW,互联网网关) | 允许 VPC 连接互联网。 | 双向 (In/Out) | 实例必须分配公网 IP 或弹性 IP (EIP) |
| NAT Gateway (NAT 网关) | 允许私有实例上外网,但防止外部主动连接。 | 单向 (Outbound only) | 仅需私有 IP |
| VPC Peering (对等连接) | 连接两个不同的 VPC,使其像在一个网络内通信。 | 跨 VPC | |
| Transit Gateway | 充当“中央枢纽”,连接数千个 VPC 和本地网络。 | 复杂网络拓扑 | |
| Virtual Private Gateway | 用于建立 VPN 连接。 | 混合云 |
部署 NAT Gateway 网关并关联子网
通过 NAT Gateway 可以实现子网中的实例的对外互联网出口 IP 都是 NAT Gateway 绑定的 EIP,子网中的实例对互联网不可见。NAT Gateway 典型使用场景:
- 为了安全,生产环境通常将 EKS 工作节点、RDS 数据库 或 缓存服务器(Redis) 放在私有子网中,这些资源不需要(也不应该)被互联网直接访问。
- 应用需要调用外部服务(如支付网关、银行接口或第三方 API)时,对方的防火墙通常需要你提供一个白名单 IP。由于 EKS 节点是动态变化的,IP 并不固定。
- 减少受攻击面,防止外部扫描。
以下为创建 NAT Gateway 并关联子网的相关步骤:
VPC |
关键点:
- NAT Gateway 必须在公有子网
- 私有子网的默认路由指向 NAT Gateway
确认 Public Subnet 存在
VPC 默认的 Main Route Table 已经满足这个条件,其默认网关为 Internet Gateway

创建 NAT Gateway
在 NAT gateways 标签页面中,点击 Create NAT gateway , Connectivity type 选择 Public , Elastic IP (EIP) association 选择 手动分配 EIP(Manual)

创建完成后,状态应为 Available 。在路由表(Route Tables)中,这时会多一个路由表,其 Edge associations(边缘关联) 关联到了刚刚创建的 NAT Gateway

创建一个新的子网(私有、Private Subnet)
在 VPC → Subnets → Create subnet 标签页面中创建新的子网, 不要勾选 Auto-assign public IPv4 ,如此处于此子网中的实例,不会为其分配公网地址

创建 Private Route Table
在 VPC → Route tables → Create route table 标签页面中创建新的路由表,本示例名为
private-rt配置路由规则
选择刚刚创建的新路由表
private-rt,在 Routes 中 编辑路由(Edit Routes) ,添加一条路由规则:| Destination | Target |
| ----------- | --------------- |
| 0.0.0.0/0 | NAT Gateway |
关联 Private Subnet
选择刚刚创建的新路由表
private-rt,在 Subnet associations(子网关联) 中 Edit subnet associations(编辑子网关联) ,选择目标子网进行关联

最终的 VPC 整体路由可以在 VPC 的 Resource map 中进行检查


