AWS VPC网络配置:路由表、安全组与NACL详解
1. 路由表(Route Tables)
1.1 路由表概述
路由表由一条或多条路由以及至少一个子网关联组成。可以将路由表想象成连接多个子网的传统路由器。当创建VPC时,AWS会自动创建一个名为主路由表的默认路由表,并将其与该VPC中的每个子网关联。你可以使用主路由表,也可以创建自定义路由表并手动将其与一个或多个子网关联。子网必须与路由表关联,若未显式关联自定义路由表,AWS会隐式将其与主路由表关联。
1.2 路由(Routes)
路由决定了如何在与路由表关联的子网内的资源之间转发流量。IP路由基于目标地址,即路由决策仅基于目标IP前缀,而非源IP地址。创建路由时,需要提供以下元素:
- 目标IP前缀:必须是CIDR表示法的IPv4或IPv6前缀。
- 目标资源:必须是AWS网络资源,如互联网网关或弹性网络接口(ENI),不能是IP前缀。
每个路由表都包含一个本地路由,允许不同子网中的实例相互通信。例如,在CIDR为172.31.0.0/16的VPC中,本地路由如下表所示:
| 目标(Destination) | 目标资源(Target) |
| ---- | ---- |
| 172.31.0.0/16 | 本地(Local) |
本地路由是每个路由表中唯一必需的路由,它允许同一VPC内的实例进行通信。由于没有其他IP前缀的路由,任何发往VPC CIDR范围之外地址的流量都将被丢弃。如果想强制子网内的流量通过特定实例(如安全设备),可以创建以子网CIDR为目标、安全设备的ENI为目标资源的路由。