梅利333

从无到有,自有至精

导航

STP安全特性

Stp的安全机制

 

专门针对STP生成树协议的安全机制

1 root guard     根防护

2 bpdu guard    bpdu防护

3 bpdu filter     bpdu过滤

 

 

1 什么是root guard

根防护,就是当一个已经运行了STP协议的交换机群,且已经正确的收敛完成,网络拓扑稳定的情况下,有一台具备更优bridge ID的交换机加入,在不配置安全机制的情况下,有可能会强占原有网络环境中的根桥地位。从而导致全网拓扑发生变化

 

2 有什么作用?

开启了根防护,可以有效的防止这一现象的发生,保证网络拓扑的稳定性,当这个开启了root guard的接口收到新的BPDU更优的设备时,应该怎么做呢?  答:BLK,但是这个BLK 还有些不同,

 

3 用在什么地方?

通常用在根交换机的所有未使用接口(因为根交换机通常情况下不会连接其它的终端设备,中做STP的业务)所以当STP收敛完成以后,要在根交换机上配置其它口为ROOT GUARD

 

实例:

 

 

 

在该网络中,SW1处于未开机状态,sw2,sw3,sw4开启STPSW2此时为根桥,

那么当SW1接入后会发生什么呢?

 

 

 确认SW2 root bridge

现在开启SW1

 

在sw2上看,自己已经不是根桥了,有了新的MAC

 

 

 

在sw1上看,唉,自己变成了 root bridge

 

 

 

这样一台,就会影响整个网络的拓扑,因为sw1并没有连接其它设备,也就导致发往它这里的数据没有出口,也就将无法正常的发送数据。导致无法正常的上网

 

通过上面的实验,发现root guard 的重要性了吧,现在开始配置这一功能

SW2上的E0/2口开启(因为e0/0 -1两个口,正在运行着STP,且之前已经收敛完成了)实际中应该在root设备上所有未使用的接口都配置根防护,从而“把根留住”

先把SW1e0/0shudown,(等同于拔掉网线)

sw2(config)#inter e0/2    

sw2(config-if)#spanning-tree guard root

 

再开启SW1 的接口

Sw1(config-if)#no shu

 

此时sw2上会发生什么呢?

 

 

 发现已经有了系统提示信息,root guard blocking e0/2 看来已经生效了,咱们来查看一下具体的信息

 

 

 可以看到这个端口被特殊的阻塞了,

 

原理:开启了root guard的接口,当收到更优的bpdu时,会丢弃这个信息,同时,将这个接口置为BKN*的状态,

同时,30s内,如果没有收到BPDU,则开启此接口

      如果一直收到,那就一直阻塞,一直卡在BKN*的这个状态

在实际工作中,这一点还是很有必要的

(护根大法,你值得拥有) 

 

二、bpdu guard

1、什么是BPDU guard

BPDU防护,主要针对于Portfast接口,因为portfast接口被视为边缘端口,用来接终端设备时加快收敛速度用的,(可节省30S的时间)而这时,如果是因人为失误接入了一台交换机,此时需要注意的是,不经过(侦听---学习----转发过渡的30s)直接进行转发,有可能其地位也是会变成root bridge,就算不能成为根桥,也会影响整个网络的拓扑改变,造成数据的不稳定

2、用在哪里?

Bpdu guard,主要用于接入层交换机的portfast接口

3、其原理是什么?

当在接入层交换机上开启了bpdu guard的时候,也就意味着,只要是接收到BPDU的信息,不管优劣与否,直接给你干掉,也就是err-disable状态(这一点,和swport-securiy很像)只允许我通过的,只要检测到不合格的,就干掉,

支持手动开启和自动开启,但是当检测到BPDU信息时,还是会关闭

 

 

 此时在SW4上全局开启了portfast,然后再开启bpdu guard,

 

 

 

 

 开启针对portfast bpdu防护

此时再开启SW1

 

 

 刚一开机,就看到SW4 上的提示信息,

因为触发了BPDU GUARD,所以将端口关闭

设置自动恢复的方法和port-security的方法是相同的,这里不再做赘述 

sw4(config)#errdisable recovery interval 30      //自动恢复时间延时30s

sw4(config)#errdisable recovery cause bpduguard //自动恢复因出发bpduguard的接口

 

可以通过

SW#show errdisable recovery 命令来查看具体的因触发导致关闭的端口自动恢复功能是否开启,以及自动检测时间周期倒计时。

  

BPDU filterBPDU过滤)

一些特殊的情况下,这台接入层设备下方,就必须要接入一台交换机,如果因为bpdu guard的原因,导致无法正常的开启端口,也就影响了实验的工作网络。

这时更加人性化的功能出现了,

Bpdu 过滤, bpdu filter

 

 

配置bpdu filter 有两种方法,1 全局下开启  2 接口下开启

1 全局下开启:

配置了该功能后,所有的portfast收到budp信息后会将原有的edge端口特性全部取消,将该接口视为最初的接口状态,也就意味着要重新的从侦听----学习---转发,需要 STP的计算过程来决定端口最终的角色

sw4(config)#spanning-tree portfast edge bpdufilter default

 

 

 被初始化的同时,网络拓扑也发生了变化,显然 ,这不是我们想要的,

 

2接口下开启

(config-if)#spanning-tree bpdufilter enable

有两个特点1 接收,但不转发BPDU,就是一个单纯的PORTFAST接口,过滤BPDU信息

                 2  edge边缘端口的特性不会变

通常情况下,咱们用这个,

 

 

 在SW4上查看,根桥,还是SW2

而在sw1上看呢?

 

 

 它认为自己是根桥没错,但是BPDU的信息是不可能通过sw4e1/0接口发过去的.

因为针对接口开记了bpdu filter 它会无视这些BPDU信息,

 

 

Show spanning-tree summary totals,可以查看具体都开启了哪些STP 的功能

 

 

 

这里有一点需要注意,

如果是在接口下开启的BPDU filter, 在这个汇总信息里是看不到的,

需要到接口下才能看到

show run inter e1/0

 

 

-----------------------------------------------------

CCIE成长之路---梅利

 

posted on 2020-07-11 09:49  梅利333  阅读(825)  评论(0编辑  收藏  举报