portfast和bpduguard 有什么用

PortFast 加快终端主机连接入stp网络的收敛.
只适用于,在 交换机与主机( 电脑)相连的 端口, 不应该在交换机与交换机,路由器,hub互连的 网络设备的端口使用.
把一个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秒了。

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

PS:

将SWITCH的端口设置为spanning-tree portfast后,如果这个端口接到其他SWITCH或者HUB上就可能造成环路问题。加上 spanning-tree bpduguard enable之后,当这个端口在收到BPDU包后就会进入errdisable状态,从而避免环路。
 
BPDU GUARD的功能是当这个端口收到任何的BPDU就马上设为Error-Disabled状态.
我们知道,当交换机STP功能启用的时候,默认所有端口都会参与STP,并发送和
接受BPDU. 当这个端口下如果有自回环的环路,那么它发出去的BPDU在小交换机上回环后就会被自己接收到, 这个时候BPDU GUARD就会把它立刻设为Error-Disabled状态,这个端口就相当于被 关闭了,不会转发任何数据,也就切断了环路,保护了整个网络.
 
Portfast和bpduguard配置:
switch(config)#interface range f0/1 - 5
switch(config-if-range)#spanning-tree portfast
switch(config-if-range)#spanning-tree bpduguard enable
 
 
 
BPDU Guard使具备PortFast特性的端口在接收到BPDU时进入err-disable状态来避免桥接环路,其可在全局或接口下进行配置(默认关闭),可使用errdisable recovery cause bpduguard命令开启端口状态的自动恢复。
不同于BPDU防护,BPDU Filter配置于全局/接口模式时,功能有所不同,当启用于PortFast端口模式时,交换机将不发送任何BPDU,并且把接收到的所有BPDU都丢弃;而启用于全局模式时,端口在接收到任何BPDU时,将丢弃PortFast状态和BPDU过滤特性,更改回正常的STP操作,BPDU Filter特性默认关闭。
当同时启用bpduguard与bpdufilter时,bpdufilter优先级较高,bpduguard将失效。
LOOP Guard主要用来避免阻塞端口错误地过渡到转发状态而产生桥接环路的情况;当交换机在启用loopguard特性的非指定端口上停止接收BPDU时,交换机将使得端口进入STP“不一致环路”(inconsistentports)阻塞状态,当不一致端口再次收到BPDU时,端口将根据BPDU自动过滤到STP状态。通过sh spanning-tree inconsistentports命令可以查看不一致端口状态。loopguard特性默认开启。
 
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 状态,这时必须手动才能把此端口回复为正常状态。

配置 BPDU Guard:
Switch(config)# spanning-tree portfast bpduguard default          /---
在启用了 PortFast 特性的端口上启用 BPDUguard---/
Switch(config-if)# spanning-tree bpduguard enable                       /---
在没启用 PortFast 特性的情况下启用 BPDUguard---/

BPDU Filtering

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

如果全局配置了 BPDU Filtering, 当某个Port Fast端口接收到了 BPDU, 那么交换机将禁用 Port Fast BPDU Filtering 特性 , 把端口更改回正常的 STP 状态 .
如果在单独的Port Fast端口启用 BPDU Filtering, 此端口将不发送任何的 BPDU 并忽略所有接收到的 BPDU.

注意,如果在连接到其他交换机的端口(不是连的主机的端口)上配置了BPDUFiltering,那么就有可能导致层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---/
ROOT Guard
Root Guard: 防止新加入的交换机(有更低根网桥ID)影响一个已经稳定了(已经存在根网桥)的交换网络,阻止未经授权的交换机成为根网桥。
工作原理:当一个端口启动了此特性,当它收到了一个比根网桥优先值更优的BPDU包,则它会立即阻塞该端口,使之不能形成环路等情况。这个 端口 特性是动态的,当没有收到更优的包时,则此端口又会自己变成转发状态了。
ROOT Guard DP(designated port) 指定端口上做,该端口就不会改变了,只会是 DP 了,这样可以防止新加入的交换机成为 root ,该端口就变成了永久的 DP 了, show spann inconsistentport ),若新加入的交换机想成为 root ,则它的端口不能工作,直到这个新交换机委曲求全做 RP 为止。
Loop Guard
Loop Guard :防止一个阻断的端口由于链路不正常(不能双向通信等)接不到 BPDU 后变成转发,配了此项后,即使接不到 BPDU 也是阻断的 loop-inconsistent blocking state (启用 loop guard 时自动关闭 root guard );

Loop guard
RP 接口或替代端口启用:
Switch(config-if)# spanning-tree guard loop

全局启用:
Switch(config)#spantree global-default loopguard enable
如果在一个启用了 root guard 的端口上启用 loop guard loop guard 将禁用 root guard 功能。

你可能感兴趣的:(职场,休闲,portfast,bpduguard)