全部产品
Search
文档中心

VPN网关:基于多个公网IP地址建立高可用的IPsec-VPN连接(主备链路)

更新时间:Sep 27, 2023

如果您本地数据中心的一台本地网关设备上配置了多个公网IP地址,您可以使用其中的两个公网IP地址与阿里云专有网络VPC(Virtual Private Cloud)建立两条IPsec-VPN连接,这两条IPsec-VPN连接可以作为主备链路,实现本地数据中心与VPC之间的高可用连接。

场景示例

本文以下图场景为例。某企业在中国杭州拥有一个本地数据中心,在阿里云华东1(杭州)地域拥有一个VPC,VPC中已使用云服务器ECS(Elastic Compute Service)部署了应用。现在企业希望本地数据中心可以加密访问VPC中的应用,且希望本地数据中心和VPC之间拥有多条连接,实现上云链路的高可用。

企业本地数据中心的本地网关设备上拥有多个公网IP地址,企业可以使用其中的两个公网IP地址分别与VPC建立IPsec-VPN连接,在实现本地数据中心加密访问VPC中应用的同时,实现上云链路的高可用。

高可用-双IPsec连接

网络规划

网络功能规划

本文场景中使用的网络功能如下:

  • 购买公网网络类型的VPN网关实例。

  • 建立IPsec连接时,两个IPsec连接关联至同一个VPN网关实例。

  • VPN网关实例使用静态路由,通过设置路由的权重值来指定主备IPsec-VPN连接。

  • 两个IPsec连接均启用健康检查功能,通过健康检查探测IPsec-VPN连接的可用性。

    如果主IPsec-VPN连接健康检查失败,系统自动将流量切换至备IPsec-VPN连接进行传输。

网段规划

重要

在您规划网段时,请确保本地数据中心和VPC之间要互通的网段没有重叠。

资源

网段及IP地址

VPC

主网段:172.16.0.0/16

  • 交换机1网段:172.16.10.0/24

  • 交换机2网段:172.16.20.0/24

  • ECS1实例IP地址:172.16.10.1,ECS实例位于交换机1下

  • ECS2实例IP地址:172.16.20.1,ECS实例位于交换机2下

本地网关设备

本地网关设备的公网IP地址:

  • 公网IP地址1:118.XX.XX.20

  • 公网IP地址2:120.XX.XX.40

本地数据中心

待和VPC互通的网段:192.168.0.0/24

准备工作

在开始配置前,请确保您已完成以下操作:

  • 您已经在阿里云华东1(杭州)地域创建了一个VPC,并使用ECS部署了相关业务。具体操作,请参见搭建IPv4专有网络

  • 确保本地数据中心的本地网关设备支持IKEv1和IKEv2协议,支持这两种协议的本地网关设备均可以和阿里云VPN网关建立IPsec-VPN连接。

  • 您已经了解VPC中的ECS实例所应用的安全组规则,并确保安全组规则允许本地数据中心的网关设备访问云上资源。具体操作,请参见查询安全组规则添加安全组规则

配置流程

IPsec连接高可用-多公网IP地址-配置流程

步骤一:创建VPN网关

