当前场景,由于误操作,导致下联接入了交换机,并且俩交换机中间有一条互联线路,这样会导致环路发生,因为VXLAN是不传递BPDU的,因此在STP角度看到的网络会是如下:
STP的角度中,该网络在生成树角度是一个无环的网络,并不会阻塞任何端口。但是由于VXLAN不传递BPDU,而是通过单播来模拟广播发送BUM帧的,由于VXLAN本身拥有水平分割的防环机制,因此不会造成BUM帧反向泛洪。
假设服务器发起BUM帧,BUM帧进入交换机后会进行泛洪动作,会沿箭头方向进行泛洪,这里只画了单向,这样双向起来就会形成环路。解决这种拓扑的环路可以通过修改STP的桥ID来实现,也就是将上面的两台Leaf桥ID设置为一致,并且都设置为根桥,会形成如下拓扑,STP会阻塞掉一个端口。
stp bridge-address 0000-0000-0001 //这里MAC地址可以任意写,但是不能和网络内冲突 stp instance 0 root primary
形成以上的拓扑后,会阻塞掉下联交换机之间的互联接口,假设阻塞的是右边的端口,这样就可以解决该种拓扑环境造成的环路了。
但是VXLAN网络中不建议如此接入设备,设计上也是不合理的,一般会在Leaf设备的接入端口配置边缘端口后,然后配置BPDU保护来防止误接交换机的配置。