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