可将IPsec-VPN连接设为物理专线的备用线路,增强云上云下互通的稳定性和冗余能力。
场景示例
本文以下图场景为例,通过搭建物理专线和IPsec-VPN连接,实现物理专线与IPsec-VPN连接互为主备冗余。
其中专线路由使用BGP方式,IPsec-VPN连接使用BGP或静态方式。
资源规划
阿里云侧资源规划:
VPC:网段为10.0.0.0/16,地域在 德国(法兰克福)。
虚拟交换机1: 10.0.0.0/24,其中部署1台ECS,IP地址为 10.0.0.1,用于连通性验证。
虚拟交换机2: 10.0.1.0/24。
TR:创建CEN,并在德国(法兰克福)地域创建了1台TR,地址段为10.3.0.0/24。
ECR:ASN号为65001。
VBR:创建物理端口连通本地网关设备,并基于此端口创建VBR。
阿里云侧IPv4互联IP:10.1.0.1。
客户侧IPv4互联IP:10.1.0.2。
IPv4子网掩码:255.255.255.252。
IPsec连接:
若选择使用BGP,那么BGP配置为:
隧道1: 隧道网段169.254.10.0/30,本端BGP地址169.254.10.1。
隧道2: 隧道网段169.254.20.0/30,本端BGP地址169.254.20.1。
云侧ASN:65001。
本地IDC侧资源规划:
本地网段:172.16.0.0/16 ,其中部署了1台服务器为172.16.0.1,用于连通性验证。
本地网关设备:
通过物理专线和阿里云建立连接,连接专线的网口IP地址:10.1.0.2。
支持IPsec-VPN功能。如果选择使用BGP,那么BGP配置为:
隧道1: 隧道网段169.254.10.0/30,本端BGP地址169.254.10.2。
隧道2: 隧道网段169.254.20.0/30,本端BGP地址169.254.20.2。
如果IPsec连接使用静态路由,请确保本地网关设备支持静态ECMP路由。因绑定TR时云到本地IDC两条IPsec隧道自动形成ECMP链路,若本地IDC到云的流量不支持ECMP,会导致传输路径不对称。
公网出口为单出口,IP为 3.3.XX.XX。此公网出口IP用于建立IPsec-VPN连接。
本地侧ASN:65002。
一、创建资源
二、连通物理专线
1. 连通TR与VPC
前往CEN控制台,在刚刚创建的TR的操作列,单击创建网络实例连接 > 创建地域内连接,创建VPC连接:
实例类型:VPC
地域:德国(法兰克福)
网络实例:选择刚刚创建的VPC。
高级配置:保持默认3项全部勾选。
2. 连通TR、ECR、VBR
默认情况下,建议您使用ECR连通TR和VBR,可获得更低时延、更大带宽,以及更灵活的路由控制能力,详见专线网关ECR。
根据是否使用ECR,分为如下2种场景:
使用ECR(推荐)
前往ECR列表页,单击刚刚创建的ECR实例ID,进入ECR详情页。
在VBR页签,单击添加VBR:
地域:德国(法兰克福)。
网络实例:选择目标VBR。
在TR页签,单击关联转发路由器:
CEN ID:选择目标CEN实例。
地域:德国(法兰克福)。
允许的前缀路由:选择默认的匹配模式,且下方的文本框保持为空。前缀路由的详细说明见通过专线网关ECR发布指定前缀路由。
不使用ECR
不使用ECR,即将TR直连VBR,操作步骤如下。
在目标TR的操作列,单击创建网络实例连接 > 创建地域内连接:
实例类型:边界路由器(VBR)。
地域:德国(法兰克福)。
网络实例:选择目标VBR实例。
高级配置:保持默认三个选项开启。
3. VBR开启BGP
前往VBR列表页,切换到德国(法兰克福)地域,单击刚刚创建的VBR实例ID,进入详情页。
在BGP组页签,单击创建BGP组,Peer AS号填写对端IDC侧的ASN,即65002。
在BGP邻居页签,单击创建BGP邻居,BGP组选择刚刚创建的BGP组,BGP邻居IP填写客户侧IPv4互联IP 10.1.0.2。
稍等1-5分钟,确认刚刚创建的BGP邻居的BGP邻居底层状态列显示为已建立。
4. 检查路由
完成上述连通与BGP配置后,VPC和IDC之间可以自动传播路由,请依次检查各资源的路由表中存在如下条目:
VPC路由表
目标网段
下一跳资源
路由条目来源
10.0.0.0/8
TR
创建VPC连接时系统自动添加(创建时,勾选了自动为VPC的所有路由表配置指向转发路由器的路由)
172.16.0.0/12
TR
创建VPC连接时系统自动添加
192.168.0.0/16
TR
创建VPC连接时系统自动添加
TR路由表
目标网段
下一跳资源
路由条目来源
10.0.0.0/24
VPC
10.0.1.0/24
VPC
172.16.0.0/16
ECR(若没使用ECR,则此处为VBR)
ECR路由表
目标网段
下一跳资源
路由条目来源
10.0.0.0/24
TR
10.0.1.0/24
TR
172.16.0.0/16
VBR
BGP自动传播
VBR路由表
目标网段
下一跳资源
路由条目来源
10.0.0.0/24
ECR
ECR自动传播
10.0.1.0/24
ECR
ECR自动传播
172.16.0.0/16
物理端口
BGP自动传播
若没有使用ECR,那么10.0.0.0/24和10.0.1.0/24的下一跳资源都为TR,路由条目来源为TR路由同步。
本地网关设备路由表。
目标网段
下一跳资源
路由条目来源
10.0.0.0/24
连接物理专线的网口
BGP自动传播
10.0.1.0/24
连接物理专线的网口
BGP自动传播
5. 验证连通性
登录VPC内的ECS(10.0.0.1),执行ping命令验证与本地IDC服务器(172.16.0.1)的连通性,若能ping通,则证明已连通。
ping 172.16.0.1三、连通IPsec-VPN
1. 创建用户网关
前往用户网关页面,单击创建用户网关:
IP地址:填写本地网关设备的公网出口IP 3.3.XX.XX。
自治系统号:填写本地IDC的ASN 65002。
2. 创建IPsec连接
在 VPN 网关控制台左侧导航栏,单击IPsec连接。
单击绑定云企业网,配置 IPsec 连接基本参数:
IPsec连接名称:填写资源名称,例如 ipsec-demo。
地域:选择德国(法兰克福)。
网关类型:选择公网。
绑定云企业网:选择本账号绑定
绑定资源:选择转发路由器。
云企业网实例ID:选择已经创建的云企业网CEN实例。
路由模式:选择目的路由模式。
立即生效:选择是,配置完成后立即进行协商,阿里云侧会主动向对端发起协商。
高级配置(包含自动关联路由表、配置转发路由等配置):全部勾选,包括自动发布路由、自动关联至转发路由器的默认路由表、自动传播系统路由至转发路由器的默认路由表。
配置隧道参数:
隧道 1(主):
用户网关:选择第1步创建的用户网关。
预共享密钥:两端约定好的密码,用于建立隧道时互相验证身份。建议使用复杂密码,云上云下填写必须完全一致。
隧道 2(备):
用户网关:选择与隧道 1 相同的用户网关(本场景 IDC 只有 1 个公网出口)。
预共享密钥:本文使用与隧道 1 相同的密钥。
加密配置中的其余参数保持默认值即可。如需手动指定算法,可展开加密配置进行修改。
3. 配置本地网关设备。
请咨询网关设备厂商进行操作配置,部分设备的示例参考:本地网关设备配置示例。
最终目标为IPsec连接详情页的两条隧道的连接状态列显示为:第二阶段协商成功和BGP正常。
如果IPsec连接使用静态路由,请确保本地网关支持静态ECMP路由。因绑定TR时云到本地IDC两条IPsec隧道自动形成ECMP链路,若本地IDC到云的流量不支持ECMP,会导致传输路径不对称。
4. 检查路由
完成上述配置后,各个资源的路由变化如下:
TR路由表
新增2条候选条目:
目标网段
下一跳资源
路由状态
路由条目来源
10.0.0.0/24
VPC
可用
10.0.1.0/24
VPC
可用
172.16.0.0/16
ECR(若没使用ECR,则此处为VBR)
可用
172.16.0.0/16
IPsec连接
候选
172.16.0.0/16
IPsec连接
候选
IPsec连接路由表
目标网段
下一跳资源
路由条目来源
10.0.0.0/24
TR
TR路由同步
10.0.1.0/24
TR
TR路由同步
172.16.0.0/16
IPsec隧道1
BGP
172.16.0.0/16
IPsec隧道2
BGP
如果IPsec连接不使用BGP,那么需手动在IPsec链接路由表中添加路由:目标网段172.16.0.0/16,下一跳为IPsec隧道。
本地网关设备路由表
新增下一跳是IPsec连接的路由条目:
目标网段
下一跳资源
路由条目来源
10.0.0.0/24
连接物理专线的网口
BGP自动传播
10.0.1.0/24
连接物理专线的网口
BGP自动传播
10.0.0.0/24
IPsec连接
BGP自动传播
10.0.1.0/24
IPsec连接
BGP自动传播
如果IPsec连接不使用BGP,那么需手动在IPsec链接路由表中添加路由:目标网段为10.0.0.0/24和10.0.1.0/24,下一跳为IPsec连接。
四、主备链路配置
出云流量主备选择(阿里云侧配置)
根据TR路由优先级,TR从VBR实例或ECR实例学习到的路由,优先级大于IPsec连接。故无需多余配置,出云流量优先选择专线。
入云流量主备选择(本地IDC侧配置)
需要设置路由优先级:
IPsec连接使用BGP路由时,优先级设置为:通过专线学习到的BGP路由 > 通过IPsec连接学习到的BGP路由。
IPsec连接使用静态路由时,优先级设置为:通过专线学习到的BGP路由 > 下一跳为IPsec连接的静态路由。
下面给出思科防火墙ASA(软件版本9.19.1)IPsec连接使用BGP路由时的配置示例。
重要不同软件版本的配置命令可能会有所差异,操作时请根据您的实际环境查询对应文档或咨询相关厂商。以下内容包含的第三方产品信息仅供参考。阿里云对第三方产品的性能、可靠性以及操作可能带来的潜在影响,不做任何暗示或其他形式的承诺。
router bgp 65002 bgp router-id 10.1.0.2 bgp log-neighbor-changes address-family ipv4 unicast network 172.16.0.0 mask 255.255.0.0 neighbor 10.1.0.1 remote-as 65001 neighbor 10.1.0.1 activate neighbor 10.1.0.1 weight 1000 #指定通过物理专线学习到的路由的权重值为1000。 neighbor 169.254.10.1 remote-as 65001 neighbor 169.254.10.1 ebgp-multihop 255 neighbor 169.254.10.1 activate neighbor 169.254.10.1 weight 500 #指定通过IPsec-VPN学习到的路由的权重值为500,这些路由的权重值小于通过物理专线学习到的路由的权重值,确保本地IDC去往VPC的流量优先通过物理专线传输。 exit-address-family
五、切换验证
检查上述路由没问题的情况下,可通过高速通道的故障演练功能,测试冗余链路的可靠性。
开启长ping
在ECS上长ping本地idc的服务器地址,不要关闭。
Linux系统使用:
ping 172.16.0.1。Windows系统使用:
ping -t 172.16.0.1。开启故障演练
通过高速通道产品的故障演练功能,模拟专线故障,模拟时间以5分钟为例。
警告故障演练会通过将被演练的资源关闭,使资源处于人工构造的故障状态,请确保您已经针对可能发生的业务中断做好应对措施。
观察演练开始和结束后的状态变化
长ping的连通情况
演练开始:ping 短暂中断后恢复通信,时延较演练前明显增大,说明流量已自动切换到 IPsec 连接。
演练结束:ping 时延恢复至演练前水平,说明流量已切回专线。
TR上挂载的网络实例连接的流量趋势变化
在目标网络实例连接的监控列,单击对应的监控图标观察指标趋势变化。
演练开始:ECR 连接流量归零,VPN 连接流量上升 —— 表明流量已从专线自动切换至 VPN 备份链路。
演练结束:VPN 连接流量归零,ECR 连接流量恢复 —— 表明流量已从 VPN 自动回切至专线主链路。
TR 路由表条目变化
演练开始:指向 ECR 连接的路由条目被撤回,指向 VPN 连接的路由条目状态由候选变为可用,下一跳切换至 VPN 备份链路。
演练结束:指向 ECR 连接的路由条目重新发布并优先生效,指向 VPN 连接的路由条目回退为候选,下一跳回切至专线主链路。