VRRP 是什么
VRRP(虚拟路由冗余协议)把同一个二层域内的多台三层设备编成一台虚拟路由器:它们共用一组虚拟 IP 与虚拟 MAC,终端只把默认网关指向虚拟 IP,切换全过程发生在设备侧,终端配置一行都不用改。各成员按优先级选举出 Master,由 Master 持有虚拟地址、响应虚拟地址的 ARP 请求并周期性发送 Advertisement 通告;Backup 只监听通告,超时未收到就发起选举接管角色。现行标准是 RFC 5798(VRRPv3),早期版本为 RFC 3768(VRRPv2)。
基本信息
| 标准 | RFC 5798(v3)、RFC 3768(v2) |
|---|---|
| 角色 | Master / Backup / Initialize |
| 报文 | 组播 224.0.0.18,IP 协议号 112,TTL 固定 255 |
| 虚拟 MAC | 0000-5e00-01XX,XX 为 VRID 的十六进制 |
| VRID 范围 | 1-255 |
| 选举依据 | 优先级(0-255,缺省 100),平局比接口主 IP |
| 通告间隔 | v2 缺省 1 秒,Master_Down 约 3.6 秒 |
| 适用平台 | 华为 VRP、思科 IOS、H3C Comware 均支持 |
典型使用场景
- 双核心组网:两台核心交换机互为网关备份,终端网关统一指向虚拟 IP
- 网关割接:更换核心设备时先起 VRRP,终端完全无感知
- 服务器默认网关:服务器双上行到两台交换机,网关由 VRRP 提供冗余
- 与防火墙双机配合:防火墙主备切换时内网网关不中断
- 多组负载分担:为不同 VLAN 规划不同的主设备,让两台设备都承载流量
- 园区出口冗余:出口路由器或三层交换机之间提供统一下一跳
角色分工
角色分工
Master:持有虚拟 IP 与虚拟 MAC,响应虚拟地址的 ARP/ICMP,周期性发送 Advertisement
Backup:只监听通告,Master_Down 超时后发起选举并接管
IP 拥有者:接口实 IP 与虚拟 IP 相同时优先级固定 255,永久处于 Master
初始化:接口未 Up 或管理关闭,不参与通告与选举最小可用配置(华为)
最小可用配置(华为)
interface Vlanif10 # VRRP 配置在三层接口上
ip address 10.1.10.2 24 # 本机实地址
vrrp vrid 1 virtual-ip 10.1.10.1 # 定义组 1 与虚拟网关
vrrp vrid 1 priority 120 # 主设备优先级高于缺省 100
display vrrp # 确认 State 为 Master角色与职责
| 角色 | 持有虚拟地址 | 是否发通告 | 典型状态 | 进入条件 |
|---|---|---|---|---|
| Master | 是 | 周期性发送 | 稳定转发 | 选举胜出或超时接管 |
| Backup | 否 | 否 | 待命监听 | 选举落败且收到通告 |
| IP 拥有者 | 是(等于实地址) | 发送 | 永久 Master | 虚拟 IP 与接口实 IP 相同 |
| Initialize | 否 | 否 | 不参与 | 接口未 Up 或协议被关闭 |
终端与服务器只把默认网关指向虚拟 IP,切换时不需要改任何终端配置。这也是 VRRP 比『双网卡主备』更适合大规模终端的原因:变更点集中在网络侧。
VRRP 报文 TTL 固定为 255,接收端会校验 TTL,路径上任何三层转发都会让它被丢弃:VRRP 只能在同一二层域内运行,跨网段无法用 VRRP 打通,需要换成动态路由协议。
同一广播域内相同 VRID 不能归属两组设备,否则虚拟 MAC 与虚拟 IP 撞车,终端网关会在两台设备之间随机漂移。规划时按 VLAN 统一编号并维护 VRID 台账。
VRRP 与 HSRP 对照
| 维度 | VRRP | HSRP |
|---|---|---|
| 标准 | RFC 5798 开放标准 | 思科专有 |
| 角色名 | Master / Backup | Active / Standby |
| 报文 | 组播 224.0.0.18,协议号 112 | UDP 1985,v1 组播 224.0.0.2 |
| 默认抢占 | 华为、H3C 与思科 VRRP 均开启 | 默认关闭 |
| 多厂商互通 | 支持 | 仅限思科设备 |
| 组号范围 | 1-255 | 0-255 |
选型建议:多厂商混合组网优先用 VRRP,全网统一思科设备时才考虑 HSRP。同一接口混跑两种协议时,两类组号体系相互独立,但虚拟地址规划不能撞车。