鈕家偉
(中國人民解放軍火箭軍工程大學作戰保障學院,西安 710038)
在互聯網高速發展的時代,越來越多的網絡需求推動有線網絡與無線網絡不斷發展,不論是實體的光纖傳輸還是在空中的無線信道,網絡實質都是由一個個不同節點構成的大型網絡結構,其中路由器扮演了極為重要的角色。路由器能夠連通不同的網絡,支持多種協議的傳輸,還可對經由的網絡進行管理,這些功能離不開對路由器的配置,路由器的可配置性賦予了它多樣而強大的功能。如果在路由器的配置之中出現錯誤,那么路由器的可用性會大大降低。依托eNSP,結合路由器相關易發生的配置錯誤,進行分析與解決,能夠為常見的路由錯誤提供解決思路。
開放式最短路徑優先(Open Shortest Path First,OSPF)屬于廣泛使用的動態路由協議,是鏈路狀態路由協議的一種,具有匯總、層次區域劃分、支持變長子網掩碼(Variable-Length Subnet Mask,VLSM)、無路由環路和路由變化收斂速度快等特點。網絡在OSPF協議應用下,自行計算和生成大部分路由,基本不需要網絡管理員人工配置,網絡結構如果發生變化,協議能夠自動計算且路由將路由改正,極大地方便網絡管理。如果使用時不結合具體網絡應用環境,不做好細致的規劃,OSPF協議的使用效果將會大打折扣,甚至引發故障[1]。
OSPF是一種應用非常廣泛、基于鏈路狀態的動態路由協議,它具有區域(Area)化的層次結構,擴展性好,收斂速度快,適合部署在各種規模的網絡。在OSPF中,每臺路由器都必須有一個路由器標識(Router-ID)來標示自己。為使OSPF網絡更加穩定可靠,路由器通常會采用Loopback接口,并配置特定的網際互連協議(Internet Protocol,IP)地址,將此地址作為自己的Router-ID,不過還是要看具體的路由器情況。
OSPF協議屬于鏈路狀態協議。由每一個參與配置的路由器負責發現、維護與鄰居的關系,將保存的鄰居列表和鏈路費用用鏈路狀態更新(Link State Update,LSU)報文描述,通過可靠的泛洪與自治系統(Autonomous System,AS)內的其他路由器進行周期性的交換互動,得到整個自治系統的網絡結構;并通過AC邊界的路由器注入其他AS的路由信息,得到整個Internet的路由信息。每當鏈路狀態發生變化或隔一個特定時間時,鏈路狀態通告(Link-State Advertisement,LSA)會重新生成,路由器為實現路由的實時更新,通過泛洪機制將新LSA散布出去[2]。
網絡模擬軟件(eNSP)是一款免費的、可擴展的、圖形化操作的網絡仿真平臺,主要對企業網絡路由器、交換機進行仿真,完美呈現真實設備實景,支持大型網絡模擬,讓廣大用戶有機會在沒有真實設備的情況下能夠模擬演練,學習網絡技術。
在一定情況下,當由OSPF協議配置形成的路由網絡中出現錯誤配置時,通過對路由器進行分析,得出錯誤配置的具體情況和原因并給出解決方案,能夠有效地為路由配置錯誤排查給出思路[3]。在生活中的具體應用與實驗時的運行配置中,通常的工作重點在于將網絡的功能具體實現,不出現或者少出現錯誤,盡可能地提高整個網絡的性能,提升網絡運行的效率。在環境搭設完成、網絡架構實現后對發生的錯誤排查很少,若是產生路由配置錯誤或者網絡性能劣化的情況,沒有可以用以對照的實際案例與方法[4]。該實驗旨在設置貼近于生活實際的網絡配置錯誤情況,基于eNSP平臺進行模擬仿真,在仿真網絡結構中代入現實問題,真實地去思考、排查與解決配置錯誤,恢復網絡性能[5-6]。
2.2.1 背景信息與網絡仿真連接
模擬一小區以5個路由器作為骨干網絡(每臺路由器上又連接數個非骨干路由器作為用戶入網使用),以OSPF協議連通,由于顧慮負載問題,共劃分1個主干區域和2個非骨干區域[7]。小區分1、2、3期工程,骨干路由器與相應網絡也按照1、2、3期進行建設[8-9]。
期間,負責網絡建設的公司因為小區開發商重新招標進行更替,原公司被現負責公司替代,在交接信息、設備的過程中交接倉促,現負責公司只得到有限信息如下:路由器各端口的IP地址;OSPF區域(主干和非主干區域未分明)的數量及所包含的主要路由器。
依據條件,在eNSP仿真環境中搭建實驗網絡結構,如圖1所示。簡化后的小區網絡主干,連接其上的是各期工程所包含的單元樓內的用戶接口,包含有路由器、交換機等設備,由于與本實驗的關系并不緊密,在網絡結構的搭建、實驗的過程與方法的論證中將其省去。

