华为数通 | VRRP负载分担与网关冗余实验:主备切换+流量分流,企业高可用网络实战

一次搞定VRRP多网关、负载分担、故障自动切换,让你的网络永不断线

前言

在企业园区网中,终端设备的网关往往是单一设备,一旦该设备出现故障,整个网段的设备就会断网。为了解决这个问题,VRRP(虚拟路由冗余协议)应运而生。但仅仅实现主备还不够,我们希望两台网关设备能够同时承载流量,实现负载分担,同时又能相互备份。本实验通过VRRP多组配置,让SW1成为VLAN 10的主网关、VLAN 20的备份网关,SW2成为VLAN 20的主网关、VLAN 10的备份网关,从而实现流量分流和冗余备份。此外,上层AR1通过等价路由(ECMP)实现链路负载,构建一个完整的高可用园区网。


一、实验拓扑

拓扑说明

  • AR1 :模拟企业出口路由器,Loopback0地址1.1.1.1/24用于测试。

  • SW1:三层交换机,VLAN 10主网关(VRRP优先级120),VLAN 20备份网关(优先级100)。

  • SW2:三层交换机,VLAN 20主网关(VRRP优先级120),VLAN 10备份网关(优先级100)。

  • SW3:二层交换机,仅做VLAN透传,连接PC1(VLAN 10)和PC2(VLAN 20)。

  • PC1 :VLAN 10,网关为虚拟IP 10.0.10.254

  • PC2 :VLAN 20,网关为虚拟IP 10.0.20.254

IP地址规划

设备 接口 IP地址 所属VLAN 说明
AR1 G0/0/0 10.0.12.1/24 - 连接SW1
AR1 G0/0/1 10.0.13.1/24 - 连接SW2
AR1 Loopback0 1.1.1.1/24 - 测试地址
SW1 Vlanif12 10.0.12.2/24 12 三层互联
SW1 Vlanif10 10.0.10.1/24 10 VRRP组10 Master
SW1 Vlanif20 10.0.20.1/24 20 VRRP组20 Backup
SW2 Vlanif13 10.0.13.2/24 13 三层互联
SW2 Vlanif20 10.0.20.2/24 20 VRRP组20 Master
SW2 Vlanif10 10.0.10.2/24 10 VRRP组10 Backup
PC1 - 10.0.10.10/24 10 网关10.0.10.254
PC2 - 10.0.20.20/24 20 网关10.0.20.254

二、实验需求

  1. 不同VLAN隔离:PC1和PC2分别属于VLAN 10和VLAN 20,二层隔离。

  2. 网关冗余 :SW1和SW2同时作为终端设备的网关,VRRP虚拟IP分别为10.0.10.25410.0.20.254

  3. 负载分担:SW1作为VLAN 10的主网关,SW2作为VLAN 20的主网关,实现流量分流。

  4. 互为备份:当主网关故障时,备份网关自动接管,保证网络不中断。

  5. 上行冗余:AR1通过等价路由(ECMP)分别指向SW1和SW2,实现上行链路负载和备份。

  6. 全网互通 :PC1和PC2能够相互通信,且都能访问AR1的Loopback地址1.1.1.1


三、需求分析

1. VRRP负载分担设计

  • 在SW1和SW2上分别创建两个VRRP组:组10(虚拟IP 10.0.10.254)和组20(虚拟IP 10.0.20.254)。

  • SW1在组10中优先级设为120(高于SW2的100),成为VLAN 10的Master;在组20中优先级设为100(低于SW2的120),成为VLAN 20的Backup。

  • SW2则相反:组20优先级120(Master),组10优先级100(Backup)。

  • 这样,VLAN 10的流量主走SW1,VLAN 20的流量主走SW2,实现负载分担。

2. 抢占与延迟

  • 配置抢占模式,并设置延迟5秒,避免网络抖动导致频繁切换。

3. 上行路由

  • SW1和SW2各自配置默认路由指向AR1(SW1走10.0.12.1,SW2走10.0.13.1)。

  • AR1配置回程静态路由,使用等价路由(ECMP)将目的网段10.0.10.0/2410.0.20.0/24同时指向SW1和SW2,实现上行链路负载和冗余。

4. 二层透传

  • SW3作为纯二层交换机,创建VLAN 10和20,上行接口配置Trunk允许VLAN 10和20通过,连接PC的接口配置Access。