在建立IPsec-VPN连接前,您需要先创建一个VPN网关,并为VPN网关开启IPsec-VPN功能。

  1. 登录VPN网关管理控制台
  2. 在顶部菜单栏,选择VPN网关的地域。

    VPN网关的地域需和待关联的VPC实例的地域相同。本文选择华东1(杭州)地域。

  3. VPN网关页面,单击创建VPN网关
  4. 在购买页面,根据以下信息配置VPN网关,然后单击立即购买并完成支付。

    配置项

    说明

    实例名称

    输入VPN网关的名称。

    本文输入VPN网关

    地域

    选择VPN网关所属的地域。

    本文选择华东1(杭州)

    网关类型

    选择VPN网关的类型。

    本文选择普通型

    网络类型

    选择VPN网关的网络类型。

    本文选择公网

    隧道

    系统直接展示当前地域支持的IPsec-VPN连接的隧道模式。

    专有网络

    选择VPN网关待关联的VPC实例。

    本文选择已创建的VPC。

    虚拟交换机

    从VPC实例中选择一个交换机实例。

    • IPsec-VPN连接的隧道模式为单隧道时,您仅需要指定一个交换机实例。
    • IPsec-VPN连接的隧道模式为双隧道时,您需要指定两个交换机实例。
    说明
    • 系统默认帮您选择第一个交换机实例,您可以手动修改或者直接使用默认的交换机实例。
    • 创建VPN网关实例后,不支持修改VPN网关实例关联的交换机实例,您可以在VPN网关实例的详情页面查看VPN网关实例关联的交换机以及交换机所属可用区的信息。

    虚拟交换机2

    从VPC实例中选择第二个交换机实例。

    IPsec-VPN连接的隧道模式为单隧道时,无需配置该项。

    带宽峰值

    选择VPN网关的带宽峰值。单位:Mbps。

    流量

    VPN网关的计费方式。默认值:按流量计费

    更多信息,请参见计费说明

    IPsec-VPN

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

    本文保持默认值,即开启IPsec-VPN功能。

    SSL-VPN

    选择是否开启SSL-VPN功能。

    本文保持默认值,即关闭SSL-VPN功能。

    购买时长

    VPN网关的计费周期。默认值:按小时计费。

    服务关联角色

    单击创建关联角色,系统自动创建服务关联角色AliyunServiceRoleForVpn。

    VPN网关使用此角色来访问其他云产品中的资源,更多信息,请参见AliyunServiceRoleForVpn

    若本配置项显示为已创建,则表示您的账号下已创建了该角色,无需重复创建。

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

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

步骤二:创建用户网关

在建立IPsec-VPN连接前,您需要创建用户网关,将本地网关设备的信息注册至阿里云上。

  1. 在左侧导航栏,选择网间互联 > VPN > 用户网关
  2. 在顶部菜单栏,选择用户网关实例的地域。

    说明

    用户网关实例的地域必须和步骤一中创建的VPN网关实例的地域相同。

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

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

    请根据下表信息创建2个用户网关分别关联不同的公网IP地址。以下仅列举本文强相关的配置项,其余配置项保持默认值,如果您想要了解更多信息,请参见创建用户网关

    配置项

    配置项说明

    用户网关1

    用户网关2

    名称

    输入用户网关的名称。

    本文输入Customer1

    本文输入Customer2

    IP地址

    输入用户网关的公网IP地址。

    本文输入本地网关设备的公网IP地址1118.XX.XX.20

    本文输入本地网关设备的公网IP地址2120.XX.XX.40

步骤三:创建IPsec连接

