使用VPC对等连接可以实现在多个专有网络VPC(Virtual Private Cloud)共用一个公网NAT网关,从而达到多VPC访问公网的效果。
背景信息
对等连接可以在两个VPC之间建立网络连接,您可以通过VPC对等连接,实现两个VPC之间私网互通。多个VPC之间可以通过创建两两对等连接实现互通。例如有3个VPC,分别为VPC1、VPC2和VPC3。其中VPC1和VPC2建立对等连接,VPC2和VPC3建立对等连接,VPC1和VPC3建立对等连接,可以实现3个VPC间两两互通。本文以在两个VPC间创建对等连接实现共用一个公网NAT网关为例进行说明。
关于VPC对等连接的更多信息,请参见VPC对等连接概述。
场景示例
本文以下图场景为例,某公司在华东1(杭州)地域创建了两个VPC,名称分别为VPC1和VPC2。在VPC1中创建了交换机1,且在交换机1中创建了一台名为ECS1的云服务器ECS(Elastic Compute Service)。在VPC2中创建了交换机2,且在交换机2中创建了一台名为ECS2的ECS实例。因公司业务需要,VPC1与VPC2都需要访问公网。
公司可以通过使用VPC对等连接并配置路由条目在VPC1和VPC2之间建立私网互通,然后在VPC1中创建公网NAT网关。为公网NAT网关配置SNAT规则,实现VPC1和VPC2通过公网NAT网关访问公网。

前提条件
配置步骤