四、设备配置详解

1. 出口路由器 AR1

AR1主要提供上行连接和回程路由。

复制代码
sysname AR1
#
interface LoopBack0
 ip address 1.1.1.1 255.255.255.0
#
interface GigabitEthernet0/0/0
 ip address 10.0.12.1 255.255.255.0
#
interface GigabitEthernet0/0/1
 ip address 10.0.13.1 255.255.255.0
#
# 等价路由(ECMP),实现负载分担和链路备份
ip route-static 10.0.10.0 255.255.255.0 10.0.12.2
ip route-static 10.0.10.0 255.255.255.0 10.0.13.2
ip route-static 10.0.20.0 255.255.255.0 10.0.12.2
ip route-static 10.0.20.0 255.255.255.0 10.0.13.2

说明

  • 两条等价路由使AR1访问10.0.10.0/24时,可以负载分担到SW1或SW2。当其中一条链路故障时,另一条仍可正常工作。

2. 三层交换机 SW1(VLAN 10 主网关)

复制代码
sysname LSW1
#
vlan batch 10 12 20
#
# 连接 AR1(Access VLAN 12)
interface GigabitEthernet0/0/1
 port link-type access
 port default vlan 12
#
# 连接 LSW3(Trunk,允许 VLAN 10 20)
interface GigabitEthernet0/0/23
 port link-type trunk
 port trunk allow-pass vlan 10 20
#
# VLAN 12 三层接口(与 AR1 互联)
interface Vlanif12
 ip address 10.0.12.2 255.255.255.0
#
# VLAN 10 三层接口(VRRP 主网关)
interface Vlanif10
 ip address 10.0.10.1 255.255.255.0
 vrrp vrid 10 virtual-ip 10.0.10.254
 vrrp vrid 10 priority 120
 vrrp vrid 10 preempt-mode timer delay 5
#
# VLAN 20 三层接口(VRRP 备份网关)
interface Vlanif20
 ip address 10.0.20.1 255.255.255.0
 vrrp vrid 20 virtual-ip 10.0.20.254
 vrrp vrid 20 priority 100
#
# 默认路由指向 AR1
ip route-static 0.0.0.0 0.0.0.0 10.0.12.1

说明

  • VRRP组10优先级120,高于SW2的100,因此SW1成为Master,负责转发VLAN 10的流量。

  • VRRP组20优先级100,低于SW2的120,因此SW1成为Backup,仅在SW2故障时接管。


3. 三层交换机 SW2(VLAN 20 主网关)

复制代码
sysname LSW2
#
vlan batch 10 13 20
#
# 连接 AR1(Access VLAN 13)
interface GigabitEthernet0/0/1
 port link-type access
 port default vlan 13
#
# 连接 LSW3(Trunk,允许 VLAN 10 20)
interface GigabitEthernet0/0/24
 port link-type trunk
 port trunk allow-pass vlan 10 20
#
# VLAN 13 三层接口(与 AR1 互联)
interface Vlanif13
 ip address 10.0.13.2 255.255.255.0
#
# VLAN 20 三层接口(VRRP 主网关)
interface Vlanif20
 ip address 10.0.20.2 255.255.255.0
 vrrp vrid 20 virtual-ip 10.0.20.254
 vrrp vrid 20 priority 120
 vrrp vrid 20 preempt-mode timer delay 5
#
# VLAN 10 三层接口(VRRP 备份网关)
interface Vlanif10
 ip address 10.0.10.2 255.255.255.0
 vrrp vrid 10 virtual-ip 10.0.10.254
 vrrp vrid 10 priority 100
#
# 默认路由指向 AR1
ip route-static 0.0.0.0 0.0.0.0 10.0.13.1

说明

  • 与SW1配置对称,VRRP组20为主,组10为备。

4. 二层交换机 SW3(纯透传)

复制代码
sysname LSW3
#
vlan batch 10 20
#
# 连接 SW1(Trunk)
interface GigabitEthernet0/0/23
 port link-type trunk
 port trunk allow-pass vlan 10 20
#
# 连接 SW2(Trunk)
interface GigabitEthernet0/0/24
 port link-type trunk
 port trunk allow-pass vlan 10 20
#
# 连接 PC1(Access VLAN 10)
interface GigabitEthernet0/0/1
 port link-type access
 port default vlan 10
