■ 枝江市職業教育中心 楊華
編者按:隨著辦公信息化的建設不斷推進,越來越多的節點接入到各單位的網絡中。導致單位的網絡設備不斷增加、升級更新,但隨之而來的是網絡管理維護難度越來越大。原先提供的物理信息點的數量遠遠不能滿足用戶入網的需求。本文將以常見的幾種物理環路場景作深入分析。
針對網絡環路的解決辦法通常是用戶自行添加普通交換機進行簡單互聯,以滿足上網的需要。但由于用戶對網絡技術的缺乏,很容易造成網絡環路。
該種技術需要交換機必需具備的功能和配置技術。以太網鏈路聚合通過將多條以太網物理鏈路捆綁在一起形成一條以太網邏輯鏈路,實現增加鏈路帶寬的目的,同時這些捆綁在一起的鏈路通過相互動態備份,可以有效地提高鏈路的可靠性。如圖1所示,Switch1與Switch2之間通過三條以太網物理鏈路相連,將這三條鏈路捆綁在一起,就成為了一條邏輯鏈路。這條邏輯鏈路的帶寬最大可等于三條以太網物理鏈路的帶寬總和,增加了鏈路的帶寬;同時,這三條以太網物理鏈路相互備份,當其中某條物理鏈路down,但在具體實施過程中,某些用戶簡單認為在兩交換機端口之間用兩根以上的網線互聯起來就可以增加物理帶寬,從100MB就可以達到300MB以上的帶寬,導致網絡環路的產生。
最開始交換機或服務器為了達到高可用性都使用雙機熱備技術,即VRRP(虛擬路由冗余協議)技術來解決該問題,以實現主、備核心三層交換設備之間動態、無停頓的熱切換。現在最新的交換機虛擬化技術已越來越流行,如圖2所示,各個廠商的名稱叫法都不一樣,但實現功能一樣,都是將兩臺或者兩臺以上的交換機虛擬成一臺,各廠商虛擬化名稱如下:
思 科 -VSS、華 三 -IRF、華 為 -CSS、銳 捷 -VSU、神州-VSF。
當使用了虛擬化技術后,兩臺核心可看作一臺交換機,這時,兩個核心連接至匯聚的兩根纖就可以做成鏈路捆綁,交換機就可以不用生成樹而實現鏈路冗余,且兩根鏈路帶寬會疊加。當然在配置過程中,如果操作不當,也很容易造成網絡環路。

圖1 交換機之間鏈路聚合

圖2 交換機之間虛擬化

圖3 三臺交換機之間環路
注意:(1)以上兩種技術實現最好先做好配置,然后再進行物理連接,避免在配置未生效前就已經環路了。(2)在下連交換機等網絡設備時,對避免環路的配置也是不一樣了,如果在鏈路聚合的狀態下,由于只是鏈路虛擬成一條,所以就形成三臺設備構成的物理環路,只能啟動生成樹協議進行阻塞。如果是在虛擬化的狀態下,由于兩臺核心交換機虛擬成一臺,就形成了兩臺設備的物理環路,最優的配置是再進行鏈路聚合,實現提高帶寬、鏈路備份的功能。
在一個交換網絡中有可能會出現單點失效的故障,所謂單點失效,指的是由于網絡中某一臺設備的故障,而影響整個網絡的通信。為了避免單點失效,提高網絡的可靠性,可以通過構建一個冗余拓撲來解決,如圖3所示。但是,一個冗余的拓撲,又會給我們的網絡造成環路,而產生其它的影響。為了解決二層環路問題,而設計了SPT協議。但在具體實施過程中,由于用戶缺乏對網絡技術知識的認識,為了網絡通信的可靠性,相當然的使用兩臺二層交換機通過LAN互聯起來,然后再分別用網線連接到三層交換機上,如圖2所示,導致網絡環路的產生。
注意:(1)不是所有二層設備都支持生成樹協議,若設備支持,還分有的廠商設備是默認開啟的,有的需要手動開啟的。此時開啟的是最普通的SPT協議,在同一VLAN中始終有一條鏈路處于堵塞狀態,鏈路利用效率不高,特別是在多VLAN中資源浪費較大,這時需手動開啟多生成樹協議MSTP。(2)在端口聚合中還需要生成樹樹協議嗎,因為端口聚合將多條鏈路虛擬成一條鏈路,邏輯上不存在冗余鏈路,所以無須生成樹的干預。(3)在虛擬化中,兩臺設備虛擬成一臺設備,也不符合生成樹的的開啟條件,當然也不會激活它。
(1)某些用戶在工作室內布置網線,由于操作失誤經常會將同一根網線插在同一個VLAN里的交換機兩端口上,形成網絡環路。環路的產生不是直接發生成可配置的交換機上,但是對于上層交換機會造成直接影響,這時就要用到端口的環路檢測功能,通過追蹤從本端口發出的環回檢測包來判斷該端口下是否有回路。
注意:因為環路僅發生在一臺設備上,根據生成樹協議的工作原理,它是無法啟用發揮作用的,因為STP至少應在兩臺設備上才會觸發。所以這種網絡環路配置生成樹是沒有意義的。
(2)環路發生在兩臺交換機之間,如果同時配置了生成樹和環路檢測功能,因為生成樹協議作用在前,它會先阻塞一個端口,避免環路的產生。環路檢測也不會檢測到環路。若沒有啟用生成樹協議,環路檢測會檢測到環路而采取相應措施。
可以在終端上安裝協議分析軟件監控當前網絡的運行狀況,我們知道IPID(IP標識)一樣,說明屬于同一數據包,如果在網絡中同一數據包出現多次的話,說明網絡中存在IP分片或網絡中存在環路,經過抓包分析在數據包中未發現IP分片數據包,而且環路的話,其TTL值肯定會逐漸減小至0,綜合以上分析就可以斷定存在網絡環路。
但并不是所有的機器都發IPID重復的數據包,環路交換機與發IPID重復數據包的機器并不存在對應關系,也就是說環路的位置并不能確定。既然我們不能分析出環路所在,如何才能找出環路位置,從而排除它?我們可以有采取物理隔離的分析方法,首先讓一半的客戶端在線,另一半與網絡斷開,進行抓包,如有相同的IPID廣播包,說明環路在這一半中,如沒有,說明環路發生在另一半,依此類推,逐漸縮小范圍,最終查出環路交換機為止。
登陸到網絡設備查看端口流量,若清楚知道網絡流量大小,就可以判斷出網絡是否出現異常。若不清楚網絡流量的話,則可以通過多次查看端口流量使用情況來進行判斷是否環路。
注意:如果只有一臺設備的一個端口出入方向流量較大,可能是單端口環回。如果只有一臺設備的兩個端口流量較大,可能是本設備兩個端口環回; 如果某端口只有單方向流量,只有出或者只有入,需要重點排查,因為環路有可能在該端口的上下游設備。
一般來說,當網絡中有環路存在,大量數據包被轉發,交換機指示燈閃爍的與正常時有明顯不同,可用“狂閃”來形容,有經驗的網絡管理者,可以根據交換機指示燈閃爍的方式縮小范圍,直到找出環路的交換機。