IPsec-VPN联合物理专线实现主备链路上云(绑定VPN网关)

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

本文为您介绍如何组合使用IPsec-VPN和物理专线,实现本地数据中心IDC(Internet Data Center)通过主备链路上云并和云上专有网络VPC(Virtual Private Cloud)互通。

场景说明

本文以下图场景为例,为您介绍IPsec-VPN联合物理专线实现主备链路上云方案。某企业在杭州拥有一个本地IDC,且企业已经在阿里云华东1(杭州)地域部署了业务VPC1,VPC1中通过云服务器ECS(Elastic Compute Service)等云产品部署了应用业务和数据分析服务,用于后续业务交互和数据分析。企业现在需要部署上云的主备链路,以实现云下IDC和云上VPC1的互联互通。链路说明如下:

  • 创建物理专线作为第一条链路,本地IDC通过物理专线和云企业网连接VPC1。

  • 创建VPN网关作为第二条链路,VPN网关关联至一个独立的VPC(VPC2),VPC2中不部署任何业务,仅作为中转VPC为本地IDC和云上搭建IPsec-VPN链路,本地IDC通过IPsec-VPN连接和云企业网连接VPC1。

    • 在物理专线和IPsec-VPN连接均正常运行的情况下,VPC1实例可以通过物理专线和IPsec-VPN连接同时学习到本地IDC的网段,系统默认通过物理专线学习到的路由的优先级高于通过IPsec-VPN连接学习到的路由,因此VPC1实例去往本地IDC的流量默认通过物理专线传输。

    • 当物理专线异常时,系统会自动撤销通过物理专线学习到的路由,通过IPsec-VPN连接学习到的路由会自动生效,VPC1实例去往本地IDC的流量会通过IPsec-VPN连接进行传输;当物理专线恢复后,VPC1实例去往本地IDC的流量会重新通过物理专线进行传输,IPsec-VPN连接会重新成为备用链路。

主备链路架构图2.0

准备工作

  • 您需要为本地IDC和网络实例规划路由协议。本文路由协议规划如下:

    • 本地IDC网关设备与VPN网关之间配置静态路由。

    • 本地IDC网关设备与边界路由器VBR(Virtual border router)之间运行BGP动态路由协议。

      说明

      在VPN网关作为物理专线备份链路的场景下,路由协议说明如下:

      • 如果VPN网关关联至一个独立的VPC(例如本文的VPC2)中,则VBR必须使用BGP动态路由协议,VPN网关可以使用静态路由或BGP动态路由协议。

      • 如果VPN网关关联至业务VPC(例如本文的VPC1)中,则VBR和VPN网关均需要使用BGP动态路由协议。

  • 您需要为本地IDC和网络实例规划网段,请确保网段之间没有重叠。本文网段规划如下。

    配置目标

    网段规划

    IP地址

    VPC1

    192.168.0.0/16

    云服务器地址:192.168.20.161

    VPC2

    10.0.0.0/16

    不涉及

    VBR

    10.1.0.0/30

    • VLAN ID:0

    • 阿里云侧IPv4互联IP:10.1.0.1/30

    • 客户侧IPv4互联IP:10.1.0.2/30

      本文中客户侧指本地IDC的网关设备

    本地IDC

    172.16.0.0/16

    客户端地址:172.16.1.188

    本地IDC的网关设备

    10.1.0.0/30

    • 公网IP地址:211.XX.XX.68

    • 与物理专线连接的端口IP地址:10.1.0.2/30

    • BGP AS号:65530

  • 您已经在阿里云华东1(杭州)地域创建了VPC1和VPC2。其中,VPC1部署有应用业务和数据分析服务;VPC2暂不部署业务,仅关联VPN网关,作为中转VPC为云下和云上搭建VPN链路。具体操作,请参见创建和管理专有网络

  • 请检查本地IDC网关设备,确保网关设备支持标准的IKEv1和IKEv2协议,以便和阿里云VPN网关建立连接。关于网关设备是否支持标准的IKEv1和IKEv2协议,请咨询网关设备厂商。

  • 您已经为本地IDC网关设备配置了静态公网IP。

  • 您已经了解VPC1中的ECS实例所应用的安全组规则,并确保安全组规则允许本地IDC访问VPC1中的ECS实例。具体操作,请参见查询安全组规则添加安全组规则

配置流程

物理专线和VPN配置步骤

