你肯定知道這個經典網絡組網模型:接入-匯聚-核心-出口。接入多數是二層交換機為主,節約成本有的地方用傻瓜交換機,主要配置access隔離廣播域。為了防止環路,接入層,大多數人都會配置生成樹協議。STP(生成樹協議)是一種第2層協議,在網橋之間運行,旨在幫助建立無環路(loop-free)的網絡拓撲結構。運行STP(生成樹協議)的以太網設備部署在很多網絡里,很多在職的網絡工程師對STP都很眼熟,但是設置時的錯誤也多,甚至可以說是比比皆是。如果你能糾正這些生成樹問題,可以改善應用程序性能、縮短會聚時間、提高彈性以及減少網絡停運時間。今天我們來復盤一下網絡工程師在部署時常見的關于STP的問題,順便講講解決思路。
01沒有配置根網橋
許多企業組織對生成樹習以為常,僅僅接受默認的配置設置了事。這使得網絡環境中的所有交換機都使用32678這一默認的根網橋優先級值。如果所有交換機都用同一個根網橋優先級,那么MAC地址最低的那只交換機將被建立為根網橋。
許多網絡并沒有配置成單只交換機有一個較低的根網橋優先級,這會迫使那只核心交換機被建立為任何或所有虛擬局域網(VLAN)的STP根。
在這種情況下,MAC地址偏低的小型接入層交換機就有可能是STP根。這種情況勢必會增加一些性能開銷,導致會聚時間較長(由于根網橋重新建立)。
圖 |通常狀況下錯誤配置的生成樹環境
如圖所示,作為STP根的交換機實際上是核心交換機2,因為它擁有的MAC地址恰好低于核心交換機1。
一條最佳實踐就是為“主”(核心)交換機配置較低的STP優先級,那樣一只交換機將是根網橋,其他任何核心交換機會有高一點的優先級值;萬一主核心網橋失效,它們就會自動接過重任。萬一出現網橋故障,在交換機上配置“不同層次”的STP優先級將查明哪只交換機應該是根網橋。這樣一來,STP網絡運行起來就更具有確定性了。在核心思科交換機上,你應該用這個命令配置主根交換機:
Core-Sw1(config)# spanning-tree vlan 1-4096 root primary
在核心思科交換機上,你應該用這個命令配置次根交換機:
Core-Sw2(config)# spanning-tree vlan 1-4096 root secondary
這兩個命令的最終效果會將主交換機端口的網橋優先級設為8192,將次交換機的根網橋優先級設為16384。
02使用IEEE 802.1D
而未使用Rapid-STP
典型的IEEE 802.1D協議有下列默認計時器:15秒用于偵聽,15秒用于學習,20秒用于最長生存時間超時。生成樹中的所有交換機都應該認同這些計時器,不鼓勵你修改這些計時器。這些較舊的計時器對一二十年前的網絡來說也許夠用了,而如今,這些30秒至50秒的會聚時間實在太慢了。如今,許多交換機能夠支持快速生成樹協議(IEEE 802.1w),可是很少有網絡管理員啟用該功能。
快速生成樹協議(RSTP)大大縮短了會聚時間,其秘訣在于使用端口角色,使用通過指定端口在網橋之間發送消息這種方法,計算備用路徑,以及使用更快速的計時器。因而,如果可以使用RSTP,企業組織應該盡量使用。如果企業仍擁有無法使用RSTP的交換機,也別擔心:針對通向老式STP交換機的那些接口,RSTP交換機會切回到傳統的802.1D操作方式。
03阻塞的上行鏈路
生成樹的任務就是防止環路形成。為此,它學習了解通向根的次最優路徑,讓這些不太理想的鏈路處于阻塞模式。
如果交換機之間有多條并行路徑,那么其中一條路徑將被選擇進入阻塞模式,防止兩只交換機之間出現環路。這樣一來,擁有多條上行鏈路只適用于主鏈路故障切換,而不是為這條路徑提供更高的帶寬。
在上圖中,你可以看到交換機D的這種情況。通向交換機2的鏈路是通向根網橋的最優路徑,而通向交換機1的次最優路徑處于STP阻塞狀態。因此,只有一條鏈路的帶寬可供上行通信使用。
我們希望能夠利用這兩條上行鏈路來轉發流量、增加帶寬,那樣我們可以使用某種鏈路聚合技術,比如端口信道/以太網信道(LACP (IEEE 802.3ad),PAgP),或者某種多機箱端口信道(MC-LAG IEEE 802.3AX/AY),或者使用擁有虛擬端口信道(vPC)的思科Nexus交換機。
另一種選擇就是使用可堆疊交換機,并配置每個上行鏈路端口,連接至堆疊交換機中的不同交換機。由于堆疊交換機可以配置成它就是一只交換機,那樣可以使用端口信道。從生成樹的角度來看可以將兩條鏈路當成一條鏈路,這兩條鏈路都可以用來轉發流量。其他選擇能夠取得同樣這個效果,比如思科的6500虛擬交換系統(VSS)。
04超過STP的最大規模
我們都生活在這樣的城市:缺少統一協調的城市規劃,道路總是擁擠不堪、無法順暢通行。同樣,網絡常常像白楊樹那樣生長。網絡當中出現新增的設備,但是網絡很少重新設計架構,除非購置了一套全新的網絡。隨著新的交換機添加到局域網環境中,生成樹不斷隨之變化。一些大型網絡環境支持的應用程序依賴整個網絡上的第2層連接,這類網絡環境應該意識到這種生長。
要是網絡拓撲超過STP的最大規格,企業就會遇到問題。802.1D規范建議,生成樹的網橋跳數(bridge hop)不超過7段。如果有許多“雛菊鏈式”交換機,很可能出現這種情況。參閱上圖,就會發現連一種簡單的網絡拓撲也會超過生成樹的這一最大規模。像醫院和大學校園這些組織的網絡擁有龐大的局域網環境,跨整個網絡延伸單一的VLAN。它們應該認識到其生成樹的規模。這些組織應該將局域網交換環境的情況記入文檔,并且尋找過于頻繁的拓撲變更通知(TCN),從而定期檢查生成樹的規模。
05VTP域
企業組織面臨的困難常常牽涉VLAN隧道協議(VTP)以及它與STP有怎樣的關系。VTP這種機制可以幫助在單一局域網交換環境中建立和維護VLAN。VTP服務器可以建立新的VLAN,然后自動為VTP客戶機配置那些新的VLAN。隨后,那些VTP客戶端交換機上的端口被分配到這個新的VLAN。
VTP有助于讓VLAN編號在局域網交換環境中保持一致性。很早以來就存在與VTP有關的問題,許多人建議將VTP配置成透明模式。
一些企業組織抽時間來配置VTP域,并配置VTP服務器和客戶機。一些企業組織還在所有交換機上使用同一個VTP域名,即便在所有地方都是如此。如果使用第2層城域以太網服務,并將其配置成802.1Q干線,這就會開始引起問題。
上圖描述了這個問題。該例子中的交換機都有同樣的VTP域名。數據中心與災難恢復站點之間的連接使用了802.1Q干線,但是只允許三個VLAN接入這條干線。因此,災難恢復站點的交換機了解所有的VLAN,使用生成樹來確定城域以太網鏈路是VLAN 10、20和30通向根的路徑。然而,災難恢復站點的交換機認為,它是該干線上未使用的其他VLAN的STP根。這可能會引起問題,因為現在環境有兩只交換機認為自己是VLAN 40、50和60的STP根。
使用VTP的企業應該慎重使用,知道哪些交換機是VTP服務器或客戶機,使用VTP密碼,刪除不再提供服務的交換機上的配置和VTP信息,并且在不需要VTP的場合下考慮禁用VTP。
06STP與HSRP不一致
許多企業組織擁有冗余核心交換機,它們還為所連接局域網上的計算機充當第3層默認網關。像HSRP、VRRP、GLBP及其他這些首跳冗余協議為只配置一個單一默認網關IP地址的主機提供了默認網關冗余機制。如果HSRP活動默認網關不是為該VLAN充當STP根的同一只第2層/第3層交換機,問題就會隨之而來。上圖表示,交換機1是HSRP活動路由器,但它不是任何VLAN的STP根。交換機2是STP根,但它配置成HSRP備用路由器。這就形成了非最佳流量路徑,可能會導致核心交換機間的干線上出現更嚴重的擁塞狀況。使用首跳冗余協議的企業應該確保,活動默認網關與STP根相一致。
07沒有控制STP
由于那么多的企業組織只是接受交換機廠商在生成樹方面的默認設置,它們并沒有最優化控制STP。企業可能沒有配置生成樹,以防止無意中添加的未授權交換機形成環路。許多企業使用思科的PortFast接口設置,幫助為連接到我們知道不運行STP的計算機的端口迅速調出交換機端口。激活端口之前,讓端口連接至等待偵聽和學習狀態的計算機毫無意義。
結合使用PortFast和BPDU-Guard是最佳實踐,那樣如果通過該接口收到BPDU,它可以防御性地關閉端口。
激活這項功能的思科IOS全局命令如下:
Core-Sw1(config)# spanning-tree portfast edge bpduguard
激活這項功能的思科IOS接口配置命令如下:
Core-Sw1(config-if)# spanning-tree bpduguard enable
如果交換機已配置好了任何端口信道,那么配置以太網信道保護機制(EtherChannel guard)是個好主意。
激活這項功能的思科IOS全局命令如下:
Core-Sw1(config)# spanning-tree etherchannel guard misconfig
企業還應該在連接至服務器的所有接入交換機端口上使用根保護機制(Root Guard)。
激活這項功能的思科IOS接口配置命令如下:
Core-Sw1(config-if)# spanning-tree guard root
有時候,刀片服務器嵌入了以太網交換機,這類服務器也應該考慮到STP設計和配置當中。應該將這些交換機的配置與其他任何STP設備一視同仁,其配置應該補充網絡環境中的其他交換機。
審核編輯:湯梓紅
-
以太網
+關注
關注
40文章
5419瀏覽量
171598 -
交換機
+關注
關注
21文章
2637瀏覽量
99535 -
網橋
+關注
關注
0文章
130瀏覽量
16969 -
網絡工程師
+關注
關注
2文章
34瀏覽量
7898 -
STP
+關注
關注
0文章
42瀏覽量
10269
原文標題:如何防止交換機環路,網絡工程師來教你
文章出處:【微信號:通信弱電交流學習,微信公眾號:通信弱電交流學習】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論