首页/网络/VLAN 与高可用速查/双主成因与排查顺序
VRRP 与网关冗余72 条

双主成因与排查顺序

双主即两端同时为 Master:先确认通告可达性(ACL/认证/TTL/单通),再查 VRID 冲突与 IP 拥有者误配,逐层排除。

VLAN 与高可用速查网络更新于 2026-10-13

双主的成因与排查顺序

双主指同一 VRRP 组的两台设备同时处于 Master:虚拟 IP 与虚拟 MAC 被两个端口同时宣称,终端的 ARP 缓存与交换机的 MAC 表会在这两台设备之间随机漂移,表现为间歇性不通、时延抖动甚至大面积丢包。根因基本都落在『通告不可达』或『参数不一致』两类上,所以排查要按固定顺序推进,而不是随机重启设备。

基本信息

典型现象两端均显示 Master,业务间歇性中断
虚拟地址冲突同一虚拟 IP 与虚拟 MAC 在两个端口上同时存在
排查入口两端 display vrrp / show vrrp 对比状态
验证手段镜像口抓包确认通告是否可达
常见根因ACL 拦截、认证不一致、VRID 冲突、链路单通、定时器不一致
处置原则先定位根因再恢复,避免直接重启

排查顺序

  • 看状态:两端是否都显示 Master,确认现象而不是猜测
  • 抓包:镜像口确认能否收到对端通告,判断是单向还是双向不可达
  • 查放行:ACL、防火墙与安全策略是否放行协议号 112 与组播 224.0.0.18
  • 查一致:VRID、虚拟 IP、认证方式与密钥、定时器、VRRP 版本逐项核对
  • 查链路:单向可达问题用环回测试或 BFD 验证,排除物理链路与光模块问题
  • 查规划:是否存在 IP 拥有者、VRID 冲突或第三台设备在发送通告

抓包验证示例

抓包验证示例
sudo tcpdump -i eth0 vrrp                    # 观察是否收到对端通告
sudo tcpdump -i eth0 -c 20 'ip proto 112'    # 按协议号过滤,取 20 个样本
# 若只能看到本机发出的通告而看不到对端的,说明对端通告不可达
# 此时按 ACL、认证、VRID、链路方向逐项排查

常见成因对照

成因特征处置方向
ACL 拦截协议 112双端均收不到通告放开安全策略并复核
认证不一致双端 Master,抓包能看到通告统一认证方式与密钥
VRID 冲突同域出现多组设备宣称同一实例按规划重新编号并维护台账
链路单向可达一端能收到、一端收不到查光模块、光纤与链路质量
定时器不一致角色长时间并存或异常接管两端统一通告间隔
方向核对是双主问题的关键:确认两端各自能否收到对端的通告。单向可达的问题用环回测试或镜像抓包验证最直接,比反复检查配置更有效。

易错点

  • 双主期间先重启设备:重启掩盖根因,回抢时还会带来额外的业务中断,应先定位通告可达性
  • 只检查一台设备的配置:双主多为两端差异造成,必须两端并排比对 VRID、认证、定时器与版本
  • 忽略安全策略:ACL 或防火墙拦截协议号 112 是最常见的沉默杀手,容易在配置层反复排查却找不到原因
  • VRID 规划无台账:同域重复编号会反复出现双主,建议按 VLAN 统一编号并定期核对
  • 把双主当成偶发抖动放过:虚拟地址冲突会持续影响业务,属于需要立即处置的故障

数据来源与参考

  • RFC 5798(主备选举与通告机制)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