VPC NAT网关联动VPN网关实现云上与云下私网互访

本文指导您使用VPC NAT网关联动VPN网关实现云上VPC与本地数据中心IDC(Internet Data Center)通过指定私网IP地址互访。

场景示例

本文以下图场景为例。某企业在华北1(青岛)地域拥有一个名称为VPC1的专有网络VPC(Virtual Private Cloud)。该企业在华北2(北京)地域拥有本地IDC。因业务发展,企业需要VPC1能以指定私网IP地址访问本地IDC,本地IDC也能以指定私网IP地址访问VPC1。

VPN

企业计划使用VPC NAT产品联动VPN网关产品实现上述需求。

您可以通过VPN网关的IPsec-VPN连接,建立本地IDC与云上VPC的连接,实现云上和云下的安全互通;通过VPC NAT网关的SNAT和DNAT功能,实现VPC内指定IP地址与本地IDC互访。本文示例中的网段规划如下表所示。您也可以自行规划网段,请确保您的网段之间没有重叠。

配置项

地址段

云上VPC1网段

10.0.0.0/16

云上交换机网段

  • VSW1:10.0.0.0/24(青岛可用区B)

  • VSW2:10.0.1.0/24(青岛可用区E)

云上ECS实例的IP地址

ECS1:10.0.0.81

本地IDC网段

172.16.0.0/12

本地IDC内服务器IP地址

172.16.0.124

本地IDC网关设备IP地址

211.68.XX.XX

前提条件

  • 您已经在华北1(青岛)地域创建了名称为VPC1的专有网络,并在VPC1创建了名称为VSW1和VSW2交换机,VSW1位于可用区B,VSW2位于可用区E。具体操作,请参见创建和管理专有网络

  • 您已经在VSW1中创建了名称为ECS1的云服务器ECS(Elastic Compute Service)实例并部署了应用服务。具体操作,请参见自定义购买实例

配置步骤

配置流程

步骤一:配置IPsec-VPN

通过IPsec-VPN功能可建立VPC与本地IDC之间的VPN连接。使用IPsec-VPN功能,您需要创建VPN网关、用户网关和IPsec连接。关于IPsec-VPN功能的更多信息,请参见入门概述

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

  2. 执行以下操作,创建VPN网关。

    1. VPN网关页面,单击创建VPN网关

    2. 在购买页面,配置以下参数信息,然后单击立即购买并完成支付。

      参数

      说明

      实例名称

      输入VPN网关实例的名称。

      地域和可用区

      选择VPN网关实例所属的地域。本文选择华北1(青岛)

      网关类型

      默认为普通型

      VPC

      选择要连接的VPC实例。本文选择VPC1。

      虚拟交换机1

      从VPC实例中选择一个交换机实例,本文选择VSW1。

      虚拟交换机2

      从VPC实例中选择一个交换机实例,本文选择VSW2。

      带宽规格

      选择VPN网关实例的公网带宽峰值。单位为Mbps。

      本文选择5 Mbps

      IPsec-VPN

      选择是否开启IPsec-VPN功能。本文选择开启

      SSL-VPN

      选择是否开启SSL-VPN功能。本文选择关闭

      计费周期

      选择购买时长。关于计费的更多信息, 请参见VPN网关计费说明

    3. 返回VPN网关页面,查看已创建的VPN网关实例。

      创建好的VPN网关实例初始状态为准备中,约1~5分钟会变为正常状态,表明VPN网关实例已经完成初始化,可以正常使用。

  3. 执行以下操作,创建用户网关。

    1. 在左侧导航栏,选择网间互联 > VPN > 用户网关

    2. 在顶部菜单栏,选择创建用户网关实例的地域。本文选择华北1(青岛)

    3. 用户网关页面,单击创建用户网关

    4. 创建用户网关面板,配置以下参数信息,然后单击确定

      参数

      说明

      名称

      输入用户网关实例的名称。

      IP地址

      输入VPC1要连接的本地IDC的网关设备的公网IP。本文输入211.68.XX.XX

      自治系统号

      输入本地数据中心网关设备的自治系统号。

      描述

      输入用户网关实例的描述信息。

      更多参数信息,请参见创建和管理用户网关

  4. 执行以下操作,创建IPsec连接。

    1. 在左侧导航栏,选择网间互联 > VPN > IPsec连接

    2. 在顶部菜单栏,选择创建IPsec连接实例的地域。本文选择华北1(青岛)

    3. IPsec连接页面,单击创建IPsec连接

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

      参数

      说明

      名称

      输入IPsec连接的名称。

      绑定资源

      选择VPN网关

      VPN网关

      选择已创建的VPN网关。

      路由模式

      选择路由模式。本文选择目的路由模式

      立即生效

      选择是否立即生效。

      • :配置完成后立即进行协商。

      • :当有流量进入时进行协商。

      本文保持默认选择。

      Tunnel1>用户网关

      选择需要关联的用户网关。

      Tunnel2>用户网关

      选择需要关联的用户网关。

      预共享密钥

      输入共享密钥。建立IPsec连接需保证该值与本地网关设备的预共享密钥一致。如果不输入该值,系统默认生成一个16位的随机字符串。