步骤一:部署物理专线

  1. 创建物理专线。

    您需要在华东1(杭州)地域申请一条物理专线。具体操作,请参见创建和管理独享专线连接共享专线连接

  2. 创建VBR。

    1. 登录高速通道管理控制台

    2. 在左侧导航栏,单击边界路由器(VBR)

    3. 在顶部状态栏,选择要创建的VBR的地域。

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

    4. 边界路由器(VBR)页面,单击创建边界路由器

    5. 创建边界路由器面板,根据以下信息进行配置,然后单击确定

      • 账号类型:本示例选择当前账号

      • 名称:本示例输入VBR。

      • 物理专线接口:选择已申请的物理专线接口。

      • VLAN ID:0。

      • 设置VBR带宽值:选择VBR实例的带宽峰值。

      • 阿里云侧IPv4互联IP:10.1.0.1。

      • 客户侧IPv4互联IP:10.1.0.2。

      • IPv4子网掩码:255.255.255.252。

  3. 配置BGP组。

    1. 边界路由器(VBR)页面,单击目标VBR实例ID。

    2. 在边界路由器实例详情页面,单击BGP组页签。

    3. 单击创建BGP组,根据以下信息配置BGP组,然后单击确定

      • 名称:BGP组的名称。本示例输入test。

      • Peer AS号:本地IDC侧网关设备的AS号。本示例输入65530。

      • BGP密钥:BGP组的密钥。本示例不配置该项。

      • 描述:BGP组的描述信息。本示例输入test。

  4. 配置BGP邻居。

    1. 在边界路由器实例详情页面,单击BGP邻居页签。

    2. BGP邻居页签下,单击创建BGP邻居

    3. 创建BGP邻居面板,配置BGP邻居信息,然后单击确定

      • BGP组:选择要加入的BGP组。本示例选择已创建的BGP组。

      • BGP邻居IP:BGP邻居的IP地址。本示例输入本地IDC侧网关设备的端口IP地址10.1.0.2。

步骤二:部署VPN网关

  1. 创建VPN网关。

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

    2. 在顶部菜单栏,选择华东1(杭州)地域。

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

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

      • 实例名称:输入VPN网关的实例名称。

      • 地域和可用区:选择VPN网关的地域。

        本示例将VPN网关关联到VPC2上,确保VPC2和VPN网关的地域相同。本示例选择华东1(杭州)

      • 网关类型:选择要创建的VPN网关类型。本示例选择普通型

      • 网络类型:选择VPN网关实例的网络类型。本示例选择公网

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

      • VPC: 选择要连接的VPC。本示例选择VPC2。

      • 虚拟交换机:从VPC实例中选择一个交换机实例。

        • IPsec-VPN连接的隧道模式为单隧道时,您仅需要指定一个交换机实例。

        • IPsec-VPN连接的隧道模式为双隧道时,您需要指定两个交换机实例。

          IPsec-VPN功能开启后,系统会在两个交换机实例下各创建一个弹性网卡ENI(Elastic Network Interfaces),作为使用IPsec-VPN连接与VPC流量互通的接口。每个ENI会占用交换机下的一个IP地址。

        说明
        • 系统默认帮您选择第一个交换机实例,您可以手动修改或者直接使用默认的交换机实例。

        • 创建VPN网关实例后,不支持修改VPN网关实例关联的交换机实例,您可以在VPN网关实例的详情页面查看VPN网关实例关联的交换机、交换机所属可用区以及交换机下ENI的信息。

      • 虚拟交换机2:从VPC实例中选择第二个交换机实例。

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

      • 带宽规格:选择VPN网关的带宽规格,带宽规格是VPN网关所具备的公网带宽。

      • IPsec-VPN: 选择开启或关闭IPsec-VPN功能,IPsec-VPN功能可以在本地IDC与VPC之间或不同VPC之间建立连接。本示例选择开启

      • SSL-VPN: 选择开启或关闭SSL-VPN功能,SSL-VPN功能允许您从任何位置的单台计算机连接到VPC。本示例选择关闭

      • 计费周期:选择购买时长。

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

        更多信息,请参见AliyunServiceRoleForVpn。若本配置项显示为已创建,则表示您当前账号下已创建了该角色,无需重复创建。

    5. 返回VPN网关页面,查看创建的VPN网关并记录VPN网关公网IP地址,用于后续本地IDC侧路由配置。

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

  2. 创建用户网关。

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

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

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

      • 名称:输入用户网关的名称。

      • IP地址:输入VPC2要连接的本地IDC的网关设备的公网IP。本示例输入211.XX.XX.68。

      • 自治系统号:本地IDC网关设备的自治系统号。本示例无需配置该参数。

      • 描述:输入用户网关的描述信息。

  3. 创建IPsec连接。

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

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

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

      • 名称:输入IPsec连接的名称。

      • 绑定资源:选择IPsec连接绑定的资源类型。本示例选择VPN网关

      • VPN网关:选择已创建的VPN网关。

      • 用户网关:选择已创建的用户网关。

      • 路由模式:选择路由模式。本示例选择目的路由模式

      • 立即生效:选择是否立即生效。本示例选择

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

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

      • 预共享密钥:输入共享密钥,本地IDC网关设备的预共享密钥必须与该值一致。本示例使用默认生成的随机值。

      • 加密配置:本文使用IKEv1版本,其余选项使用默认配置。

      更多信息,请参见创建和管理IPsec连接(单隧道模式)

  4. 配置VPN网关路由。

    您需要在VPN网关中将本地IDC的路由发布到VPC2中。

    1. IPsec连接创建成功后,在创建成功对话框,单击确定,去往VPN网关实例中进行路由发布。

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

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

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

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

      • 目标网段:输入本地IDC的网段。本示例输入172.16.0.0/16。

      • 下一跳类型:选择IPsec连接

      • 下一跳:选择已创建的IPsec连接实例。

      • 发布到专有网络:选择是否将新添加的路由发布到VPC2路由表。本示例选择

      • 权重:选择路由的权重值。本示例使用默认值100,表示高优先级。

        说明

        若VPN网关中存在相同目标网段的目的路由,目的路由的权重值不支持同时设置为100。

  5. 在本地IDC网关设备中加载VPN配置。

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

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

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