创建用户网关后,您需要创建IPsec连接,VPN网关将通过IPsec连接与本地网关设备建立IPsec-VPN连接。

  1. 在左侧导航栏,选择网间互联 > VPN > IPsec连接
  2. 在顶部菜单栏,选择IPsec连接的地域。

    说明

    IPsec连接的地域必须和步骤一中创建的VPN网关实例的地域相同。

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

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

    请根据下表信息创建2个IPsec连接分别关联不同的用户网关。以下仅列举本文强相关的配置项,其余配置项保持默认值,如果您想要了解更多信息,请参见创建和管理IPsec连接(单隧道模式)

    配置项

    配置项说明

    IPsec连接1

    IPsec连接2

    名称

    输入IPsec连接的名称。

    本文输入IPsec连接1

    本文输入IPsec连接2

    绑定资源

    选择IPsec连接绑定的资源类型。

    本文选择VPN网关

    VPN网关

    选择已创建的VPN网关实例。

    本文选择VPN网关

    本文选择VPN网关

    用户网关

    选择已创建的用户网关实例。

    本文选择Customer1。

    本文选择Customer2。

    路由模式

    选择路由模式。

    本文选择目的路由模式

    立即生效

    选择IPsec连接的配置是否立即生效。取值:

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

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

    本文选择

    预共享密钥

    输入IPsec连接的认证密钥,用于本地网关设备和IPsec连接之间的身份认证。

    • 密钥长度为1~100个字符,支持数字、大小写英文字母及右侧字符~`!@#$%^&*()_-+={}[]\|;:',.<>/?

    • 若您未指定预共享密钥,系统会随机生成一个16位的字符串作为预共享密钥。创建IPsec连接后,您可以通过编辑按钮查看系统生成的预共享密钥。具体操作,请参见修改IPsec连接

    重要

    IPsec连接两侧配置的预共享密钥需一致,否则系统无法正常建立IPsec连接。

    本文输入fddsFF123****

    加密配置

    添加IKE配置和IPsec配置。

    本文使用IKEv1版本,其余选项保持默认值。

    BGP配置

    选择是否开启BGP配置。

    本文保持默认值,即不开启BGP配置。

    健康检查

    选择是否开启健康检查功能。

    • 目标IP:输入VPC侧通过IPsec连接可以访问的本地数据中心的IP地址。

    • 源IP:输入本地数据中心通过IPsec连接可以访问的VPC侧的IP地址。

    • 重试间隔:选择健康检查的重试间隔时间,单位:秒。默认值:3

    • 重试次数:选择健康检查的重试次数。默认值:3

    本文开启健康检查功能,并添加以下配置:

    • 目标IP:192.168.0.1。

    • 源IP:172.16.10.1。

    • 重试间隔:3。

    • 重试次数:3。

    本文开启健康检查功能,并添加以下配置:

    • 目标IP:192.168.0.2。

    • 源IP:172.16.20.1。

    • 重试间隔:3。

    • 重试次数:3。

  5. 创建成功对话框中,单击确定

  6. 返回至IPsec连接页面,找到目标IPsec连接,在操作列单击下载对端配置

    将IPsec连接1和IPsec连接2的对端配置保存在您的本地,用于后续配置本地网关设备。

步骤四:配置VPN网关路由

您需要为VPN网关配置路由,引导VPC去往本地数据中心的流量进入IPsec-VPN连接。

  1. 在左侧导航栏,选择网间互联 > VPN > VPN网关
  2. 在顶部菜单栏,选择VPN网关实例的地域。
  3. VPN网关页面,找到目标VPN网关实例,单击实例ID。

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

  5. 添加路由条目面板,根据以下信息配置目的路由,然后单击确定

    请根据下表信息为VPN网关添加两条目的路由,通过设置目的路由的权重值指定主备IPsec-VPN连接。

    配置项

    配置说明

    路由条目1

    路由条目2

    目标网段

    输入待互通的目标网段。

    输入本地数据中心待和VPC互通的网段192.168.0.0/24

    输入本地数据中心待和VPC互通的网段192.168.0.0/24

    下一跳类型

    选择下一跳的类型。

    选择IPsec连接

    选择IPsec连接

    下一跳

    选择下一跳。

    选择IPsec连接1。

    选择IPsec连接2。

    发布到VPC

    选择是否将新添加的路由发布到VPN网关关联的VPC的路由表中。

    本文选择

    本文选择

    权重

    选择路由的权重值。

    • 100:高优先级。

    • 0:低优先级。

    本文选择100(主)

    重要

    通过设置不同的路由权重来区分主备路由,两条目的路由的权重不能同时设置为100,也不能同时设置为0。

    本文选择0(备)

步骤五:配置本地网关设备

在阿里云侧完成配置后,您需要在本地网关设备上添加VPN配置、路由配置以及健康检查配置,使本地网关设备与VPN网关之间成功建立IPsec-VPN连接,同时使本地数据中心去往VPC的流量优先通过主IPsec-VPN连接,在主IPsec-VPN连接中断后自动切换至备IPsec-VPN连接。

以下配置示例仅供参考,不同厂商的设备配置命令可能会有所不同。具体命令,请咨询相关设备厂商。

  1. 在本地网关设备中添加VPN配置。

    根据在步骤6中下载的IPsec连接对端配置,在本地网关设备中添加VPN配置。

    1. 登录本地网关设备的命令行配置界面。

    2. 配置isakmp策略。

      crypto isakmp policy 1 
      authentication pre-share 
      encryption aes
      hash sha 
      group  2
      lifetime 86400
    3. 配置预共享密钥。

      crypto isakmp key fddsFF123**** address 46.XX.XX.21
    4. 配置IPsec安全协议。

      crypto ipsec transform-set ipsecpro64 esp-aes esp-sha-hmac 
      mode tunnel
    5. 配置ACL(访问控制列表),定义需要保护的数据流。

      说明

      如果本地网关设备配置了多网段,则需要分别针对多个网段添加ACL策略。

      access-list 100 permit ip 192.168.0.0 0.0.0.255 172.16.0.0 0.0.0.255
    6. 配置IPsec策略。

      crypto map ipsecpro64 10 ipsec-isakmp
      set peer 46.XX.XX.21
      set transform-set ipsecpro64
      set pfs group2
      match address 100
    7. 应用IPsec策略。

      interface GigabitEthernet1    #在配置公网IP地址1的接口下应用IPsec策略
      crypto map ipsecpro64
      interface GigabitEthernet2    #在配置公网IP地址2的接口下应用IPsec策略
      crypto map ipsecpro64
  2. 在本地网关设备中添加路由配置以及健康检查配置。

    使本地数据中心去往VPC的流量优先通过主IPsec-VPN连接,同时通过健康检查功能自动检测主IPsec-VPN连接的连通性,在主IPsec-VPN连接不通的情况下自动引导本地数据中心去往VPC的流量进入备IPsec-VPN连接。

    type icmp-echo  
     destination ip 46.XX.XX.21  #目标IP地址为VPN网关公网IP地址。
     frequency 5000  
     reaction 1 checked-element probe-fail threshold-type consecutive 2 action-type trigger-only
    nqa schedule admin test start-time now lifetime forever
    track 1 nqa entry admin test reaction 1
    ip route-static 172.16.0.0 16 118.XX.XX.20 track 1 preference 40     #172.16.0.0/16为VPC待和本地数据中心互通的网段;118.XX.XX.20为本地网关设备与VPN网关建立主IPsec-VPN连接的公网IP地址。
    ip route-static 172.16.0.0 16 120.XX.XX.40     #172.16.0.0/16为VPC待和本地数据中心互通的网段;120.XX.XX.40为本地网关设备与VPN网关建立备IPsec-VPN连接的公网IP地址。
  3. 在本地网关设备中添加IPsec连接健康检查的回程路由。

    在本地网关设备中添加一条目标网段为源IP地址,子网掩码为32位,下一跳指向IPsec连接的路由条目,以确保阿里云IPsec连接健康检查功能正常工作。

    ip route-static 172.16.10.1 32  118.XX.XX.20  #配置IPsec连接1健康检查的回程路由
    ip route-static 172.16.20.1 32  120.XX.XX.40  #配置IPsec连接2健康检查的回程路由  

步骤六:验证测试

完成上述步骤后,本地数据中心可通过两条IPsec-VPN连接与VPC互通。以下内容介绍如何测试网络连通性以及如何验证两条IPsec-VPN连接已实现主备链路冗余。

  1. 网络连通性测试。

    1. 登录VPC下任意一个ECS实例,本文登录ECS1实例。具体操作,请参见ECS远程连接操作指南

    2. 在ECS1实例中执行ping命令,尝试访问本地数据中心的客户端。

      ping <本地数据中心客户端的IP地址>

      如果可以收到客户端发出的回复报文,则表示本地数据中心和VPC之间的网络已连通,可以实现资源互访。

  2. 验证两条IPsec-VPN连接已实现主备链路冗余。

    1. 在本地数据中心的多个客户端中持续向ECS1实例发送访问请求,或者在客户端中使用iPerf3工具持续向ECS1实例发送访问请求。关于如何安装、使用iPerf3工具,请参见物理专线网络性能测试方法

    2. 登录阿里云管理控制台,在IPsec连接的详情页面查看流量监控数据。

      正常情况下,仅主IPsec-VPN连接关联的IPsec连接1的详情页面下有流量监控数据。

      您可以通过以下步骤进入IPsec连接1的详情页面:

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

      2. 在顶部状态栏处,选择IPsec连接1所属的地域。

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

      4. IPsec连接页面,找到目标IPsec连接1,单击IPsec连接1的ID。

        进入IPsec连接1的详情页面在监控页签下查看流量监控数据。

    3. 中断主IPsec-VPN连接。

      例如,您可以在本地网关设备上关闭与VPN网关建立主IPsec-VPN连接的接口来中断主IPsec-VPN连接。关于如何关闭接口,请参见您的本地网关设备操作指南。

    4. 重新登录阿里云管理控制台,在备IPsec-VPN连接关联的IPsec连接2的详情页面查看流量监控数据。

      正常情况下,主IPsec-VPN连接中断后,流量将自动切换至备IPsec-VPN连接进行转发,您可以在备IPsec-VPN连接关联的IPsec连接2的详情页面查看到流量的监控数据。