簡介
邊緣連線埠(portfast)是指:不直接與任何交換機連線,也不通過連線埠所連線的網路間接與任何交換機相連的連線埠。 可以通過下面兩種途徑來配置連線埠為邊緣連線埠或者非邊緣連線埠。
1. 在系統視圖下進行配置
請在系統視圖下進行下列配置。
2. 在乙太網連線埠視圖下進行配置
請在乙太網連線埠視圖下進行下列配置。
以上兩種方法都可以配置連線埠為邊緣連線埠或者非邊緣連線埠。
用戶如果將某個連線埠指定為邊緣連線埠,那么當該連線埠由堵塞狀態向轉髮狀態遷移時,這個連線埠可以實現快速遷移,而無需等待延遲時間。用戶只能將與終端連線的連線埠設定為邊緣連線埠。該參數對所有生成樹實例有效,也就是說,當連線埠被配置為邊緣連線埠或非邊緣連線埠時,該連線埠在所有生成樹實例上都被設定為邊緣連線埠或非邊緣連線埠。
如果交換機使能了BPDU保護,當被設定為邊緣連線埠收到來自用戶的bpdu報文,則該邊緣連線埠會被關閉,僅有網路管理員能將它重新打開。
預設情況下,交換機所有乙太網連線埠均被配置為非邊緣連線埠。
對於直接與終端相連的連線埠,請將該連線埠設定為邊緣連線埠,同時啟動bpdu保護功能。這樣既能夠使該連線埠快速遷移到轉髮狀態,也可以保證網路的安全。
如果交換機的下掛設備使能了stp功能,請不要在該下掛設備上配置邊緣連線埠,否則會導致系統刪除該連線埠上的mac地址表項、arp地址表項操作失敗。
portfast套用
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的.
bpduguard套用
將SWITCH的連線埠設定為spanning-tree portfast後,如果這個連線埠接到其他SWITCH或者HUB上就可能造成環路問題。加上spanning-tree bpduguard enable之後,當這個連線埠在收到BPDU包後就會進入errdisable狀態,從而避免環路。BPDU GUARD的功能是當這個連線埠收到任何的BPDU就馬上設為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 GUARD工作原理:當交換機STP功能啟用的時候,默認所有連線埠都會參與STP,並傳送和接受BPDU,當BPDU GUARD開啟後,在正常情況下,一個下聯的連線埠是不會收到任何BPDU的,因為PC和非網管換機都不支持STP,所以不會收發BPDU。當這個連線埠下如果有自迴環的環路,那么它發出去的BPDU在非網管換機上迴環後就會被自己接收到,這個時候BPDU GUARD就會把它立刻設為Error-Disabled狀態,這個連線埠就相當於被關閉了,不會轉發任何數據,也就切斷了環路,保護了整個網路。BPDU Guard特性可以全局啟用也可以基於基於接口的啟用,兩種方法稍有不同. 當在啟用了Port Fast特性的連線埠收到了BPDU後,BPDU Guard將關閉該連線埠,使該連線埠處於err-disable狀態,這時必須手動才能把此連線埠回復為正常狀態。
不同於BPDU防護,BPDU Filter配置於全局/接口模式時,功能有所不同,當啟用於PortFast連線埠模式時,交換機將不傳送任何BPDU,並且把接收到的所有BPDU都丟棄;而啟用於全局模式時,連線埠在接收到任何BPDU時,將丟棄PortFast狀態和BPDU過濾特性,更改回正常的STP操作,BPDU Filter特性默認關閉。
當同時啟用bpduguard與bpdufilter時,bpdufilter優先權較高,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:防止新加入的交換機(有更低根網橋ID)影響一個已經穩定了(已經存在根網橋)的交換網路,阻止未經授權的交換機成為根網橋。工作原理:當一個連線埠啟動了此特性,當它收到了一個比根網橋優先值更優的BPDU包,則它會立即阻塞該連線埠,使之不能形成環路等情況。這個連線埠特性是動態的,當沒有收到更優的包時,則此連線埠又會自己變成轉髮狀態了。ROOT Guard在DP(designated port)指定連線埠上做,該連線埠就不會改變了,只會是DP了,這樣可以防止新加入的交換機成為root,該連線埠就變成了永久的DP了,(show spanning-tree inconsistentport),若新加入的交換機想成為root,則它的連線埠不能工作,直到這個新交換機委曲求全做RP為止。
LOOP GuardLOOP Guard主要用來避免阻塞連線埠錯誤地過渡到轉髮狀態而產生橋接環路的情況;當交換機在啟用loop guard特性的非指定連線埠上停止接收BPDU時,交換機將使得連線埠進入STP“不一致環路"(inconsistentports)阻塞狀態,當不一致連線埠再次收到BPDU時,連線埠將根據BPDU自動過濾到STP狀態。通過sh spanning-tree inconsistentports命令可以查看不一致連線埠狀態。loopguard特性默認開啟。
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功能。