Chinaunix首页 | 论坛 | 博客
  • 博客访问: 943584
  • 博文数量: 276
  • 博客积分: 4182
  • 博客等级: 上校
  • 技术积分: 4486
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-17 21:14
文章分类

全部博文(276)

文章存档

2014年(9)

2013年(132)

2012年(135)

分类: 系统运维

2013-05-30 11:43:55

BPDU guard和bpdufilter的一些介绍

BPDU GUARD的功能是当这个端口收到任何的BPDU就马上设为Error-Disabled状态。我们知道,当交换机STP功能启用的时候,默认所有端口都 会参与STP,并发送和接受BPDU,当BPDU GUARD开启后,在正常情况下,一个下联的端口是不会收到任何BPDU的,因为PC和非网管换机都不支持STP,所以不会收发BPDU。当这个端口下如 果有自回环的环路,那么它发出去的BPDU在非网管换机上回环后就会被自己接收到,这个时候BPDU GUARD就会把它立刻设为Error-Disabled状态,这个端口就相当于被关闭了,不会转发任何数据,也就切断了环路,保护了整个网络。

BPDU Guard特性可以全局启用也可以基于基于接口的启用,两种方法稍有不同.当在启用了Port Fast特性的端口收到了BPDU后,BPDU Guard特性将关闭(err-disable)该端口 端口处于err-disable状态时必须手动才能把此端口回复为正常状态。
配置方法:
Switch(config)# spanning-tree portfast bpduguard default          /---在启用了Port Fast特性的端口上启用BPDU Guard---/
Switch(config-if)# spanning-tree bpduguard enable                        /---在不启用Port Fast特性的情况下启用BPDU Guard---/


BPDU Filtering特性和BPDU Guard特性非常类似.通过使用BPDU Filtering,将能够防止交换机在启用了Port Fast特性的端口上发送BPDU给主机。

如果全局配置了BPDU Filtering,当某个端口接收到了BPDU,那么交换机将把端口更改回正常的STP状态,也就是它将禁用Port Fast和BPDU Filtering特性。
注 意,如果在连接到其他交换机的端口上配置了BPDU Filtering,那么就有可能导致层2环路(Prevent from sending and receiving BPDU).另外,如果在与启用了BPDU Filtering的相同端口上配置了BPDU Guard特性,所以BPDU Guard将不起作用,起作用的将是BPDU Filtering.
配置BPDU Filtering:
Switch(config)# spanning-tree portfast bpdufilter default              /---在启用了Port Fast特性的端口上启用BPDU Filtering---/
Switch(config-if)# spanning-tree bpdufilter enable                          /---在不启用Port Fast特性的情况下启用BPDU Filtering---/

spanning-tree portfast?


设置该端口为快速端口

把一个port设置了portfast,就是让那个port不再使用STP的算法。
在STP中,port有5个状态:disable、blocking、listening、learning、forwarding。
只 有forwarding状态,port才能发送用户数据。如果一个port一开始是没有接pc,一旦pc接上,就会经历 blocking->listening->learing->forwarding,每个状态的变化要经历一段时间,这样总共会有3 个阶段时间,缺省的配置要50秒钟。这样从pc接上网线,到能发送用户数据,需要等50秒的时间,但如果设置了portfast,那就不需要等待这50秒 了。



在基于IOS的交换机端口上启用或禁用Port Fast 特征:
switch(config-if)#spanning-tree portfast
在1900上启用 : spantree start-forwarding 取消:no spantree start-forwarding
在基于CLI的交换机端口上启用或禁用Port Fast 特征:
switch(enable) set spantree portfast {module/port}{enable|disable}


portfast只能用在接入层,也就是说交换机的端口是接HOST的才能起用portfast,如果是接交换机的就一定不能启用,否则会造成新的环路.
起用portfast往往是因为一些应用的要求,cisco是建议将符合条件的port设置成portfast的.

PS:

将 SWITCH的端口设置为spanning-tree portfast后,如果这个端口接到其他SWITCH或者HUB上就可能造成环路问题。加上spanning-tree bpduguard enable之后,当这个端口在收到BPDU包后就会进入errdisable状态,从而避免环路。


1 portfast 能将2层端口立即进行转发状态 回避了监听和学习状态。
正常状态 阻塞-》监听―》学习-》转发
portfast 阻塞-》转发

portfast 可以防止DHCP超时 Novell进入问题 APPLETALK地址问题

使用方法
接口
spanning-tree portfast
接入层时,可以让Portfast全部启用。但注意在上连端口要关闭生成树
spanning-tree portfast default

如果启用了Portfast特性的端口接收了BPDU。 (接了交换机) 此时这个端口。将进入 (err-disable) 这种特性。可以防止网络环路问题发生。
在当网管就碰成此类问题。一个客户说用了我们交换机。在DOS拿不到IP address 。但在WINDOWS能拿到。
经观察发现是等拿IP ADDRESS时间太长了。当了到达某段时间后。就超时了拿不到IP了
该交换机不是思科的。但有STP协议。所以不能用portfast,故我将接入端的端口的STP都关了之后。就可以很快拿到IP了

阅读(4670) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~