優化STP

 

<優化STP>

·BPDU防護:
 對於設置了PortFast接口,卻收到了BPDU,如果設置了BPDU防護,就能將此接口關閉,而不會進入生成樹狀態。

spanning-tree portfast bpduguard default (全局開啓)

int f0/1
  spanning-tree bpduguard enable (接口開啓)

show spanning-tree summary [totals]

Show errdisable recovery   顯示可導致接口errdisable的選項

設置自動恢復:
errdisable recovery cause bpduguard  設置300S(默認)後自動修復bpduguard所導致的errdisable
errdisable recovery interval 30   修改默認的修復時間

·BPDU過濾:不發也不收
 通過使用BPDU過濾,能夠防止在啓用portfast的端口上向host發送不必要的BPDU。

注意:
  如果在全局下配置,從端口收到BPDU的話,不會禁掉端口,會轉爲正常的STP狀態
  如果在接口下配置,從端口收到BPDU的話,會丟棄。
  如果在同一接口設置Guard/Filter , F優於G

  BPDU過濾只是一種優化技術,在接口上配置BPDU過濾有可能導致橋接環路,所以不推薦使用。

spanning-tree portfast bpdufilter default(全局開啓)

int f0/9
  spanning-tree bpdufilter enable (接口開啓)

show spanning-tree summary totals

·根保護:
 能夠將接口強制設爲DP,進而防止對端SW成爲Root。
  設置了根保護的端口如果收到了一個優於原BPDU的新的BPDU,它將把本端口設爲blocking禁止狀態,過一段時間,如果沒再收到BPDU,它會恢復端口,這一點不同於BPDU的防護。
 
int f0/5
  spanning-tree guard root

測試:將其他SW變成根橋,看原來根橋的現象:
show spanning-tree inconsistentports
Show spanning-tree interface f0/2 detail
show spanning-tree
Fa0/2            Desg BKN*19        128.2    P2p *ROOT_Inc

·環路保護: 對於軟件故障處理得更好
 當STP中的BLK端口錯誤的過渡到FWD狀態,有可能出現環路。
 啓用Loopguard的接口,如果原來的BPDU老化了,不會轉到listening狀態,而將自動轉爲inconsistent狀態
  在inconsistent狀態下,會再根據對端交換機發過來的BPDU進行決定端口狀態。
  如果是出現了單向鏈路失效的現象,對端交換機是不會有BPDU過來的,所以接口將一直保持inconsistent。
 默認情況下是禁用的。
 
spanning-tree loopguard default (全局)

int f0/9
  spanning-tree guard loop (接口)

·UDLD單向鏈路失效檢測: 對於硬件故障處理得更好
 單向鏈路失效是比較常見的現象,以太網線纜的收發出現問題。
  當鏈路保持“UP”的時候,接口卻沒有流量收到。
  UDLD是一種二層協議,它與第一層機制協同工作來確定鏈路的物理狀態。
 啓用UDLD能使得這種接口自動進入“err-disable”狀態。
  啓用了UDLD的交換機之間會互相發送UDLD協議包來保持聯繫,默認間隔15S

Sw1(config)#udld enable 也可在接口下配

show udld   

積極模式的UDLD--當端口停止接收UDLD的數據包時,UDLD將嘗試重新建立與鄰居的連接,但如果嘗試8次之後還不成功,那麼兩端的端口都將成爲“err-disable”狀態。

Err-disable特性:
在CISCO交換機上有很多的保護特性都會導致接口進入err-disable狀態

接口如果進入err-disable狀態:有兩種方法恢復

1、手動恢復
   先shutdown、再no shutdown
2、自動恢復
   errdisable recovery cause {all|arp-inspection|bpduguard|link-flap} 指定原因
   errdisable recovery interval 30   指定自動恢復時間間隔


命令總結:
bgduguard
接口開啓:sw1(config-if)#spanning-tree bpduguard enable
全局開啓:sw1(config)#spanning-tree portfast bpduguard default
如果對所有開了portfast的端口進行限速如何辦?
sw1(config)#spanning-tree portfast bpduguard  【對所有開啓了portfast的接口進行bpdu防護】
loopguard
接口開啓:spanning-tree guard loop
全局開啓:span-tree loopguard default
loop防護:該技術不能與根保護一起用,一起使用後會互相覆蓋。
bpdufilter
sw3(config-if)#spanning-tree bpdufilter enable
sw1(config)#spanning-tree portfast bpdufilter default
bpdufilter和bpduguard一起使用時,bpdufilter優先!
rootguard
sw1(config-if)#spanning-tree guard root

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章