#
# 连接 PC2(Access VLAN 20)
interface GigabitEthernet0/0/2
 port link-type access
 port default vlan 20

说明

  • SW3不需要三层功能,仅做VLAN透传,将上行两个Trunk端口和下行Access端口连接起来。

5. PC配置

设备 IP地址 子网掩码 网关
PC1 10.0.10.10 255.255.255.0 10.0.10.254
PC2 10.0.20.20 255.255.255.0 10.0.20.254

注意:网关地址为VRRP虚拟IP,而不是物理接口IP。


五、结果验证

1. 查看VRRP状态

在SW1上查看VRRP组10和组20的状态
复制代码
[LSW1]display vrrp brief
VRID  State        Interface                Type     Virtual IP
----------------------------------------------------------------
10    Master       Vlanif10                 Normal   10.0.10.254
20    Backup       Vlanif20                 Normal   10.0.20.254
在SW2上查看
复制代码
[LSW2]display vrrp brief
VRID  State        Interface                Type     Virtual IP
----------------------------------------------------------------
10    Backup       Vlanif10                 Normal   10.0.10.254
20    Master       Vlanif20                 Normal   10.0.20.254

分析:符合预期,SW1为组10的Master,SW2为组20的Master。

2. 测试负载分担

PC1 ping AR1的Loopback地址
复制代码
PC1> ping 1.1.1.1
PING 1.1.1.1: 56 data bytes, press CTRL_C to break
  Reply from 1.1.1.1: bytes=56 Sequence=1 ttl=254 time=30 ms

在SW1上抓包,可以看到PC1的流量经过SW1转发(因为PC1的网关虚拟IP的Master是SW1)。

PC2 ping AR1的Loopback地址
复制代码
PC2> ping 1.1.1.1
PING 1.1.1.1: 56 data bytes, press CTRL_C to break
  Reply from 1.1.1.1: bytes=56 Sequence=1 ttl=254 time=30 ms

在SW2上抓包,PC2的流量经过SW2转发。说明负载分担生效。

3. 测试互通性

PC1 ping PC2
复制代码
PC1> ping 10.0.20.20
PING 10.0.20.20: 56 data bytes, press CTRL_C to break
  Reply from 10.0.20.20: bytes=56 Sequence=1 ttl=126 time=20 ms

分析 :PC1的网关是SW1(Master of VLAN10),PC2的网关是SW2(Master of VLAN20)。PC1发送数据到PC2时,先经过SW1,SW1查路由表知道10.0.20.0/24可通过SW2到达(因为AR1上有等价路由,但SW1到PC2的路径是:SW1→AR1→SW2→PC2?实际上,由于SW1和SW2之间没有直接的三层链路,它们需要通过AR1转发。但AR1上配置了到两个网段的等价路由,所以流量会走AR1中转。这是合理的,因为实验中没有在SW1和SW2之间直接运行路由协议。如果需要更优路径,可以在SW1和SW2之间增加三层链路并运行OSPF,但本实验重点在VRRP,当前设计已满足功能。)

4. 故障切换测试

模拟SW1故障(关闭SW1的Vlanif10接口或断电)

在SW1上执行:

复制代码
[LSW1]interface Vlanif10
[LSW1-Vlanif10]shutdown

然后查看SW2上的VRRP状态:

复制代码
[LSW2]display vrrp brief
VRID  State        Interface                Type     Virtual IP
----------------------------------------------------------------
10    Master       Vlanif10                 Normal   10.0.10.254
20    Master       Vlanif20                 Normal   10.0.20.254

此时SW2同时成为组10和组20的Master。PC1继续ping 1.1.1.1,观察丢包情况(由于VRRP抢占延迟5秒,可能会丢几个包,但很快恢复)。

恢复SW1的接口后,等待抢占延迟5秒,SW1重新成为组10的Master。

结果:高可用性验证通过。

5. 上行链路冗余测试

关闭AR1的G0/0/0接口(连接SW1的链路):

复制代码
[AR1]interface GigabitEthernet0/0/0
[AR1-GigabitEthernet0/0/0]shutdown

此时PC1(VLAN10)的主网关SW1的上行链路中断,但VRRP状态未变(因为VRRP检测的是网关设备本身是否存活,而不是上行链路)。然而PC1访问外部网络会受影响。但PC2(VLAN20)的流量仍正常,因为SW2的上行链路正常。这体现了部分故障情况下的部分可用性。