步骤二:在本地网关设备中加载VPN配置

使用IPsec-VPN建立VPC到本地IDC的连接时,在配置完阿里云VPN网关后,您还需在本地IDC的网关设备中进行VPN配置。

  1. 在左侧导航栏,选择网间互联 > VPN > IPsec连接

  2. IPsec连接页面,找到目标IPsec连接实例,然后在操作单击生成对端配置

  3. 根据本地网关设备的配置要求,将下载的配置添加到本地网关设备中。具体操作,请参见本地网关配置

步骤三:创建VPC NAT网关

  1. 登录NAT网关管理控制台
  2. 在左侧导航栏,选择NAT网关 > VPC NAT网关
  3. VPC NAT网关页面,单击创建VPC NAT网关
  4. VPC NAT网关(按量付费)页面,配置以下参数信息,然后单击立即购买

    参数

    说明

    地域

    选择需要创建VPC NAT网关实例的地域。本文选择华北1(青岛)

    VPC ID

    选择VPC NAT网关实例所属的VPC。创建VPC NAT网关实例后,不能修改其所属的VPC。本文选择VPC1。

    可用区

    选择VPC NAT网关实例所属的可用区。本文选择VSW2的可用区。

    交换机ID

    选择VPC NAT网关实例所属的交换机,建议您选择独立的交换机。本文选择VSW2。

    实例名称

    设置VPC NAT网关实例的名称。

    服务关联角色

    显示是否已有VPC NAT网关的服务关联角色。

    首次使用NAT网关(包含公网NAT网关和VPC NAT网关),需要单击创建服务关联角色完成创建。

  5. 返回VPC NAT网关页面,查看已创建的VPC NAT网关。

    • 单击VPC NAT网关的实例ID,在基本信息页签,查看VPC NAT网关的VPC、交换机等信息。

    • 单击NAT IP页签,查看默认NAT IP地址段和默认NAT IP地址。

      说明

      默认NAT IP地址段为该VPC NAT网关所属交换机的网段,默认NAT IP地址为系统在交换机网段中随机分配的一个IP地址。默认NAT IP地址段和默认NAT IP地址均不能删除。

步骤四:为VPC1的系统路由表添加路由条目

为VPC1的系统路由表添加指向VPC NAT网关的路由条目。

  1. 登录专有网络管理控制台
  2. 专有网络,找到VPC1,然后单击VPC的ID。

  3. 在VPC详情页面,单击资源管理页签,单击路由表下方的链接。

  4. 路由表页面,找到路由表类型系统的路由表,单击其ID。

  5. 在路由表详情页面,选择路由条目列表 > 自定义路由条目页签,然后单击添加路由条目

  6. 添加路由条目面板,配置以下参数,然后单击确定

    参数

    说明

    名称

    输入路由条目的名称。本文输入VPCENTRY

    目标网段

    输入要转发到的目标网段。本文输入本地IDC内服务器IP地址,172.16.0.124/32

    下一跳类型

    选择下一跳的类型。本文选择NAT网关

    NAT网关

    选择具体的NAT网关实例。本文选择步骤三:创建VPC NAT网关创建的VPC NAT网关。

步骤五:创建自定义路由表并添加路由条目

为VSW2交换机创建自定义路由表并添加指向VPN网关的路由条目。

关于支持创建自定义路由表的地域信息,请参见自定义路由表发布及地域支持情况

  1. 登录专有网络管理控制台
  2. 在左侧导航栏,单击路由表
  3. 在顶部菜单栏,选择路由表所属的地域。
  4. 路由表页面,单击创建路由表
  5. 创建路由表页面,配置以下参数,然后单击确定

    参数

    说明

    资源组

    选择路由表所属的资源组。本文选择全部

    专有网络

    选择路由表所属的VPC。本文选择VPC1。

    名称

    输入路由表的名称。本文输入VPNVTB

    描述

    输入路由表的描述。本文输入VPCNAT的自定义路由表

  6. 单击已绑定交换机页签,然后单击绑定交换机

  7. 绑定交换机对话框,选择要绑定的交换机,然后单击确定

    本文选择VSW2交换机。

  8. 在路由表详情页面,选择路由条目列表 > 自定义路由条目页签,然后单击添加路由条目

  9. 添加路由条目面板,配置以下参数,然后单击确定

    参数

    说明

    名称

    输入路由条目的名称。本文输入VPCNATENTRY

    目标网段

    输入要转发到的目标网段。本文输入本地IDC内服务器IP地址,172.16.0.124/32

    下一跳类型

    选择下一跳的类型。本文选择VPN网关

    VPN网关

    选择具体的VPN网关实例。本文选择步骤一:配置IPsec-VPN创建的VPN网关。