步骤三:配置云企业网

VBR和VPN网关配置完成后,您需要将VPC1、VPC2和VBR加入到云企业网中,云企业网可帮您实现本地IDC和VPC1间的互连互通。

  1. 创建云企业网实例。

    1. 登录云企业网管理控制台

    2. 云企业网实例页面,单击创建云企业网实例

    3. 创建云企业网实例对话框,根据以下信息配置云企业网实例,然后单击确认

      • 名称:输入云企业网实例的名称。

      • 描述:输入云企业网实例的描述信息。

  2. 创建转发路由器实例。

    在VPC实例和VBR实例所属的地域创建转发路由器实例,用于将VPC实例和VBR实例连接至云企业网。

    1. 云企业网实例页面,找到目标云企业网实例,单击目标实例ID。

    2. 基本信息 > 转发路由器页签,单击创建转发路由器

    3. 创建转发路由器对话框,配置转发路由器实例信息,然后单击确认

      请根据下表信息在华东1(杭州)创建转发路由器实例。

      配置项

      说明

      华东1(杭州)

      地域

      选择转发路由器实例所属的地域。

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

      版本

      转发路由器实例的版本。

      系统自动判断并显示当前地域下转发路由器实例的版本。

      开通组播

      选择是否打开转发路由器实例的组播功能。

      本文保持默认值,即不打开组播功能。

      名称

      输入转发路由器实例的名称。

      请自定义转发路由器实例的名称。

      描述

      输入转发路由器实例的描述信息。

      请自定义转发路由器实例的描述信息。

      TR地址段

      输入转发路由器地址段。

      更多信息,请参见转发路由器地址段

      本文不输入转发路由器地址段。

  3. 在云企业网实例中加载VPC1和VPC2。

    1. 云企业网实例页面,找到目标云企业网实例,单击目标实例ID。

    2. 基本信息 > 转发路由器页签,找到华东1(杭州)地域的转发路由器实例,在操作单击创建网络实例连接

    3. 连接网络实例页面,根据以下信息进行配置,然后单击确定创建

      下表罗列了各个配置项的说明以及VPC1、VPC2对应的参数值,请依据下表中的数据,分别将VPC1和VPC2连接至转发路由器实例。

      说明

      在首次连接VPC实例时,系统会自动为您创建一个服务关联角色,角色名称为AliyunServiceRoleForCEN。该角色将允许转发路由器实例在VPC的交换机上创建ENI。更多信息,请参见AliyunServiceRoleForCEN

      配置项

      配置项说明

      VPC1

      VPC2

      实例类型

      选择待连接的网络实例类型。

      专有网络(VPC)

      专有网络(VPC)

      地域

      选择待连接的网络实例所在的地域。

      华东1(杭州)

      华东1(杭州)

      转发路由器

      系统自动显示该地域下已创建的转发路由器实例ID。

      资源归属UID

      选择待连接的网络实例所属的账号类型。

      同账号

      同账号

      付费方式

      默认值按量付费

      按量计费规则,请参见计费说明

      连接名称

      输入网络实例连接的名称。

      VPC1-test

      VPC2-test

      网络实例

      选择待连接的网络实例。

      选择VPC1

      选择VPC2

      交换机

      在转发路由器支持的可用区选择交换机实例。

      • 如果转发路由器在当前地域仅支持一个可用区,则您需要在当前可用区选择一个交换机实例。

      • 如果转发路由器在当前地域支持多个可用区,则您需要在至少2个可用区中各选择一个交换机实例。在VPC和转发路由器流量互通的过程中,这2个交换机实例可以实现可用区级别的容灾。

        推荐您在每个可用区中都选择一个交换机实例,以减少流量绕行,体验更低传输时延以及更高性能。

      请确保选择的每个交换机实例下拥有一个空闲的IP地址。如果VPC实例在转发路由器支持的可用区中并没有交换机实例或者交换机实例下没有空闲的IP地址,您需要新建一个交换机实例。 具体操作,请参见创建和管理交换机

      更多信息,请参见创建VPC连接

      在华东1(杭州)可用区H和可用I各选择一个交换机实例。

      在华东1(杭州)可用区H和可用I各选择一个交换机实例。

      高级配置

      系统默认帮您选中以下三种高级功能。您可以依据实际需求取消选中一个或多个配置项。

      VPC1和VPC2均保持默认配置,即选中全部高级配置项。

      • 自动关联至转发路由器的默认路由表

        开启本功能后,VPC连接会自动关联至转发路由器的默认路由表,转发路由器通过查询默认路由表转发VPC实例的流量。

      • 自动传播系统路由至转发路由器的默认路由表

        开启本功能后,VPC实例会将自身的系统路由传播至转发路由器的默认路由表中,用于网络实例的互通。

      • 自动为VPC的所有路由表配置指向转发路由器的路由

        开启本功能后,系统将在VPC实例的所有路由表内自动配置10.0.0.0/8、172.16.0.0/12、192.168.0.0/16三条路由条目,其下一跳均指向VPC连接,用于引导VPC实例的IPv4流量进入转发路由器。转发路由器默认不向VPC实例传播路由。

        重要
        • 如果VPC的路由表中已经存在目标网段为10.0.0.0/8、172.16.0.0/12或192.168.0.0/16的路由条目,则系统无法再自动下发该路由条目,您需要在VPC路由表中手动添加指向VPC连接的路由条目以实现VPC和转发路由器之间的流量互通。

          您可以单击发起路由检查查看网络实例内是否存在上述路由。

        • 如果VPC实例需要实现IPv6网络通信,创建VPC连接后,您需要为VPC连接开启路由同步功能或者在VPC实例的路由表中手动添加指向VPC连接的IPv6路由条目,VPC实例的IPv6流量才能进入转发路由器。

  4. 在云企业网实例中加载VBR实例。

    1. 云企业网实例页面,找到目标云企业网实例,单击目标实例ID。

    2. 基本信息 > 转发路由器页签,找到华东1(杭州)地域的转发路由器实例,在操作单击创建网络实例连接

    3. 连接网络实例页面,根据以下信息进行配置,然后单击确定创建

      • 实例类型:选择边界路由器(VBR)

      • 地域:选择待连接的网络实例所在的地域。本示例选择华东1(杭州)

      • 转发路由器:系统自动显示当前地域已创建的转发路由器实例ID。

      • 资源归属UID:选择待连接的网络实例所属的账号类型。本示例使用默认值同账号

      • 连接名称:输入网络实例连接名称。本示例输入VBR

      • 网络实例:选择待连接的网络实例ID。本示例选择VBR实例。

      • 高级配置:系统默认帮您选中以下三种高级功能。本示例保持默认配置。

        • 自动关联至转发路由器的默认路由表

          开启本功能后,VBR连接会自动关联至转发路由器的默认路由表,转发路由器通过查询默认路由表转发VBR实例的流量。

        • 自动传播系统路由至转发路由器的默认路由表

          VBR实例会将自身的系统路由传播至转发路由器的默认路由表中,用于网络实例的互通。

        • 自动发布路由到VBR

          开启本功能后,系统自动将VBR连接关联的转发路由器路由表中的路由发布到VBR实例中。

  5. 发布VPC2中的本地IDC路由至云企业网。

    您在VPN网关中将本地IDC路由发布到VPC2中后,VPC2中本地IDC的路由默认是未发布状态。您需要手动将VPC2中的本地IDC路由发布到云企业网中,以便VPC1也能从VPC2学习到本地IDC的路由。

    1. 登录云企业网管理控制台

    2. 云企业网实例页面,找到目标云企业网实例,单击实例ID。

    3. 在云企业网实例详情页面,找到华东1(杭州)地域的转发路由器实例,单击实例ID。

    4. 在转发路由器实例详情页面,单击网络实例路由信息页签。

    5. 网络实例路由信息页签下,选择查看VPC2网络实例的路由条目,找到本地IDC的路由,在发布状态列单击发布

    6. 发布路由对话框,单击确认

  6. 为物理专线配置健康检查。

    您需要为物理专线配置健康检查,健康检查会以您指定的发包时间间隔发送探测报文,当连续发送的所有探测报文(即您指定的探测报文个数)都丢包时,云企业网会主动将流量切换到IPsec-VPN链路。

    1. 登录云企业网管理控制台

    2. 在左侧导航栏,单击健康检查

    3. 健康检查页面,选择VBR的地域,然后单击设置健康检查

    4. 设置健康检查对话框,根据以下信息配置健康检查,然后单击确认

      • 云企业网实例:选择VBR加载的云企业网实例。

      • 边界路由器(VBR):选择要监控的VBR实例。

      • 源IP:本示例选择自动生成源IP

        使用自动生成源IP,系统将自动分配100.96.0.0/16地址段内的IP地址,探测链路的连通性。

      • 目标IP:输入VBR实例中客户侧IP地址。

      • 发包时间间隔(秒):指定健康检查时发送连续探测报文的时间间隔。单位:秒。本示例使用默认值。

      • 探测报文个数(个):指定健康检查时发送探测报文的个数。单位:个。本示例使用默认值。

      • 切换路由:是否开启健康检查的路由切换功能。本示例保持默认值,即开启路由切换功能。

        系统默认选择开启本功能。健康检查探测到物理专线链路故障时,如果云企业网实例中存在冗余的路由,健康检查则会立刻触发路由切换使用可用链路。

        若您关闭本功能,健康检查仅执行链路探测功能。若健康检查探测到物理专线链路故障,并不会触发路由切换。

        警告

        若您选择关闭本功能,请确保您有其他方式保证链路的冗余性,否则当物理专线链路故障后,会导致网络中断。