若要实现上行链路故障也触发VRRP切换,需要配置VRRP联动接口跟踪(track),本实验未涉及,可作为扩展思考。


六、技术要点总结

1. VRRP工作原理

  • VRRP将多台路由器虚拟成一台,使用虚拟IP作为终端网关。

  • Master负责转发报文,Backup监听Master状态。

  • 优先级(1-255)决定Master选举,数值越大越优先。

  • 抢占模式:Backup发现优先级更高的Master出现时,可重新抢占成为Master。

2. 负载分担实现

  • 通过创建多个VRRP组,在不同设备上设置不同的优先级,使不同VLAN的流量主走不同设备。

  • 要求终端网关配置为各自VLAN对应的虚拟IP。

3. 三层交换机与二层交换机配合

  • 三层交换机(SW1/SW2)配置VLAN接口(SVI),实现网关功能。

  • 二层交换机(SW3)仅做VLAN透传,不参与路由。

4. 上行等价路由(ECMP)

  • AR1配置多条等价的静态路由,实现流量的负载分担和链路备份。

  • 当一条链路故障时,路由表会自动切换到另一条(静态路由本身没有检测机制,但接口down会导致路由失效,从而只剩有效路由)。

5. 常见优化

  • 抢占延迟:避免网络不稳定时频繁切换。

  • 接口跟踪:监控上行接口状态,当上行链路故障时主动降低优先级,让备设备接管。

  • BFD联动:实现毫秒级故障检测。


七、排错与常见问题

问题现象 可能原因 解决方法
VRRP邻居无法建立 虚拟IP配置不一致、接口不在同一VLAN 检查虚拟IP是否相同,检查二层连通性
主设备故障后不切换 未配置抢占、抢占延迟过长 检查preempt-mode配置
PC无法ping通网关 网关地址写错、VLAN未正确划分 检查PC网关是否为虚拟IP,检查Access VLAN
上行等价路由不生效 目的网段掩码错误、下一跳不可达 检查静态路由配置,确保下一跳接口UP
跨VLAN通信失败 缺少回程路由、VRRP网关未启用转发 检查AR1上的回程路由,检查交换机是否开启ip routing

八、实验总结

本实验通过VRRP多组配置,成功实现了VLAN 10和VLAN 20的网关负载分担和相互备份。结合上层AR1的等价路由,构建了一个高可用的园区网络架构。通过验证,我们掌握了以下技能:

  • VRRP的基本配置和主备选举规则。

  • 如何利用VRRP实现流量负载分担。

  • 二层交换机与三层交换机的协同工作。

  • 静态等价路由的应用场景。

在实际企业网络中,这种设计可以避免单点故障,提高网络可靠性,同时充分利用设备资源。希望本实验报告能帮助你深入理解VRRP协议及其在企业网中的应用。


作者:CSDN博主 盐真卿

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

相关推荐
isyangli_blog2 小时前
4、sdn 网络性能的测试与验证
网络
qq_260241232 小时前
将盾CDN:网络安全情报共享的实践与挑战
网络·安全·web安全
麒麟ZHAO2 小时前
鸿蒙flutter第三方库适配 - 实时天气查询
flutter·华为·harmonyos
攻城狮在此2 小时前
华为企业网二层交换、三层交换、出口路由组网配置案例(OSPF动态路由)
网络·架构
七夜zippoe2 小时前
OpenClaw 多代理协作编排:构建企业级智能协作网络
网络·工作流·openclaw·多代理协作·对等协作
会员果汁4 小时前
网络工程-路由策略概述
网络
mounter62510 小时前
【硬核前沿】CXL 深度解析:重塑数据中心架构的“高速公路”,Linux 内核如何应对挑战?-- CXL 协议详解与 LSF/MM 最新动态
linux·服务器·网络·架构·kernel
autumn200512 小时前
Flutter 框架跨平台鸿蒙开发 - 虚拟纪念馆
flutter·华为·harmonyos
ACP广源盛1392462567312 小时前
破局 Type‑C 切换器痛点@ACP#GSV6155+LH3828/GSV2221+LH3828 黄金方案
c语言·开发语言·网络·人工智能·嵌入式硬件·计算机外设·电脑