圖1 網絡連接圖
由網絡結構可知:AR4與AR2屬于1期網絡,為OSPF的同1個Area,包含的端口為AR4的G0/0/1與AR2的G0/0/1;
AR2、AR1與AR3屬于2期網絡,為OSPF的同1個Area,包含的端口為AR2的G0/0/0、AR1的G0/0/0與G0/0/0、AR3的G0/0/1;
AR3與AR5屬于3期網絡,為OSPF的同1個Area,包含的端口為AR3的G0/0/0與AR5的G0/0/0。
2.2.2 端口地址配置
設備IP地址分配見表1。OSPF區域網段宣告見表2。

表1 IP地址分配表

表2 OSPF區域網段宣告表
使用ping命令,以AR4為起始點,依次訪問各路由器各端口,檢測整個網絡的聯通性并展現(見表3)。

表3 訪問情況表
可見,在訪問第1和第2期工程時都可通,在訪問第3期工程時請求超時,結論是AR4可以正常訪問第1和第2期工程,但無法訪問第3期工程。
3.2.1 問題分析
在命令行界面利用display ip routing-table命令,檢查各路由器路由表,觀察各路由器所存路由表情況,得到各路由器路由表見表4。

表4 各路由器路由表
經查路由表,2、3期網絡交界處AR3擁有最全的路由表。而AR1、AR2與AR4路由表不全,只保存有包含在1、2期網絡部分,缺失在第3期網絡的端口。AR5路由表中未出現OSPF路由,只有直連路由。
推測為OSPF區域配置的問題,因為連通范圍與路由表顯示和區域的劃分有很大相關性。使用display current-configuration命令對每個路由器關于OSPF配置相關信息進行查看,得到結果見表5。

表5 各路由器OSPF宣告表
由配置結果可見,第1、2、3期分別對應OSPF區域的area 0.0.0.0、area 0.0.0.1和area 0.0.0.2。因為area 0.0.0.2與area 0.0.0.0沒有相連,即非骨干區域沒有與骨干區域相連,導致非骨干區域無法加入到整體的OSPF區域之中,使用vlink-peer命令在區域間建立虛連接,使得第3期所處的網絡端口能夠加入到整個OSPF網絡之中。
vlink-peer的作用主要就是在邏輯上使2個不相連區域的路由器成為鄰居,滿足非骨干區域與骨干區域連接的要求,使得未直接連接骨干區域的非骨干區域加入到整體的OSPF區域之中,完成整個OSPF網絡的互聯互通[10]。
由返回數據可得出各個路由器都已經配置了Loopback地址,但是所使用的路由器為AR2220,根據用戶手冊,該路由器對Router id的默認配置方法為選取路由器上的最大地址,或者按照命令配置來決定Router ID,并不會簡單采用Loopback地址,為避免出現錯誤與重復工作,采取在相鄰路由器上使用display ospf peer的命令來顯示目標路由器的Router ID,結果見表6。

表6 鄰居路由器Router ID表
根據結果顯示,可以得出AR2的Router ID為192.168.1.1,AR3的Router ID為192.168.3.1。則可以繼續使用vlink-peer命令建立虛連接。
3.2.2 問題解決
在AR2、AR3上使用vlink-peer命令建立虛連接,使得AR3、AR4成為相鄰路由器,將OPPF的area 0.0.0.2與area 0.0.0.0連接起來,實現非骨干區域與骨干區域的連接,完成整個OSPF區域的互聯互通組網,所需命令如下:
<AR2>sys
[Huawei]ospf
[Huawei-ospf-1]area 1
[Huawei-ospf-1-area-0.0.0.1]vlink-peer 192.168.3.1<AR3>sys
[Huawei]ospf
[Huawei-ospf-1]area 1
[Huawei-ospf-1-area-0.0.0.1]vlink-peer 192.168.1.1
完成配置,待路由信息更新后,即可完成所有OSPF區域的共同組網。該路由配置錯誤產生的原因在于OSPF的區域劃分規則中,需要其他區域(Area)都與骨干區域(area-0.0.0.0)連接才能實現所有區域的互聯互通,否則的話,只有與骨干區域(area-0.0.0.0)相連的區域才能實現區域間(其中包含骨干區域)的互聯互通。AR2、AR3在area-0.0.0.1都有端口,可以視AR2、AR3在area-0.0.0.1有交集,可以以area-0.0.0.1為媒介建立連接。與area-0.0.0.1中將以192.168.1.1為Router ID的AR2利用vlink-peer命令建立虛連接192.168.3.1為Router ID的AR3,將AR2、AR3兩個路由器在邏輯上設置為相鄰的鄰居路由器以實現OSPF中area 0.0.0.2與area 0.0.0.0的連接,使得area 0.0.0.2能夠加入到骨干區域(area-0.0.0.0)中,實現所有區域,即area 0.0.0.0、area 0.0.0.1與area 0.0.0.2這3個OSPF區域間的互聯互通,完整實現該網絡結構所代表路由網絡的應有功能[11]。
3.2.3 結果驗證
利用display ip routing-table命令,檢查各路由器路由表,觀察各路由器所存路由表情況,各路由器路由表見表7。

