同一个VPC内支持创建多个公网NAT网关,您可以通过不同的公网NAT网关转发去往不同目的地址的流量,并可以针对不同的公网NAT网关做不同的安全防护,实现更精细化地部署公网访问网络。
同VPC内部署多公网NAT网关的场景说明
本文以下图场景为例,介绍如何在同一个VPC内通过部署多个公网NAT网关,结合路由表实现多业务系统公网出口的灵活分配与隔离。
- 一个VPC内部署多个公网NAT网关(NATGW-1和NATGW-2),分别位于vSwitch-A1和vSwitch-A2中。 
- 将vSwitch-A1和vSwitch-A2分别绑定至不同的路由表,并为每个路由表添加缺省路由(0.0.0.0/0)指向不同的NAT网关,以实现内网流量的分流。 
- 通过为不同业务的ECS实例配置SNAT条目,指定弹性公网IP,实现公网流量分流和隔离。 
- 通过配置DNAT条目,将外部用户的公网流量转发至内部ECS实例,以满足外部用户的远程访问需求。 
配置步骤
步骤一:准备云网络资源
在为交换机部署公网NAT网关之前,您需首先创建VPC、vSwitch、ECS、EIP等云资源。
| 云网络资源 | 规格描述 | 数量 | 具体操作 | 
| VPC | 地域:西南1(成都)。 | 1个 | |
| vSwitch | 2个 | ||
| ECS实例 | 
 | 3台 | |
| EIP | 地域和可用区:西南1(成都)。 | 3个 | 
步骤二:创建公网NAT网关
- 登录NAT网关管理控制台。 
- 在公网NAT网关页面,单击创建公网NAT网关。 
- 在NAT网关页面,配置以下购买信息,然后单击立即购买。 - 配置项 - 说明 - 实例名称 - 分别创建实例名称 - NATGW-1和- NATGW-2的公网NAT网关,以便后续在添加路由条目时进行选择。- 地域 - 选择需要创建公网NAT网关的地域。 - 网络及可用区 - 请选择NAT网关所属的VPC和交换机。创建成功后,无法进行修改或切换。 - NATGW-1实例选择vSwitch-A1。
- NATGW-2实例选择vSwitch-A2。
 - 网络类型 - 本文选择公网NAT网关。 - 公网NAT网关:具备网络地址转换能力,可以绑定弹性公网IP,从而为ECS实例提供访问互联网的能力,实现私网和公网之间的通信。 
- VPC NAT网关:同样具备网络地址转换能力,但无法绑定弹性公网IP,只能为ECS实例提供私网内部的地址转换,适用于内网地址隐藏、地址冲突规避等场景。 
 - 弹性公网IP - 本文选择:稍后配置。 
步骤三:绑定弹性公网IP
将EIP1绑定至NATGW-1,将EIP2和EIP3绑定至NATGW-2。
- 在公网NAT网关页面,找到目标实例,单击弹性公网IP列下的立即绑定。  
- 在绑定弹性公网IP面板,选择从已有弹性公网IP中选择,然后在下拉列表中选择EIP。 - 以NATGW-2绑定EIP2和EIP3为例进行说明。 说明- 每绑定一个弹性公网IP,将占用NAT网关所在交换机的一个私网IP地址。请确保该交换机具有足够的可用私网IP地址,否则将无法成功绑定新的弹性公网IP。  
步骤四:创建SNAT条目和DNAT条目
- 在公网NAT网关页面,找到目标公网NAT网关实例,然后在操作列单击设置SNAT。 
- 在SNAT管理页签,单击创建SNAT条目。 
- 在创建SNAT条目页面,配置以下参数,然后单击确定创建。 - 以NATGW-2为例,创建SNAT条目以便为ECS2实例提供通过EIP1访问互联网的能力。您也可根据自身需求调整SNAT条目粒度。 - 配置项 - 说明 - SNAT条目粒度 - 本次选择ECS/弹性网卡粒度,在通过ECS或弹性网卡进行选择下拉列表中选择ECS2实例。 - VPC粒度:适用于需要让VPC内所有ECS实例,以及通过CEN或专线等产品实现内网互通并配置了0.0.0.0/0路由条目指向该VPC的其他VPC或数据IDC内的ECS实例,统一通过同一弹性公网IP访问公网的场景。 
- 交换机粒度:适用于对公网访问有精细控制需求,只允许指定的交换机具备公网访问能力的场景。 
- ECS/弹性网卡粒度:适用于对公网访问有精细控制需求,只允许指定的ECS实例或弹性网卡具备公网访问能力的场景。 
- 自定义网段粒度:适用于需要灵活指定任意IP网段,通过NAT网关统一配置公网访问能力的场景,可覆盖VPC内、跨VPC或跨本地IDC等各种网络环境,满足复杂或定制化网络结构的需求。 
 说明- 当您选择多个交换机或ECS/弹性网卡时,将为您创建多条SNAT条目,这些条目将使用相同的公网IP地址。 - 选择弹性公网IP地址 - 单击弹性公网IP,在下拉列表中选择EIP2。 
- 在DNAT管理页签,单击创建DNAT条目。 
- 在创建DNAT条目页面,配置以下参数,然后单击确定创建。 - 为ECS3创建DNAT条目,本文以SSH服务作为远程访问的验证方式,请确保ECS3实例所属安全组已放通22号端口,具体操作请参见管理安全组规则。您可以根据自身实际需求创建对应的DNAT条目。 说明- SSH服务:采用面向连接的TCP协议传输,应用22号端口。  
步骤五:为vSwitch-A2绑定自定义路由表
路由表由路由条目组成,每条路由条目指定了网络流量的目的地。除默认路由表外,您还可以创建自定义路由表,管理网络流量。
- 在左侧导航栏,单击路由表,在路由表页面,单击创建路由表。 
- 在路由表页面,找到目标实例,单击绑定资源>立即绑定。  
- 在路由条目列表页签,单击。配置完成后,如下图所示:  
结果验证
ECS实例访问公网。
通过Workbench控制台依次登录ECS1、ECS2实例,执行如下命令。
ping 223.5.5.5
curl myip.ipip.net
外部用户远程登录ECS实例
登录本地设备,以Windows操作系统为例,打开命令提示符(CMD),并执行如下命令。
ssh root@EIP3
ifconfig