上一节我们创建了一个私有子网,此时里面的EC2是访问不通公网的。本节我们将创建一个NAT Gateway,并修改私有子网的路由,让它能通过NAT访问公网:
注意NAT Gateway
要创建在公有子网里,这样它才能与公网通讯。
另外NAT上需要分配一个EIP
在NAT Gateway
页面,点击创建:
为其命名为my-nat-gateway-01
, 选择创建在公有子网(my-subnet-01) 里,点击Allocate Elastic IP
, 这样会为它分配一个EIP:
我们在公有子网里创建了一个NAT,想要在私有子网里使用它,还需要更新路由表。在私有子网的路由表里新增一条路由:
将0.0.0.0/0
的流量转到上面创建的nat:
此时在私有子网里创建的EC2都可以访问公网的资源。
除了创建NAT Gateway
外,我们还可以使用NAT Instance
为私有子网的机器提供访问公网的能力,我们将在下一节进行实验。
有了NAT Gateway
,为什么还需要NAT Instance
存在呢,这是因为它有一些优点:
NAT Gateway
价格贵,要单独收流量处理费(每GB/0.01$
)
可以根据需求对流量进行审计,比如在NAT Instance
上安装IDS/IPS
它们的对比总结如下:
维度 | NAT Gateway | NAT Instance |
---|---|---|
可用性 | 在AZ内是高可用的,底层是一个EC2集群,可自动伸缩 | 需要人工实现高可用 |
带宽 | 最大到45Gbps | 跟实例的类型有关 |
选型 | 不用选型 | 需要根据实际负载来决定使用哪种实例类型 |
公网IP | 在上面绑定一个EIP | 使用EIP/Public IP均可 |
安全组 | 不能绑定安全组 | 可以绑定安全组来控制流量出入 |