1. BPDU保护功能
对于接入层设备,接入端口一般直接与用户终端(如PC机)或文件服务器相连,此时接入端口被设置为边缘端口以实现这些端口的快速迁移。当这些边缘端口接收到配置消息后,系统会自动将这些端口设置为非边缘端口,重新计算生成树,这样就引起网络拓扑的震荡。
正常情况下,边缘端口应该不会收到生成树协议的配置消息。如果有人伪造配置消息恶意攻击交换机,就会引起网络震荡。BPDU保护功能可以防止这种网络攻击。交换机上启动了BPDU保护功能以后,如果边缘端口收到了配置消息,系统就将这些端口关闭,同时通知网管这些端口被MSTP关闭。被关闭的边缘端口只能由网络管理人员恢复。
2. Root保护功能
生成树的根桥及备份根桥应该处于同一个域内,特别是对于CIST的根桥和备份根桥,网络设计时一般会把CIST的根桥和备份根桥放在一个高带宽的核心域内。但是由于维护人员的错误配置或网络中的恶意攻击,网络中的合法根桥有可能会收到优先级更高的配置消息,这样当前根桥会失去根桥的地位,引起网络拓扑结构的错误变动。这种不合法的变动,会导致原来应该通过高速链路的流量被牵引到低速链路上,导致网络拥塞。
Root保护功能可以防止这种情况的发生。对于设置了Root保护功能的端口,其在所有实例上的端口角色只能保持为指定端口。一旦这种端口上收到了优先级高的配置消息,即其将被选择为非指定端口时,这些端口的状态将被设置为Discarding状态,不再转发报文(相当于将与此端口相连的链路断开)。当在足够长的时间内没有收到更优的配置消息时,端口会恢复原来的正常状态。
3. 环路保护功能
依靠不断接收上游交换机发送的BPDU,交换机可以维持根端口和其他阻塞端口的状态。但是由于链路拥塞或者单向链路故障,这些端口会收不到上游交换机的BPDU。此时交换机会重新选择根端口,根端口会转变为指定端口,而阻塞端口会迁移到转发状态,从而交换网络中会产生环路。
环路保护功能会抑制这种环路的产生。在启动了环路保护功能后,如果发生链路拥塞或者单向链路故障,则根端口的角色变为指定端口,端口的状态为Discarding状态;阻塞端口同样也变为指定端口,端口状态为Discarding状态,不转发报文,从而不会在网络中形成环路。
环路保护与Root保护的配置项中,环路保护与设置边缘端口的配置项中,均只能有一个配置项生效。
4. 防止TC-BPDU报文攻击功能
正常情况下,当交换机收到TC-BPDU报文后,会执行MAC地址表和ARP表项的删除操作。因此当有人故意伪造TC-BPDU报文恶意攻击交换机时,短时间内交换机会收到大量的TC-BPDU报文,造成交换机频繁的删除本机的MAC地址表,导致ARP地址表不停的刷新,影响STP生成树的计算并占用大量的网络带宽,还造成交换机CPU占用率居高不下。
开启防止TC-BPDU报文攻击功能后,交换机会在收到TC-BPDU报文后,进行一次删除MAC地址表和ARP表项的操作,并同时启动周期为10秒的定时器。在此周期时间内,如果交换机再次收到TC-BPDU报文,则交换机最多可以进行6次删除MAC地址表项和ARP表项的操作。从而避免频繁的删除MAC地址表和ARP表项,给交换机进行STP计算以及网络稳定性带来恶劣的影响。
用户还可以配置一个周期内删除MAC地址表和ARP表项操作次数的上限值(通过命令stp tc-protection threshold设定)。如果在周期时间内,交换机收到TC-BPDU报文的次数少于上限值,则收到一个TC-BPDU报文进行一次删除操作;如果在周期时间内收到的TC-BPDU报文的次数,超过了用户设定的上限值,则交换机按照设定的上限值次数进行删除操作。举例来说,用户设定周期时间内,交换机进行MAC地址表和ARP表项删除操作的上限值为100,实际一个周期内交换机收到200个TC-BPDU报文,则交换机只删除MAC地址表和ARP地址表100次。
5. BPDU报文拦截功能
在开启了STP协议的网络中,可能会有恶意用户为了达到破坏的目的,不停的向交换机发送BPDU报文。交换机收到BPDU报文以后,会向网络中的其他交换机转发,使网络内的交换机不停的进行STP计算,导致交换机的CPU占用率过高或者BPDU报文的协议状态错误等问题。
为了避免这个问题的发生,用户可以在交换机的以太网端口上配置BPDU报文拦截功能。在开启了BPDU报文拦截功能的端口,将不再接收和转发任何BPDU报文,从而防止交换机受到BPDU报文攻击,保证STP计算的正确性。
几种保护功能的详细配置方法参加:
http://www.elvhome.com/html/2013-7-27/2013727081921068.html