步骤一:创建VPC对等连接
- 登录专有网络管理控制台。
- 在左侧导航栏,单击VPC对等连接。
- 在顶部菜单栏,选择要创建VPC对等连接的地域。本文选择华东1(杭州)地域。
- 可选:初次使用VPC对等连接时,请在对等连接页面,单击开通CDT功能,然后在弹出的对话框单击确定开通。如果创建跨账号VPC对等连接,则需要在接收端阿里云账号开通VPC对等连接功能,即开通CDT功能。
- 在VPC对等连接页面,单击创建对等连接。
- 在创建对等连接页面,配置以下参数信息,然后单击确定。
配置 说明 对等连接名称 输入VPC对等连接的名称。 发起端实例 在下拉列表中选择发起端的VPC实例。 本文选择VPC1。
接收端账号类型 选择接收端VPC实例所属的阿里云账号类型。 本文选择同账号。
接收端地域类型 选择接收端VPC实例所在地域类型。 本文选择同地域。
接收端实例 选择接收端VPC实例。 本文选择VPC2。
- 在VPC对等连接页面,查看VPC对等连接的状态等信息。
- 激活成功的VPC对等连接状态为已激活,您可以正常使用。
- 您可以查看发起端和接收端的实例ID、所在地域、CIDR网段以及所属阿里云账号。
步骤二:创建公网NAT网关
在VPC1中以全通模式创建公网NAT网关。
- 登录NAT网关管理控制台。
- 在公网NAT网关页面,单击创建NAT网关。
- 首次使用NAT网关时,在创建NAT网关页面关联角色创建区域,单击创建关联角色,创建服务关联角色。角色创建成功后即可创建NAT网关。
- 在公网NAT网关页面,配置以下购买信息,然后单击立即购买。
配置 说明 付费模式 默认选择为按量付费,即一种先使用后付费的付费模式。更多信息,请参见公网NAT网关计费。
所属地域 选择需要创建公网NAT网关的地域。
本文选择华东1(杭州)。
所属专有网络 选择公网NAT网关所属的VPC。创建后,不能修改公网NAT网关所属的VPC。
本文选择VPC1。
关联交换机 选择公网NAT网关实例所属的交换机。
本文选择交换机1。
计费类型 默认选择为按使用量计费,即按公网NAT网关实际使用量收费。更多信息,请参见公网NAT网关计费。
计费周期 默认选择为按小时,即按使用量计费公网NAT网关的计费周期为1小时,不足1小时按1小时计算。
实例名称 输入公网NAT网关实例的名称。
本文输入为公网NAT网关。
访问模式 选择公网NAT网关的访问模式。支持以下两种模式:- VPC全通模式(SNAT):选择了VPC全通模式,在公网NAT网关创建成功后当前VPC内所有实例即可通过该公网NAT网关访问公网。
选择VPC全通模式(SNAT)后,您需要配置弹性公网IP(Elastic IP Address,简称EIP)的相关信息。
- 稍后配置:如需稍后配置或有更多配置需求,可在购买完成后,前往控制台进行配置。
选择稍后配置,则只购买公网NAT网关实例。
本文选择VPC全通模式(SNAT)。
弹性公网IP 选择公网NAT网关的EIP。支持以下两种模式:- 选择已有:在弹性网关IP实例下拉列表中选择已有的EIP实例绑定到公网NAT网关实例的EIP。
- 新购弹性公网IP:在公网NAT网关实例地域新购按量付费EIP实例。
本文选择新购弹性公网IP,新购EIP的线路类型默认为BGP(多线),默认选择默认版本的安全防护,然后配置带宽峰值并选择计费类型为按使用流量计费。
- VPC全通模式(SNAT):选择了VPC全通模式,在公网NAT网关创建成功后当前VPC内所有实例即可通过该公网NAT网关访问公网。
- 在确认订单页面,确认订单中的配置信息,阅读并选中服务协议然后单击确认订单。
- 单击返回控制台,在公网NAT网关页面,找到创建的公网NAT网关,然后单击其实例ID。
- 在基本信息页签指向NAT的VPC路由信息区域,查看路由信息,该路由所属路由表为VPC1的系统路由表,目标网段为0.0.0.0/0,下一跳为创建的公网NAT网关。
- 单击SNAT管理页签,在SNAT条目列表区域查看以全通模式配置的SNAT条目,VPC1均可以通过该SNAT条目访问公网。
步骤三:配置路由
在VPC对等连接的两端添加路由条目以管理流量。
- 登录专有网络管理控制台。
- 在左侧导航栏,单击VPC对等连接。
- 在VPC对等连接页面,找到已创建的VPC对等连接,执行以下操作配置路由。
- 配置发起端(VPC1)的路由
- 在发起端实例列单击配置路由条目。
- 在配置路由条目对话框,在下拉列表中选择路由表,然后单击确定。
- 在路由表详情页面,选择添加路由条目。 页签,然后单击
- 在添加路由条目面板,配置以下参数信息,然后单击确定。
配置 说明 名称 输入路由条目的名称。 目标网段 输入路由条目的目标网段。 本文选择IPv4网段,然后输入VPC2的网段,即172.16.0.0/12。
下一跳类型 在下拉列表中选择VPC对等连接。 VPC对等连接 在下拉列表中选择已创建的VPC对等连接实例。
- 配置接收端(VPC2)的路由
- 在接收端实例列单击配置路由条目。
- 在配置路由条目对话框,在下拉列表中选择路由表,然后单击确定。
- 在路由表详情页面,选择添加路由条目。 页签,然后单击
- 在添加路由条目面板,配置以下参数信息,然后单击确定。
配置 说明 名称 输入路由条目的名称。 目标网段 输入路由条目的目标网段。 由于VPC2需要通过公网NAT网关访问公网,因此本文选择IPv4网段,然后输入0.0.0.0/0。
下一跳类型 在下拉列表中选择VPC对等连接。 VPC对等连接 在下拉列表中选择已创建的VPC对等连接实例。
路由配置完成后,您可以在VPC对等连接页面,单击VPC对等连接实例的ID,然后在路由条目列表区域,查看已配置的路由条目信息。 - 配置发起端(VPC1)的路由
步骤四:测试连通性
测试对等连接的连通性。
- 登录发起端VPC1的ECS1实例。具体操作,请参见ECS连接方式概述。
- 执行
ping
命令,ping
接收端VPC2的ECS2实例私网IP地址。收到如下图所示的回复报文,则表明发起端至接收端网络已连通。
经验证,ECS1实例可以访问ECS2实例。
- 登录接收端VPC2的ECS2实例。
- 执行
ping
命令,ping
发起端VPC1的ECS1实例私网IP地址。接收如下图所示的回复报文,则表明接收端至发起端网络已连通。
经验证,ECS1实例可以访问ECS2实例。
测试VPC1和VPC2的ECS实例是否能访问公网。
- 登录发起端VPC1的ECS1实例。
- 执行
ping www.aliyun.com
命令。收到如下图所示的回复报文,则表明ECS1实例可以访问公网。
经验证,ECS1实例可以访问公网。
- 登录接收端VPC2的ECS2实例。
- 执行
ping www.aliyun.com
命令。收到如下图所示的回复报文,则表明ECS2实例可以访问公网。
经验证,ECS1实例可以访问公网。