启用了BPDU Guard特性的端口在收到BPDU的时候会使端口进入err-disable状态,从而避免桥接环路。
一般BPDU Guard是和PortFast结合使用,在端口上启用了PortFast之后,如果没有启用BPDU Guard,那么端口收到BPDU的时候,STP会让端口进入blocking状态,当配置了BPDU Guard之后,端口收到BPDU的时候就进入err-disable。配置BPDU
基于端口的配置:
Switch(config-if)#spanning-tree bpduguard enable
Switch(config-if)#spanning-tree bpduguard disable
全局配置:
Switch(config)#spanning-tree portfast bpduguard
全局配置是配合PortFast使用的,当端口上启用了PortFast之后,该端口才会启用BPDU Guard,如果该端口没有启用PortFast,那么该命令不会使该端口启用BPDU Guard。
总结:配置了BPDU Guard之后,端口只发不收BPDU,收到的时候就把端口进入err-disable状态。
BPDU GUARD与BPDU FILTER区别:
BPDU GUARD与BPDU FILTER这2个可以再全局模式下开启也可以再端口下开启。当然不同的开启方式效果也不同。BPDU GUARD在全局下开启只对portfast端口生效,并且收到BPDU就将接口过渡到ERR-DISABLE状态。在接口下开启不管是不是portfast端口一旦收到BPDU都将接口过渡到err-disable状态。如果BPDU FILTER在全局下开启只对portfast端口生效并且只能过滤掉发出的BPDU并不能过滤掉收到的BPDU。如果在接口下下开启。那么不管是否是不是portfast端口都将生效。并且将会使发出或收到的都被过滤掉,这样就相当于在这个接口关掉了STP是很危险的动作,不建议在接口下开启。