在未配置MSTP时,VRRP出现双主(双master)现象解析

本次解析是在只配置了VRRP且默认的STP配置情况下,即未配置任何STP优先级和MSTP实例优先级
通过本次解析可以了解VLAN隔离广播域后产生的一些现象,需要配置STP等协议去解决
本次实验使用使用S5700作为实验设备
视频链接:
一、故障现象
LSW1与LSW2配置VRRP后查看VRRP主备 ,显示状态皆为master。
二、原因分析
1、心跳线接口STP状态为转发情况
即一般为LSW1和LSW2之间为了保证VRRP正常建立主备而配置的eth-trunk聚合链路。
分析默认情况下STP接口状态
因为拖出的交换机默认优先级为32768且MAC地址为随机值,所以在未指定STP优先级之前,LSW1和LSW2并不一定是根桥和备用根桥,LSW3,LSW4,LSW5也有可能因为自身MAC地址数值小从而选举为根桥。
通过查询得到的MAC地址可得出,LSW5为根桥,LSW4为备用根桥。如下图:

2、心跳线接口STP状态为阻塞情况

可发现此时LSW1与LSW2的心跳线接口被STP阻塞,此时VRRP出现双主现象,LSW1与LSW2只能够通过蓝色线路。

通过查询得到的MAC地址可得出,LSW5为根桥,LSW4为备用根桥。如下图:

正常情况10 30 50在LSW1为master,20 40在LSW2为master,此时由于LSW1与LSW2建立VRRP只能够通过LSW5来转发,LSW5只有VLAN 50,所以此时LSW1和LSW2只有VLANIF50的接口VRRP状态正常,如下图:
LSW1

LSW2

三、查看各设备的STP接口状态
以默认情况心跳线被阻塞为例
1、查看默认STP接口状态
先查看默认的LSW1到LSW5的接口STP状态,虽然华为交换机默认运行MSTP,但是在未配置实例的情况下,所有VLAN在一个实例0中。
LSW1

LSW2

LSW3

LSW4

LSW5

根据设备的接口状态可得

2、手工配置LSW1为根桥,LSW2为备用根桥
LSW1
stp root primary
LSW2
stp root secondary
LSW1到LSW5对比前后端口状态,端口角色
LSW1

LSW2

LSW3

LSW4

LSW5

默认选举根桥情况下STP端口阻塞情况

手工指定CE1为根桥CE4为备用根桥情况下端口阻塞情况

查看VRRP状态,已正常建立主备
LSW1

LSW2

四、解决方法
简单地说就是手工指定核心交换机LSW1为根桥,LSW2为备用根桥,配置之后查看心跳线是否正常转发。
配置命令:
LSW1
stp root primary
LSW2
stp root secondary
注意:此方法只是配置STP达到VRRP主备正常,如果要达到VRRP的负载均衡的效果则需要配置MSTP的实例