表7 各路由器路由表
由各路由器路由表可知,各路由器已經得到并存下包含第1、2、3期工程所有應通節點的完整的路由表,可以得出OSPF已經在全區域實現,所有區域可以進行互聯互通。以AR4為起點,利用ping命令訪問各路由器端口用以檢驗各區域端口的連通性,訪問請求結果見表8。

表8 訪問情況表
由上述結果可見,第1、2、3期工程實現所有已包含節點的連通,解決了所存在的問題,使得以OSPF協議為基礎的路由網絡得以正常運行。
在整個實驗的設計與實現的過程中,關鍵點是問題的設置與解決方案的提出。本次實驗針對的是假設在網絡配置中的路由相關配置方面出現了錯誤,通過有限信息的獲取以及結合所學知識與設備手冊的摸排,得出錯誤配置的具體形式和原因,并針對性地提出解決方案,在方案指導下正確地解決問題、恢復或提升網絡路由相關配置的功能[12-13]。
本次實驗依托于eNSP平臺實現,在實際使用中,路由器模擬平臺更加全面可靠,且應用范圍更廣。
在問題設計中,選擇路由器配置OSPF區域劃分錯誤問題,這個問題在生活中很具代表性,包含多方面內容,具有很強的實踐意義。由于階段性工作的開展,接入設備增多,為維持網絡路由性能,降低單個路由器負載,劃分OSPF區域變得非常的必要,若事先規劃不當或者負責路由的項目組之間溝通不及時、網絡結構配置不合理等情況都會造成在OSPF區域劃分中產生錯誤配置,影響整個路由網絡的性能。
結合實際假設一個擁有3期工程的小區,由于用戶量大,路由接入量多,迫切需要OSPF區域的劃分,自然而然地形成3個OSPF區域。在這個假設的基礎上又增添項目交接、更換負責人等因素,增加這個問題的復雜性[14]。
項目交接后,項目新負責人組只得到網絡的結構、端口IP地址、所用協議及3個OSPF區域的簡單劃分而不知道具體劃歸的情況。考驗操作人在極為有限的信息下,通過命令與反饋進行可行性與性能的驗證,檢驗這個網絡是否存在問題或者是否出現網絡劣化情況[15]。
從第1期工程首臺設置的路由器開始嘗試對各期工程各個網絡節點的ping通,得出該路由器可以正常訪問第1和第2期工程,但無法訪問第3期工程。沒有達到應有的連通效果。
再者對各主要路由器進行路由表查表,發現其中幾個路由器的路由表有不同程度的缺失,由于使各路由器連通采用的是OSPF協議,針對該條件理清各路由器配置情況,得出為區域劃分的問題。
結合設備手冊,提出采用虛連接命令的方法,在掌握關鍵信息后對涉及的路由器進行配置,得出區域內路由器各節點全部連通的結果,符合該小區3期工程路由網絡的功能需求。
利用仿真平臺,能夠盡可能地節省用于實驗及論證的時間消耗與物資代價,由于其貼近真實的仿真特性,所得結果具有實際意義,在現實中使用相應的設備,其操作配置是一致的[16-17]。在eNSP平臺的基礎上,利用虛擬的網絡配置進行實驗設計與研究,通過問題設計、分析與解決等過程,結合所學知識、設備手冊與命令反饋等的幫助,成功對以OSPF區域劃分錯誤為代表的路由錯誤配置進行研究與分析,能夠為從理論和實踐方面解決網絡連接配置存在的功能與劣化問題提出新的解決思路,有助于解決網絡連接配置問題方法的拓展與革新,給予實際應用以新鮮血液與靈感啟發。