VRRP(Virtual Router Redundancy Protocol)把多台路由器组成一台虚拟路由器,为终端提供冗余默认网关,实现网关级高可用。
一、为什么需要 VRRP
终端通常只配一个默认网关,网关故障则所有终端访问不了外部网络。
核心:把多台物理路由器虚拟化为一台虚拟路由器,主网关故障时备份自动接替,对终端透明。
二、VRRP 基本概念
2.1 VRRP 版本
| 版本 | 适用环境 | 说明 |
|---|---|---|
| VRRPv2 | 仅 IPv4 | 华为默认 |
| VRRPv3 | IPv4 和 IPv6 | 新版,兼容 IPv6 |
2.2 核心术语
| 概念 | 说明 |
|---|---|
| VRRP 组 | 多台协同工作的路由器,用 VRID 标识 |
| VRID | 8 bit,同组内必须相同 |
| 虚拟路由器 | 每个 VRRP 组的抽象设备 |
| 虚拟 IP | 管理员手工配置,可配置多个 |
| 虚拟 MAC | 0000-5e00-01XX,XX 为 VRID |
| Master 设备 | 实际承担转发工作的物理路由器 |
| Backup 设备 | 侦听 Master、随时准备接替 |
| 优先级 | 默认 100,选举 Master 用,越大越优 |
2.3 组播通信
VRRP 通告报文的目标 IP 地址为组播地址 224.0.0.18,协议号为 112(跨传输层封装)。
VRRP 规定 IP 头部 TTL 必须为 255,收到 TTL 不为 255 的通告直接丢弃——防跨网段 VRRP 攻击。
三、VRRP 工作机制
3.1 Master 选举规则
| 优先级 | 规则 |
|---|---|
| 1 | 比较 VRRP 优先级,越大越优 |
| 2 | 比较接口 IP 地址,越大越优 |
特殊规则:真实接口 IP 与虚拟 IP 相同时无条件成为 Master(优先级相当于 255)。
3.2 状态机
三种状态:
Init ──接口 up──→ Backup ──选举胜出/抢占──→ Master
↑ ↑ │
└──接口 down───────┴──主关闭定时器超时─────────┘
Init:接口配了 VRRP 但 down;up 后优先级 = 255(接口 IP = 虚拟 IP)直接进 Master,否则进 Backup。Backup:侦听 Master 的通告报文,随时准备接替。Master:报文转发、响应 ARP,周期性发通告报文(缺省 1 秒)告知存活。
3.3 主备切换
| 场景 | 行为 |
|---|---|
| Master 主动退出 | 发优先级=0 的 VRRP 报文,Backup 立即接管 |
| Master 故障 | Backup 等待主关闭定时器超时后接管 |
3.4 定时器机制
主关闭定时器 = 3 × 通告路由间隔计时器 + 偏移时间
偏移时间 = (256 - 当前接口优先级) / 256
优先级越大,主关闭定时器越短,检测越快。
四、VRRP 高级特性
4.1 抢占模式
默认开启:Backup 发现 Master 优先级比自己低时立即抢占。
# 开启抢占并设置抢占延迟
[Router-GigabitEthernet0/0/1] vrrp vrid 1 preempt-mode timer delay 10
抢占延迟:防震荡频繁切换,给收敛时间。
4.2 上行链路监控
Master 上行链路故障时即使自身正常,终端流量也到不了目标网络——VRRP 支持监控:
# 监控上行接口,故障时降低优先级
[Router-GigabitEthernet0/0/1] vrrp vrid 1 track interface GigabitEthernet 0/0/0 reduced 30
# 监控路由条目,故障时降低优先级
[Router-GigabitEthernet0/0/1] vrrp vrid 1 track ip route 12.0.0.0 24 reduced 50
被监控对象故障时 Master 优先级降低,Backup 抢占成新 Master。
4.3 多网关负载分担
配置多个 VRRP 组实现负载分担:
组 1:R1 为 Master(优先级 120),R2 为 Backup(优先级 100)
虚拟 IP:192.168.1.254
组 2:R1 为 Backup(优先级 100),R2 为 Master(优先级 120)
虚拟 IP:192.168.1.253
一半终端网关设为 .254,一半设为 .253
4.4 多虚拟 IP 地址
一个 VRRP 组可配多个虚拟 IP:
[Router-GigabitEthernet0/0/1] vrrp vrid 1 virtual-ip 192.168.1.254
[Router-GigabitEthernet0/0/1] vrrp vrid 1 virtual-ip 192.168.1.250
五、VRRP + MSTP 组合场景
5.1 组合设计思路
常见组合:MSTP 消除二层环路 + VRRP 提供三层网关冗余。
设计原则:
- VRRP Master 应与 MSTP 根桥在同一台设备上(三点合一)
- 实例 1 的根桥 = VRRP 组 1 的 Master = VLAN 1-10 的网关
- 实例 2 的根桥 = VRRP 组 2 的 Master = VLAN 11-20 的网关
5.2 典型拓扑
[核心路由器]
/ \
[SW1] [SW2]
│ ╲ ╱ │
│ ╲ ╱ │
│ ╱ ╲ │
│ ╱ ╲ │
[SW3] [SW4]
/ \ / \
PC1 PC2 PC3 PC4
VLAN 10:SW1 为 VRRP Master + MSTP 根桥
VLAN 20:SW2 为 VRRP Master + MSTP 根桥
六、VRRP 配置实战
6.1 基础 VRRP 配置
拓扑:
R2(GE0/0/1: 192.168.1.1/24)──┐
├── [PC] 网关: 192.168.1.254
R3(GE0/0/1: 192.168.1.2/24)──┘
配置:
# ============ R2 配置 ============
[R2] interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1] ip address 192.168.1.1 24
[R2-GigabitEthernet0/0/1] vrrp vrid 1 virtual-ip 192.168.1.254
[R2-GigabitEthernet0/0/1] quit
# ============ R3 配置 ============
[R3] interface GigabitEthernet 0/0/1
[R3-GigabitEthernet0/0/1] ip address 192.168.1.2 24
[R3-GigabitEthernet0/0/1] vrrp vrid 1 virtual-ip 192.168.1.254
[R3-GigabitEthernet0/0/1] quit
# ============ 验证 ============
display vrrp brief
输出示例:
# R2 显示为 Master(IP 地址较大者胜出)
[R2] display vrrp brief
Total:1 Master:1 Backup:0 Non-active:0
VRID State Interface Type Virtual IP
----------------------------------------------------------------
1 Master GE0/0/1 Normal 192.168.1.254
# R3 显示为 Backup
[R3] display vrrp brief
Total:1 Master:0 Backup:1 Non-active:0
VRID State Interface Type Virtual IP
----------------------------------------------------------------
1 Backup GE0/0/1 Normal 192.168.1.254
6.2 优先级与抢占配置
# R3 设置更高优先级,抢占成为 Master
[R3-GigabitEthernet0/0/1] vrrp vrid 1 priority 120
# R3 开启抢占并设置延迟
[R3-GigabitEthernet0/0/1] vrrp vrid 1 preempt-mode timer delay 20
# 再次验证
[R3] display vrrp brief
Total:1 Master:1 Backup:0 Non-active:0
VRID State Interface Type Virtual IP
----------------------------------------------------------------
1 Master GE0/0/1 Normal 192.168.1.254
6.3 VRRP + 动态路由完整示例
拓扑:
R1(Loopback 0: 1.1.1.1/24)── GE0/0/1 ──┐
├── [SW] ── [PC] 网关: 192.168.1.254
R2(GE0/0/1: 192.168.1.1/24)─────────────┘
R3(GE0/0/1: 192.168.1.2/24)─────────────┘
配置:
# ============ R1:核心路由器 ============
[R1] interface LoopBack 0
[R1-LoopBack0] ip address 1.1.1.1 24
[R1-LoopBack0] quit
[R1] interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1] ip address 13.0.0.1 24
[R1-GigabitEthernet0/0/1] quit
[R1] rip 1
[R1-rip-1] version 2
[R1-rip-1] network 1.0.0.0
[R1-rip-1] network 12.0.0.0
[R1-rip-1] network 13.0.0.0
# ============ R2:主网关 ============
[R2] interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1] ip address 192.168.1.1 24
[R2-GigabitEthernet0/0/1] vrrp vrid 1 virtual-ip 192.168.1.254
[R2-GigabitEthernet0/0/1] vrrp vrid 1 priority 120
[R2-GigabitEthernet0/0/1] vrrp vrid 1 preempt-mode timer delay 10
[R2-GigabitEthernet0/0/1] quit
[R2] interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0] ip address 12.0.0.2 24
[R2-GigabitEthernet0/0/0] quit
[R2] rip 1
[R2-rip-1] version 2
[R2-rip-1] network 12.0.0.0
[R2-rip-1] network 192.168.1.0
# ============ R3:备网关 ============
[R3] interface GigabitEthernet 0/0/1
[R3-GigabitEthernet0/0/1] ip address 192.168.1.2 24
[R3-GigabitEthernet0/0/1] vrrp vrid 1 virtual-ip 192.168.1.254
[R3-GigabitEthernet0/0/1] vrrp vrid 1 priority 100
[R3-GigabitEthernet0/0/1] quit
[R3] interface GigabitEthernet 0/0/0
[R3-GigabitEthernet0/0/0] ip address 13.0.0.2 24
[R3-GigabitEthernet0/0/0] quit
[R3] rip 1
[R3-rip-1] version 2
[R3-rip-1] network 13.0.0.0
[R3-rip-1] network 192.168.1.0
6.4 上行链路监控配置
# Master(R3)监控上行接口
[R3] interface GigabitEthernet 0/0/1
[R3-GigabitEthernet0/0/1] vrrp vrid 1 track interface GigabitEthernet 0/0/0 reduced 30
# 监控路由条目
[R3-GigabitEthernet0/0/1] vrrp vrid 1 track ip route 12.0.0.0 24 reduced 50
# 验证监控效果
[R3] display vrrp
GigabitEthernet0/0/1 | Virtual Router 1
State : Backup
Virtual IP : 192.168.1.254
192.168.1.250
Master IP : 192.168.1.1
PriorityRun : 70 // 实际运行优先级(120 - 50 = 70)
PriorityConfig : 120 // 配置优先级
MasterPriority : 100
Preempt : YES Delay Time : 20 s
七、VRRP 常见查看命令
# 查看 VRRP 摘要信息
display vrrp brief
# 查看 VRRP 详细信息
display vrrp
# 查看 VRRP 接口统计
display vrrp interface GigabitEthernet 0/0/1
# 查看 VRRP 协议统计
display vrrp statistics
八、VRRP 配置最佳实践
- 优先级规划:主 120、备 100,预留调整空间
- 抢占延迟:10-20 秒,避免震荡期频繁切换
- 上行链路监控:必须配,否则上行故障时形成”黑洞”
- VRRP + MSTP 统一:VRRP Master 与 MSTP 根桥同设备,避免次优路径
- 多组负载分担:多个 VRRP 组分担网关流量,充分利用带宽
- 定时器调优:收敛敏感场景可缩短通告间隔
九、常见问题排查
| 现象 | 可能原因 | 排查方法 |
|---|---|---|
| 两台设备都是 Master | 二层不通,VRRP 报文无法交互 | 查 VLAN/Trunk 配置 |
| 无法 Ping 通虚拟 IP | 虚拟 IP 配置不一致 | display vrrp 对比两端 Virtual IP |
| 切换速度慢 | 主关闭定时器未触发 | 查通告间隔与抢占延迟 |
| 上行链路故障未切换 | 未配置上行链路监控 | 添加 vrrp vrid track interface 命令 |
| TTL 校验失败 | 组播报文跨三层路由 | VRRP 设备须在同一广播域 |