步骤四:配置本地IDC网关设备

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


#配置BGP动态路由协议,与VBR建立BGP邻居关系,同时宣告本地IDC私网网段至云上
interface GigabitEthernet 0/12          #该端口为本地IDC网关设备与物理专线连接的端口
no switchport
ip address 10.1.0.2 255.255.255.252     #端口的IP地址,需和VBR客户侧IPv4互联IP地址一致

router bgp 65530
bgp router-id 10.1.0.2                  
network 172.16.0.0 mask 255.255.0.0     #宣告本地IDC私网网段
neighbor 10.1.0.1 remote-as 45104       #和VBR建立BGP邻居关系
exit

#配置通过VPN网关去往VPC1的静态路由,使其优先级低于BGP路由
ip route 192.168.0.0 255.255.0.0 <VPN网关公网IP地址> preference 255
      
#配置健康检查探测报文的回程路由
ip route <健康检查源IP地址> 255.255.255.255 10.1.0.1  
            

步骤五:测试连通性

  1. 在本地IDC下,打开客户端的命令行窗口。

  2. 执行ping命令,访问云上VPC1 192.168.0.0/16网段下的ECS实例IP地址,如果接收到回复报文,则表示本地IDC和VPC1连接成功。

  3. 在本地IDC网关设备上,关闭连接物理专线的端口,切断物理专线连接。在客户端再次执行ping命令,测试本地IDC和VPC1的连通性,如果接收到回复报文,则表示备份VPN链路可用。