步骤六:使用默认NAT IP创建SNAT条目和DNAT条目

  1. 登录NAT网关管理控制台
  2. 在左侧导航栏,选择NAT网关 > VPC NAT网关
  3. 在顶部菜单栏,选择公网NAT网关的地域。
  4. 执行以下步骤,创建SNAT条目。

    1. VPC NAT网关页面,找到目标VPC NAT网关实例,然后在操作列单击SNAT管理
    2. SNAT管理页签,单击创建SNAT条目
    3. 创建SNAT条目页面,配置以下参数信息,然后单击确定创建

      参数

      说明

      SNAT条目粒度

      选择SNAT条目的粒度。本文选择交换机粒度,然后在选择交换机列表中选择ECS1所在交换机。本文选择VSW1。交换机网段处会显示VSW1的网段。

      选择NAT IP地址

      在下拉列表中选择用来访问外部私有网络的NAT IP地址。本文选择默认NAT IP地址。

      条目名称

      SNAT条目的名称。

      名称长度为2~128个字符,以大小写字母或中文开头, 可包含数字、下划线(_)和短划线(-)。

  5. 返回VPC NAT网关页面,然后执行以下操作,创建DNAT条目。

    1. VPC NAT网关页面,找到目标VPC NAT网关实例,然后在操作列单击DNAT管理
    2. DNAT管理页签,单击创建DNAT条目
    3. 创建DNAT条目页面,配置以下参数信息,然后单击确定创建

      参数

      说明

      选择NAT IP地址

      选择供外部私有网络访问的NAT IP地址。本文选择默认NAT IP地址。

      选择私网IP地址

      选择要通过DNAT规则进行通信的私网IP地址。本文以通过ECS或弹性网卡进行选择方式,选择ECS1的私网IP地址。

      端口设置

      选择DNAT映射的方式。本文选择具体端口,即端口映射方式。

      前端端口输入22后端端口输入22协议类型选择TCP

      条目名称

      输入DNAT条目的名称。

      名称长度为2~128个字符,以大小写字母或中文开头, 可包含数字、下划线(_)和短划线(-)。

步骤七:配置VPN网关的路由

您需要在VPN网关中配置路由,并发布路由到VPC路由表以实现本地IDC和VPC的通信。

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

  2. 在顶部菜单栏,选择VPN网关实例的地域。

  3. 在左侧导航栏,选择网间互联 > VPN > VPN网关

  4. VPN网关页面,找到目标VPN网关实例,单击实例ID。

  5. 目的路由表页签,单击添加路由条目

  6. 添加路由条目面板,配置以下参数信息,然后单击确定

    参数

    说明

    目标网段

    输入本地数据中心的私网网段。本文输入本地IDC的网段,172.16.0.0/12

    下一跳类型

    选择IPsec连接

    下一跳

    选择IPsec连接实例。本文选择步骤一:配置IPsec-VPN创建的IPsec连接。

    发布到VPC

    选择是否将新添加的路由发布到VPC路由表。本文选择

    权重

    选择路由的权重值。本文选择100

    • 100:高优先级。

    • 0:低优先级。

步骤八:测试连通性

  1. 登录VSW1的ECS1。具体操作,请参见连接方式概述

  2. 执行ping 本地IDC内服务器IP地址命令,测试ECS1是否能访问本地IDC内的服务器。

    本文执行以下命令。

    ping 172.16.0.124

    经测试,ECS1可以访问本地IDC内的服务器。ping

  3. 登录本地IDC内的服务器,执行ssh root@NAT IP命令,此处的NAT IP为VPC NAT网关的默认NAT IP地址,然后输入ECS1的登录密码,测试本地IDC内的服务器是否可以远程连接到ECS1。

    本文执行以下命令。

    ssh 10.0.1.43

    经测试,本地IDC内的服务器可以通过VPC NAT网关的DNAT功能访问ECS1。ssh