第118篇:VRRP 虚拟路由冗余协议——主备切换

关键词

VRRP、虚拟路由冗余协议、网关冗余、主备切换、VRRP 优先级、VIP


一、为什么需要 VRRP?

1.1 单网关的痛点

在传统网络中,终端配置一个默认网关。如果网关设备故障,整个网络断连。

PC-A ──── 网关(单点故障)
        192.168.1.1
如果网关故障:
  PC-A 无法访问任何外部网络!

1.2 VRRP 的解决方案

VRRP(Virtual Router Redundancy Protocol,RFC 5798)将多台路由器虚拟成一个网关:

        虚拟网关 IP:192.168.1.1
            │
      ┌─────┴─────┐
    Master       Backup
  192.168.1.2  192.168.1.3
      │             │
      └──────┬──────┘
             │
           PC-A
  终端配置网关 = 192.168.1.1(虚拟 IP)

终端只认虚拟 IP,不关心实际是哪台设备在转发。


二、VRRP 的工作原理

2.1 角色定义

角色 说明
Master 活跃路由器,负责转发流量、响应 ARP
Backup 备份路由器,监控 Master 状态,准备接管
Virtual Router 由 Master + Backup 组成的虚拟路由器
VIP(Virtual IP) 虚拟 IP 地址(终端的网关)

2.2 主备选举

选举依据:VRRP 优先级(0-255),越大越优

选举过程:
  1. 各路由器发送 VRRP 通告(Advertisement)
  2. 优先级最高的成为 Master
  3. 如果优先级相同 → IP 地址最大的成为 Master

Master :
  定期发送 VRRP Advertisement(默认 1 秒)
  Backup 连续 3 个周期未收到 → 认为 Master 故障
  Backup 成为新的 Master

2.3 VRRP 报文

VRRP 报文使用 IP 协议 112,组播发送到 224.0.0.18

VRRP Advertisement(Master → 224.0.0.18)
  版本:VRRPv3(支持 IPv4/IPv6)
  优先级:100(默认)
  间隔:1 秒
  虚拟 IP:192.168.1.1

三、配置示例

3.1 基础配置

   Master(R1)             Backup(R2)
 192.168.1.2              192.168.1.3
      │                       │
      └──────────┬────────────┘
                 │
              PC-A
      网关:192.168.1.1(VIP)
# ===== R1(Master)=====
interface GigabitEthernet0/0/0
 ip address 192.168.1.2 255.255.255.0
 vrrp vrid 1 virtual-ip 192.168.1.1      # VRRP 组 1,VIP
 vrrp vrid 1 priority 120                # 优先级 120(默认 100)
 vrrp vrid 1 preempt-mode timer delay 0  # 抢占模式

# ===== R2(Backup)=====
interface GigabitEthernet0/0/0
 ip address 192.168.1.3 255.255.255.0
 vrrp vrid 1 virtual-ip 192.168.1.1
 # 优先级默认 100,自动成为 Backup

3.2 抢占模式

模式 说明 建议
抢占(Preempt) Master 故障恢复后,重新抢回 Master 角色 开启
非抢占 Master 故障恢复后,保持当前 Master 特殊场景使用
# 开启抢占(默认开启)
vrrp vrid 1 preempt-mode timer delay 30
# delay 30:延迟 30 秒再抢回,避免频繁切换

3.3 验证

# 查看 VRRP 状态
display vrrp
-----------------------------------------------
  Interface  : GigabitEthernet0/0/0
  VRID       : 1
  State      : Master
  Virtual IP : 192.168.1.1
  Master IP  : 192.168.1.2    ← 当前 Master
  PriorityRun: 120
  PriorityConfig: 120

display vrrp statistics

四、VRRP 主备切换过程

4.1 正常切换

Master 故障:
  1. Backup 未收到 VRRP 通告(3 秒 = 3 × 1s 间隔)
  2. Backup 认为 Master 已宕机
  3. Backup 切换到 Master 状态
  4. Backup 开始响应 VIP 的 ARP 请求
  5. 切换时间 ≈ 3 秒(可调)

Master 恢复:
  1. Master 开始发送 VRRP 通告
  2. Backup 收到更高优先级的通告
  3. Backup 回到 Backup 状态
  4. Master 继续转发(如果开启抢占)

4.2 优化切换时间

# 加快切换
interface GigabitEthernet0/0/0
 vrrp vrid 1 advertisement-interval 200   # 200ms(默认 1000ms)
# Backup 检测时间 = 3 × 200ms = 600ms

# BFD 联动(毫秒级检测)
bfd
interface GigabitEthernet0/0/0
 bfd bind peer-ip 192.168.1.3
 vrrp vrid 1 bfd 1                          # BFD 检测到故障立即切换

五、VRRP 故障排查

现象 可能原因 排查命令
双 Master 网络不通,互收不到 VRRP 通告 display vrrp
VIP 无法 Ping VIP 不在 Master 上 display vrrp interface
切换不成功 优先级配置错误 display vrrp verbose
频繁切换 链路不稳定 display vrrp statistics

5.1 双 Master 问题

双 Master(两台路由器同时认为自己是 Master)的根因通常是链路故障

# 在 R1 上看到自己 Master,在 R2 上也是 Master
# 检查互联链路
ping 192.168.1.3

# 检查 VRRP 通告是否可达
# VRRP 通告是组播 224.0.0.18
# 确认组播转发正常

六、VRRP 版本演进

版本 RFC 特性
VRRPv2 RFC 3768 仅 IPv4
VRRPv3 RFC 5798 支持 IPv4 和 IPv6
VRRPv3 for IPv6 使用链路本地地址作为源 IP
# VRRPv3 IPv6 配置
interface GigabitEthernet0/0/0
 ipv6 enable
 ipv6 address 2001:DB8:1::2/64
 vrrp vrid 1 virtual-ip fe80::1          # IPv6 链路本地地址做 VIP
 vrrp vrid 1 virtual-ip 2001:DB8:1::1    # 全局单播 VIP

七、总结

知识点 核心要点
VRRP 目的 实现网关的高可用,消除单点故障
角色 Master(转发) + Backup(备份)
选举 优先级(0-255),越大越优
VIP 虚拟 IP(终端配置的网关)
切换时间 默认 3s,可优化到毫秒级
报文 组播 224.0.0.18,协议 112

八、思考

  1. VRRP 中 Master 和 Backup 各承担什么角色?
  2. 如果 Master 和 Backup 的优先级相同,谁会成为 Master?
  3. VRRP 默认的切换时间是多少?如何加速?
  4. 抢占模式和非抢占模式的区别是什么?
  5. 两台路由器同时显示自己为 Master,可能是什么原因?

下篇预告:第119篇《VRRP 跟踪上行接口实现联动切换》——讲解如何通过 VRRP Track 技术,在上行链路故障时自动切换 VRRP 主备状态,实现真正的端到端高可用。