使用VPC对等连接实现多个VPC共用公网NAT网关

通过使用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网关访问公网。

image

前提条件

  • 您已经参考下表完成了VPC和交换机的创建。具体操作,请参见创建和管理专有网络

    VPC名称

    地域

    网段

    交换机名称

    可用区和网段

    VPC1

    华东1(杭州)

    192.168.0.0/16

    交换机1

    杭州可用区H,192.168.0.0/24

    华东1(杭州)

    192.168.0.0/16

    交换机2

    杭州可用区H,192.168.5.0/24

    VPC2

    华东1(杭州)

    172.16.0.0/12

    交换机2

    杭州可用区H,172.16.0.0/16

  • 您已经在交换机1中创建了ECS1实例,在交换机2中创建了ECS2实例。具体操作,请参见自定义购买实例

配置步骤

image

步骤一:创建公网NAT网关

在VPC1中以全通模式创建公网NAT网关。

  1. 登录NAT网关管理控制台

  2. 公网NAT网关页面,单击创建公网NAT网关

  3. 首次使用NAT网关时,在创建公网NAT网关页面关联角色创建区域,单击创建关联角色。角色创建成功后即可创建NAT网关。

    创建角色 关于NAT网关服务关联角色的更多信息,请参见服务关联角色

  4. 公网NAT网关页面,配置以下购买信息,然后单击立即购买

    配置

    说明

    付费模式

    默认选择为按量付费,即一种先使用后付费的付费模式。更多信息,请参见公网NAT网关计费

    资源组

    选择VPC所属的资源组。更多信息,请参见什么是资源组

    标签

    • 标签键:选择或输入完整的标签键。

      最多支持输入20个标签键。一个标签键最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。

    • 标签值:选择或输入完整的标签值。

      最多支持输入20个标签值。一个标签值最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。

    所属地域

    选择需要创建公网NAT网关的地域。

    本文选择华东1(杭州)

    所属专有网络

    选择公网NAT网关所属的VPC。创建后,不能修改公网NAT网关所属的VPC。

    本文选择VPC1

    关联交换机

    选择公网NAT网关实例所属的交换机。

    本文选择交换机2

    计费类型

    默认选择为按使用量计费,即按公网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(多线),默认选择默认版本的安全防护,然后配置带宽峰值并选择计费类型按使用流量计费

  5. 确认订单页面,确认订单中的配置信息,阅读并选中服务协议然后单击确认订单

  6. 单击返回控制台,在公网NAT网关页面,找到创建的公网NAT网关,然后单击其实例ID。

    • 基本信息页签指向NAT的VPC路由信息区域,查看路由信息,该路由所属路由表为VPC1的系统路由表,目标网段为0.0.0.0/0,下一跳为创建的公网NAT网关。

    • 单击SNAT管理页签,在SNAT条目列表区域查看以全通模式配置的SNAT条目,VPC1均可以通过该SNAT条目访问公网。

步骤二:创建VPC对等连接

  1. 登录专有网络管理控制台
  2. 在左侧导航栏,单击VPC对等连接
  3. 在顶部菜单栏,选择要创建VPC对等连接的地域。

    本文选择华东1(杭州)地域。

  4. 如果您是初次使用VPC对等连接时,请在VPC对等连接页面,单击开通CDT功能,然后在弹出的对话框单击确定开通

    如果创建跨账号VPC对等连接,您需要确保接收端阿里云账号已经开通了CDT功能。

  5. VPC对等连接页面,单击创建对等连接

  6. 创建对等连接页面,配置以下参数信息,然后单击确定

    配置

    说明

    对等连接名称

    输入VPC对等连接的名称。

    资源组

    选择所属的资源组。

    发起端VPC实例

    在下拉列表中选择发起端的VPC实例。

    本文选择VPC1

    接收端账号类型

    选择接收端VPC实例所属的阿里云账号类型。

    本文选择同账号

    接收端地域类型

    选择接收端VPC实例所在地域类型。

    本文选择同地域

    接收端VPC实例

    选择接收端VPC实例。

    本文选择VPC2

  7. VPC对等连接页面,查看VPC对等连接的状态等信息。

    • 激活成功的VPC对等连接状态为已激活,您可以正常使用。

    • 您可以查看发起端和接收端的实例ID、所在地域、CIDR网段以及所属阿里云账号。

步骤三:配置路由

在VPC对等连接的两端添加路由条目以管理流量。

  1. 登录专有网络管理控制台
  2. 在左侧导航栏,单击VPC对等连接
  3. VPC对等连接页面,找到已创建的VPC对等连接,执行以下操作配置路由。

    • 配置发起端(VPC1)的路由

      1. 发起端VPC实例列单击配置路由条目

      2. 配置路由条目对话框,配置以下参数信息,然后单击确定

        配置

        说明

        专有网络

        系统自动显示当前发起端的VPC实例。

        路由表

        在下拉列表中选择该VPC实例所关联的路由表。

        名称

        输入路由条目的名称。

        目标网段

        输入路由条目的目标网段。

        本文选择IPv4网段,然后输入VPC2的网段,即172.16.0.0/12

        下一跳

        系统自动显示下一跳对等连接实例。

    • 配置接收端(VPC2)的路由

      1. 接收端实例列单击配置路由条目

      2. 配置路由条目对话框,配置以下参数信息,然后单击确定

        配置

        说明

        专有网络

        系统自动显示当前发起端的VPC实例。

        路由表

        在下拉列表中选择该VPC实例所关联的路由表。

        名称

        输入路由条目的名称。

        目标网段

        输入路由条目的目标网段。

        由于VPC2需要通过公网NAT网关访问公网,因此本文选择IPv4网段,然后输入0.0.0.0/0

        下一跳

        系统自动显示下一跳对等连接实例。

    路由配置完成后,您可以在VPC对等连接页面,单击VPC对等连接实例的ID,然后在路由条目列表页签下,查看已配置的路由条目信息。

步骤四:测试连通性

测试对等连接的连通性。

  1. 登录发起端VPC1的ECS1实例。具体操作,请参见ECS连接方式概述

  2. 执行ping命令,ping接收端VPC2的ECS2实例私网IP地址。

    收到如下图所示的回复报文,则表明发起端至接收端网络已连通。

    经验证,ECS1实例可以访问ECS2实例。

    test1

  3. 登录接收端VPC2的ECS2实例。

  4. 执行ping命令,ping发起端VPC1的ECS1实例私网IP地址。

    接收如下图所示的回复报文,则表明接收端至发起端网络已连通。

    经验证,ECS2实例可以访问ECS1实例。test2

测试VPC1和VPC2的ECS实例是否能访问公网。

  1. 登录发起端VPC1的ECS1实例。

  2. 执行ping www.aliyun.com命令。

    收到如下图所示的回复报文,则表明ECS1实例可以访问公网。

    经验证,ECS1实例可以访问公网。

    test3

  3. 登录接收端VPC2的ECS2实例。

  4. 执行ping www.aliyun.com命令。

    收到如下图所示的回复报文,则表明ECS2实例可以访问公网。

    经验证,ECS2实例可以访问公网。test4