內容簡介
生成樹協議是應用非常廣泛的一種二層協議,它可以在二層網絡中有效的防止廣播風暴。但是,濫用生成樹協議,或者是在很大規模的二層網絡中使用生成樹協議,不僅會使網絡變得脆弱不堪,而且還有可能造成更嚴重的環路問題。本案例爲大家講述一個企業的非結構化存儲區域的網絡改造,讓大家瞭解一個設計有嚴重缺陷的網絡,是如何引發生成樹問題的?到後來又用了什麼技術才徹底消除了網絡的缺陷的。
本文同步視頻講解已經發布到了51cto學員
這裏是課程鏈接:http://edu.51cto.com/course/12603.html
一、需求分析
1.1、網絡環境介紹
某大型企業局域網建設了一張NAS(網絡附屬存儲)存儲區域的網絡,該NAS區域網絡有連接線全部連接到辦公六個區域的匯聚交換機上。因爲負責網絡建設的技術團隊技術能力薄弱,NAS區域網絡從投運至今故障不斷,非常不穩定。
NAS區域的拓撲圖如下圖所示:
如圖所示:NAS區域網絡有兩臺核心交換機,型號爲ZTE-8982。有6個辦公區域(資產管理區、NAS管理區、營銷管理區、生產管理區、綜合業務區、財務系統區)都連接在NAS核心交換機上。NAS機頭服務器通過兩臺二層萬兆的交換機直接就接在NAS網絡核心交換機上。
NAS機頭一共有6個(圖上只畫了一臺NAS機頭作爲示意圖),每個NAS機頭爲1個辦公區域提供共享存儲服務。每個區域只能訪問自己的NAS機頭服務器,不能訪問其他區域的NAS機頭服務器。
NAS機頭詳細網絡示意圖:
爲了達到這一需求,負責建設網絡的技術團隊採用了使用二層VLAN隔離的方式。即把每個區域和NAS機頭劃入到一個VLAN,然後不做VLAN之間的路由。由於這6個辦公區域投運的先後順序不一樣,所以每個區域與NAS網絡的互聯方式也不一樣。總的來說,6個辦公區域連接NAS的方式有三種。
第一種連接方式,NAS機頭的網關地址配在NAS核心交換機上,在覈心交換機上針對NAS網關配置VRRP。再在辦公區的匯聚交換機上配置指向NAS機頭的靜態路由。
資產管理區就是這樣一種情況。爲該區域提供服務的NAS機頭(簡稱資產NAS)接入VLAN 181,IP地址是10.220.181.4/28。它的默認網關位於NAS核心交換機,地址是10.220.181.1/28,這應該是一個VRRP的虛擬地址。在NAS核心交換機上的VLAN 181接口地址分別是10.220.181.2/28和10.220.181.3/28。
在每臺資產管理區匯聚交換機上也分別配置了VLAN 181的接口地址,地址分別是10.220.181.5/28、10.220.181.6/28、10.220.181.7/28。關於資產管理區的IP地址圖如下圖所示:
第二種連接方式,NAS機頭的網關位於辦公區域的匯聚交換機上,NAS交換機只負責做VLAN二層透傳功能。營銷管理區、生產管理區、綜合業務區、財務系統區這4個區域都是用該方式來連接的。按照建設該網絡的技術人員的說法,這種方式可以免於在NAS核心交換機和辦公區域匯聚交換機上配置路由。
下圖以綜合管理區爲例來說明這種連接方式。
第三種連接的方式,NAS機頭的網關和辦公區域的網關位於NAS核心交換機,例如NAS管理區。
在這裏我必須要說明一下:從上面幾張圖上來看,兩臺NAS核心交換機之間都畫了心跳線,但實際上連接心跳線的接口是被手動shutdown了,所以可以理解爲心跳線沒有連接。另外,ZTE-8982-2與所有業務區域匯聚交換機的接口也是手工shutdown的。現在所有辦公業務區域訪問NAS機頭-Server,實際上都是從ZTE8982-1去訪問的。
1.2、網絡改造需求
在網絡建設的時候,由於公司經費問題,6個辦公區域的匯聚交換機都是從之前的項目中剩下的設備,所以型號都不統一。下表中列出了6個辦公區域的交換機型號和NAS核心交換機的型號:
辦公區域 | 交換機型號 | 主機名 | 管理IP地址 |
NAS核心交換機 | ZTE-8982 | NAS-Core-8982-1 NAS-Core-8982-2 | 10.221.143.25 10.221.143.26 |
資產管理區 | Cisco 6509 | BG-ZCGL-6509-1 BG-ZCGL-6509-2 | 10.192.33.1 10.192.33.2 |
營銷管理區 | Cisco 6509 | BG-YXGL-6509-1 BG-YXGL-6509-2 | 10.192.33.3 10.192.33.4 |
綜合業務區 | H3C 9512 | BG-ZHYW-9512-1 BG-ZHYW-9512-2 | 10.192.33.5 10.192.33.6 |
財務系統區 | DELL Force 10 C300 | BG-CWXT-C300-1 BG-CWXT-C300-2 | 10.192.33.7 10.192.33.8 |
生產管理區 | Cisco 6509 | BG-SCGL-6509-1 BG-SCGL-6509-2 | 10.192.33.9 10.192.33.10 |
NAS管理區局域網 | DELL Force 10 C300 | BG-WG-C300-1 BG-WG-C300-2 | 10.192.33.11 10.192.33.12 |
由於設備廠商不統一,就存在着一些協議兼容性的問題(當然,這可能是扯蛋的)。例如ZTE-8982設備與Force 10的STP就無法兼容,所以使用Force 10設備的辦公區域就只能和NAS區域跑單機。現在ZTE-8982之間互聯的心跳線也沒有連接,如果一邊出了故障,只能是手動切換主用和備用通道。即使是使用H3C、Cisco的區域,與ZTE-8982的STP兼容,但是因爲廣播區域較大,設備中也會有廣播流量過大的情況,當一個VLAN出現廣播流量過大的時候,會影響NAS核心交換機的性能,從而影響其他VLAN的正常訪問。
所以,本次網絡改造的需求如下:
1、更換NAS區域核心交換機爲Cisco 6509,消除STP不兼容的問題;並連接心跳線,將原ZTE設備上存在的網關地址改爲HSRP。
2、在NAS區域核心交換機連接業務交換機的接口上配置廣播流量抑制。
二、前置知識點
2.1、生成樹協議
生成樹協議(Spanning Tree Protocol,簡稱STP)就是把一個環形的結構改變成一個樹形的結構。它用來將物理上存在環路的網絡,通過一種算法,在邏輯上阻塞一些端口,來生成一個邏輯上的樹形結構。如圖所示:
對於三臺交換機構成環路的網絡,在使用STP協議後,交換機SW2與SW3連接鏈路的一個端口被協議從邏輯上阻塞,這條鏈路也不能再傳輸數據了。當正常的通信鏈路發生故障時,被邏輯阻塞的鏈路被重新激活,使得數據能從這條鏈路正常傳輸。所以說:使用生成樹協議是在物理環路上防止廣播風暴的唯一可靠協議。
那麼,到底是以什麼依據來判斷端口阻塞的呢?
生成樹的算法比較複雜,但歸納起來,大體分爲三點:
1、選舉根網橋(根交換機)
只有網橋ID最小的交換機會成爲根交換機,網橋ID有兩部分構成:優先級+交換機自身MAC地址。先比較優先級,最低者將成爲根橋;如果通過優先級無法選舉出根橋,就比誰的MAC地址十六進制的數值最小。
2、在非根交換機上選舉根端口
選舉出來根網橋以後,就開始選舉根端口。通常情況下,與根橋直接連接的端口將成爲根端口,如圖所示:
根端口是不會被阻塞的端口。
3、選舉指定端口
指定端口也是不會被阻塞的端口。如果是根網橋,則根網橋上的端口全是指定端口,換句話說就是根網橋上的端口都不會被阻塞。如果是非根網橋,則按照如下順序選舉指定端口:
l 根路徑成本較低
l 所在的交換機的網橋ID的值較小
l 端口ID的值較小
如圖所示:
不過從圖上來看,即使非根網橋SW3選舉出了指定端口,但也沒有什麼實際意義,因爲它對端的SW1的端口被阻塞,這條鏈路仍然無法轉發數據。
通過上面的描述我們可以看出來:生成樹的所有算法都是圍繞着根橋展開的。所以,在實際工作中,必須要對根橋進行嚴格的規劃。而且我們也能夠得出一個結論:根橋上的端口和非根橋上與根橋直接連接的端口都不會被阻塞,所以數據流量一定會到達根橋。通常情況下:根橋都選擇在匯聚層或者核心層設備上。
普通的生成樹協議算法是以交換機爲單位,但通常情況下考慮網絡中劃分了多個VLAN,所以在選擇生成樹類型的時候,都要考慮爲每個VLAN擁有一個生成樹。常用的協議有PVST+和MSTP,不過前者是Cisco的私有協議,後者纔是IEEE通用協議。
2.2、交換機端口廣播抑制
當端口接收到大量的廣播、單播或多播包時,就會發生廣播風暴。轉發這些包將導致網絡速度變慢或超時。藉助於對端口的廣播風暴控制,可以有效地避免硬件損壞或鏈路故障導致的網絡癱瘓。默認狀態下,廣播、多播和單播風暴控制被禁用。
配置交換機端口廣播抑制的命令如下:
Switch(config)#interface <interface-id> Switch(config)#storm-control { broadcast | multicast | unicast } level/bps/pps |
各命令的具體描述:
Ø level:指定阻塞端口的帶寬上限值。當廣播、多播或單播傳輸佔到寬帶的多大比例(百分比)時,端口將阻塞傳輸。取值範圍爲0.00 ~ 100.00。如果將值設置爲100%,將不限制任何傳輸;如果將值設置爲0%,那麼,該端口的所有廣播、多播和單播都將被阻塞。
Ø level-low:指定啓用端口的帶寬下限值。該值應當小於或等於下限值,當廣播、多播或單播傳輸佔用帶寬的比例低於該值時,端口恢復轉發傳輸。取值範圍爲0.00 ~ 100.00。
Ø bps:bps可表示爲bit/s。指定端口阻塞的傳輸速率上限值。當廣播、多播或單播傳輸達到每秒若干比特(bps)時,端口將阻塞傳輸。取值範圍爲0.0~10 000 000 000.0。
Ø bps-low:指定端口啓用的傳輸速率下限值。該值應當小於或等於下限值,當廣播、多播或單播傳輸低於每秒若干比特(bps)時,端口將恢復傳輸。取值範圍爲0.0 ~ 10 000 000 000.0。如果數值較大,也可以使用k、m或g等詞頭來表示。
Ø pps:指定端口阻塞的轉發速率上限值。當廣播、多播或單播傳輸速率達到每秒若干包(pps)時,端口將阻塞傳輸。取值範圍爲0.0 ~ 10 000 000 000.0。
Ø pps-low:指定端口啓用的傳輸速率下限值。該值應當小於或等於下限值,當廣播、多播或單播轉發速率低於每秒若干包(pps)時,端口將恢復傳輸。取值範圍爲0.0 ~ 10 000 000 000.0。如果數值較大,也可以使用k、m或g等詞頭來表示。
當廣播風暴發生的時候,默認處理的方式是過濾外出的傳輸,並不發送SNMP陷阱。選擇shutdown關鍵字,在風暴期間將禁用端口;選擇trap關鍵字,當風暴發生時,產生一個SNMP陷阱,向網絡管理軟件發出警報。
配置命令如下:
Switch(config-if)#storm-control action { shutdown | trap } |
2.3、前綴列表與分發列表
在IGP網絡中,通常情況下可以使用前綴列表和分發列表來執行路由過濾。前綴列表是可以在不同的廠商之間通用的技術,而分發列表是Cisco、Force 10設備專用技術。如果是H3C、華爲等設備,可以用route-policy來代替分發列表。
1、設置前綴列表
前綴列表的設置命令如下:
ip prefix-list <list-name> [node node-seq] permit/deny network/ length <option> length |
各個參數解釋如下:
n list-name:設置前綴列表的名稱,必須設置;
n node:列表中各個規則的排列順序,如果不設置,則列表中第一個規則的順序的node值爲5,步長也爲5;
n permit/deny:如果使用permit,則設置列表爲白名單;如果使用deny,則設置列表爲黑名單。通常情況下,permit比deny常用得多;
n network:設置需要調整的網段和子網掩碼長度。
在設置前綴列表的時候,要特別注意一個問題,那就是:你到底是需要對單個網段還是對這個網段下的子網也進行匹配。如果只需要單獨匹配一個網段,例如你只需要匹配10.112.20.0/24,則設置前綴列表的命令如下:
ip prefix-list Permit_112 permit 10.112.20.0/24 |
那麼,這個前綴列表就只能匹配10.112.20.0/24,它下面的子網都無法匹配。即10.112.20.0/25、10.112.20.0/26等都不能匹配。
ip prefix-list Permit_112 permit 10.112.20.0/24 le 32 |
如果需要匹配它的子網,則應該這樣設置前綴列表:
在前綴列表中加上“le”選項,就可以表示匹配的子網掩碼長度範圍,如果是 24 le 32,則表示匹配的子網掩碼長度是從 /24到/32。
2、設置分發列表
分發列表(distribute-list)是用於控制路由更新的一個工具,只能過濾路由信息,不能過濾LSA。(所以說對距離矢量路由協議比較適用,如:RIP、EIGRP。像OSPF 鏈路狀態路由協議,IN方向(影響本地路由表,但LSDB裏是有的),OUT方向不起作用; 但對本地始發路由可以過濾,原因是通過路由的重分發,而不是LSA傳遞)。
配置分發列表的命令是,先定義一個ACL,匹配需要傳遞或禁止傳遞的網段,再在路由進程下配置分發列表,調用之前的ACL。具體的使用方式見第5.3小節。
三、第一次改造方案設計
3.1、方案總體設計思路
根據要求,該網絡現在健壯性不足,而且並沒有能從實質上有熱備份的功能。因爲兩臺ZTE-8982之間的心跳線尚未連接,所以VRRP、STP實際上並沒有發揮功能。該方案的設計思路是:更換ZTE-8982爲Cisco 6509,讓HSRP、STP發揮作用,做到真正熱備份的功能。
另外,爲了防止廣播流量過大或者是廣播風暴影響設備性能,進而影響到其他業務區域,所以,要在交換機的所有接口上配置交換機端口廣播抑制,設置廣播的最大通過量。
3.2、實施之前的準備
備份原ZTE交換機的配置
使用SecureCRT軟件登錄到ZTE設備的CLI界面,同時在SecureCRT上設置記錄日誌,然後使用Show run命令將ZTE設備的配置命令保存在文本文件中。此舉一方面是爲了分析ZTE交換機中原有的配置構成,另一方面也是爲了割接失敗的時候方便回退操作。
測試兩臺待更換的交換機
只有確保設備能夠正常工作了以後,纔可對設備進行上架操作。所以,必須對兩臺Cisco 6509E設備進行前期測試,保證設備電源、引擎板卡、數據業務板卡沒有故障,運行完全正常以後纔可進行設備的更換。測試的方式已經在案例1裏面講過了,同樣的就是Cisco 6509E。
還有,在正式割接開始之前,必須要保證所有業務區域的網絡業務是完全正常的。如果發現網絡業務有問題,必須把故障完全排除以後才能開始割接,否則出了問題到底是誰的責任就說不清楚了。
3.3、新設備上架並規劃互聯接口
所有的業務區域匯聚交換機與NAS核心交換機之間的連接用的都是千兆的多模光纖,所以本次Cisco 6509E上面也不需要準備太多功能板卡。保證每臺Cisco 6509上各有一塊24口的光纖板卡即可。
新規劃的Cisco 6509E-1互聯接口如下:
接口編號 | 接口類型 | 允許穿越的VLAN | 描述 |
Gi 2/1 | Trunk | 181 | 連接資產管理區匯聚A |
Gi 2/2 | Trunk | 158 | 連接綜合業務區匯聚A |
Gi 2/3 | Trunk | 161 | 連接生產管理區匯聚A |
Gi 2/4 | Trunk | 162 | 連接營銷管理區匯聚A |
Gi 2/5 | Trunk | 157 | 連接財務系統區匯聚A |
Gi 2/6 | Trunk | 163 | 連接NAS管理區匯聚A |
Gi 2/7 | Trunk | 158、161、162、157、163、247 | 連接NAS萬兆交換機A |
Gi 2/23 | Trunk | All | 心跳線 |
新規劃的Cisco 6509E-1互聯接口如下:
接口編號 | 接口類型 | 允許穿越的VLAN | 描述 |
Gi 2/1 | Trunk | 181 | 連接資產管理區匯聚B |
Gi 2/2 | Trunk | 158 | 連接綜合業務區匯聚B |
Gi 2/3 | Trunk | 161 | 連接生產管理區匯聚B |
Gi 2/4 | Trunk | 162 | 連接營銷管理區匯聚B |
Gi 2/5 | Trunk | 157 | 連接財務系統區匯聚B |
Gi 2/6 | Trunk | 163 | 連接NAS管理區匯聚B |
Gi 2/7 | Trunk | 158、161、162、157、163、247 | 連接NAS萬兆交換機B |
Gi 2/23 | Trunk | All | 心跳線 |
3.4、配置生成樹協議
考慮到該網絡環境中設備來自不同的廠商,所以應該考慮使用IEEE通用的生成樹協議,即MSTP。在配置生成樹協議的時候,將Cisco 6509E-1設置爲根橋,將Cisco 6509E-2設置爲備份根橋。
Cisco設備、Force 10設備上配置MSTP的命令如下:
spanning-tree mode mst spanning-tree mst configuration instance 1 vlan 158,161,162,157,163,247 |
H3C設備上配置MSTP的命令如下:
stp region-configuration regin-name NAS_Area instance 1 vlan 158 161 162 157 163 247 active region-configuration |
在NAS核心Cisco 6509E-1上設置爲根橋,Cisco 6509E-2上設置未非根橋:
NAS-Core-6509-1(config)#spanning-tree mst 1 priority 0 NAS-Core-6509-2(config)#spanning-tree mst 1 priority 4096 |
3.5、配置端口廣播抑制
廣播風暴主要發生NAS核心交換機與各個業務區域的匯聚交換機上,所以在NAS交換機上所有連接匯聚交換機的接口上配置端口廣播抑制。
Cisco 6509-A、B使用相同的命令,配置命令如下:
interface gi 2/1 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/2 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/3 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/4 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/5 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/6 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/7 storm-control broadcast level 30.00 storm-control action shutdown |
四、第一次改造失敗原因分析
4.1、失敗的現象
在生成樹協議都配置好以後,綜合業務區這一個區域的廣播風暴仍然是無法避免,導致Cisco 6509-B上連接綜合業務區匯聚交換機的接口因爲廣播風暴過大而被shutdown。經過查看拓撲圖才發現,綜合業務區內部的交換機數量較多,使用這種常規的方式配置生成樹是無法正常收斂的。
而且當綜合業務區發生廣播風暴的時候,其他幾個業務區域仍然會受到風暴的影響,所以也沒有達到本次改造的目的。
4.2、沒有完全掌握整個網絡環境
整個網絡環境中,只要你把一個VLAN在全網打通,那麼這個VLAN內的所有交換機都要參與生成樹。特別是營銷管理區、生產管理區、綜合業務區、財務系統區這4個區域。其中以綜合業務區的交換機數量最多。在當初割接的時候,只考慮了綜合業務區的匯聚層和核心層設備,沒有考慮綜合業務區內的接入層交換機。在這種情形下,想要讓STP協議正常工作,就需要規劃好生成樹,比如使用多級生成樹等技術。但是這種方式難度有點大。
另外,綜合業務區、營銷管理區、生產管理區、綜合業務區、財務系統區這5個區域的網關全部做在了NAS核心交換機上,二層廣播域的範圍從接入層直達核心層。從網絡設計的原則上來講,這個設計本身就是有缺陷的。
五、第二次改造方案設計
5.1、方案總體設計思路
本來是想重新規劃一下生成樹的,但是怕二層自計算的這種協議穩定性不好,所以這一次方案採用了二層改三層的設計。設計思路如下:
1、把每個NAS-Server的網關全部轉移到NAS核心交換機上;一共6個區域的NAS-Server,就配置6個網關;
2、每個業務區域匯聚交換機與NAS核心交換機之間的鏈路改爲三層IP互聯鏈路,並與NAS核心交換機運行OSPF路由協議;
3、在每個業務區域匯聚交換機上配置策略把路由過濾了,只收互聯網段和自己區域的NAS-Server網段。
把NAS核心交換機與匯聚交換機之間的鏈路改爲三層鏈路以後,由於第三層(網絡層)自帶隔離廣播功能,就可以把廣播完全限制在各個業務區域內部。讓它們自己的匯聚交換機和接入交換機去處理生成樹。NAS核心就可以完全和生成樹絕緣,同樣達到了控制廣播的效果。
在每個業務區域配置路由過濾,不收取其他業務區域NAS-Server的地址,也同樣可以達到隔離網絡業務的作用。
5.2、規劃互聯IP地址
爲6個辦公區域分配的NAS-Server的網段和網關如下表所示:
區域名稱 | NAS VLAN | NAS 網段 | NAS 網關 |
資產管理區 | 247 | 10.220.247.0/28 | 10.220.247.1 |
綜合業務區 | 248 | 10.220.247.16/28 | 10.220.247.17 |
生產管理區 | 249 | 10.220.247.32/28 | 10.220.247.33 |
營銷管理區 | 250 | 10.220.247.64/28 | 10.220.247.65 |
財務系統區 | 251 | 10.220.247.96/28 | 10.220.247.97 |
NAS管理區 | 252 | 10.220.247.112/28 | 10.220.247.113 |
NAS-Server的網關仍然配置在覈心Cisco 6509E上。
各個區域到核心Cisco 6509E之間的互聯地址。這裏需要把二層接口改爲三層接口。對於H3C設備,使用Access接口,因爲對端Cisco 6509是三層接口,仍然可以達到阻斷廣播的效果。
NAS核心交換機Cisco 6509E-1與各區域交換機互聯接口與互聯地址規劃表:
本端接口 | 對端設備 | 對端接口 | 本端IP | 對端IP |
Gi 2/1 | 資產管理區 Cisco6509E-1 | GigabitEthernet 2/1 | 10.220.128.189/30 | 10.220.128.190/30 |
Gi 2/2 | 綜合業務區 H3C 9512-1 | GigabitEthernet 2/1 | 10.220.128.193/30 | 10.220.128.194/30 |
Gi 2/3 | 生產管理區 Cisco6509E-1 | GigabitEthernet 3/0/48 | 10.220.128.197/30 | 10.220.128.198/30 |
Gi 2/4 | 營銷管理區 Cisco6509E-1 | GigabitEthernet 4/1 | 10.220.128.201/30 | 10.220.128.202/30 |
Gi 2/5 | 財務系統區 Force 10 C300 | GigabitEthernet 3/1 | 10.220.128.205/30 | 10.220.128.206/30 |
Gi 2/6 | NAS管理區 Force 10 C300 | GigabitEthernet 3/1 | 10.220.128.209/30 | 10.220.128.210/30 |
NAS核心交換機Cisco 6509E-2與各區域交換機互聯接口與互聯地址規劃表:
本端接口 | 對端設備 | 對端接口 | 本端IP | 對端IP |
Gi 2/1 | 資產管理區 Cisco6509E-1 | GigabitEthernet 2/1 | 10.220.128.213/30 | 10.220.128.214/30 |
Gi 2/2 | 綜合業務區 H3C 9512-1 | GigabitEthernet 2/1 | 10.220.128.217/30 | 10.220.128.218/30 |
Gi 2/3 | 生產管理區 Cisco6509E-1 | GigabitEthernet 3/0/48 | 10.220.128.221/30 | 10.220.128.222/30 |
Gi 2/4 | 營銷管理區 Cisco6509E-1 | GigabitEthernet 4/1 | 10.220.128.225/30 | 10.220.128.226/30 |
Gi 2/5 | 財務系統區 Force 10 C300 | GigabitEthernet 3/1 | 10.220.128.229/30 | 10.220.128.230/30 |
Gi 2/6 | NAS管理區 Force 10 C300 | GigabitEthernet 3/1 | 10.220.128.233/30 | 10.220.128.234/30 |
5.3、配置NAS核心交換機
對於NAS的核心交換機來說,首先要爲NAS-Server配置默認網關,在這裏使用HSRP路由協議配置。調整生成樹,讓根橋和HSRP的活躍設備位於Cisco 6509E-1。由於核心交換機與NAS接入交換機都是Cisco交換機,所以生成樹協議直接使用Rapid-PVST。
NAS-Core-Cisco6509E-1配置命令如下:
spanning-tree node rapid-pvst spanning-tree vlan 1-1005 prio 0
interface Vlan247 ip address 10.220.247.2 255.255.255.240 standby 247 ip 10.220.247.1 standby 247 priority 105 standby 247 preempt standby 247 track 1 decrement 20 ! interface Vlan248 ip address 10.220.247.18 255.255.255.240 standby 248 ip 10.220.247.17 standby 248 priority 105 standby 248 preempt standby 248 track 1 decrement 20 ! interface Vlan249 ip address 10.220.247.34 255.255.255.240 standby 249 ip 10.220.247.33 standby 249 priority 105 standby 249 preempt standby 249 track 1 decrement 20 ! interface Vlan250 ip address 10.220.247.66 255.255.255.240 standby 250 ip 10.220.247.65 standby 250 priority 105 standby 250 preempt standby 250 track 1 decrement 20 ! interface Vlan251 ip address 10.220.247.98 255.255.255.240 standby 251 ip 10.220.247.97 standby 251 priority 105 standby 251 preempt standby 251 track 1 decrement 20 ! interface Vlan252 ip address 10.220.247.114 255.255.255.240 standby 252 ip 10.220.247.113 standby 252 priority 105 standby 252 preempt standby 252 track 1 decrement 20 ! |
NAS-Core-Cisco6509E-2配置命令如下:
interface Vlan247 ip address 10.220.247.3 255.255.255.240 standby 247 ip 10.220.247.1 standby 247 preempt ! interface Vlan248 ip address 10.220.247.19 255.255.255.240 standby 248 ip 10.220.247.17 standby 248 preempt ! interface Vlan249 ip address 10.220.247.35 255.255.255.240 standby 249 ip 10.220.247.33 standby 249 preempt ! interface Vlan250 ip address 10.220.247.67 255.255.255.240 standby 250 ip 10.220.247.65 standby 250 preempt ! interface Vlan251 ip address 10.220.247.99 255.255.255.240 standby 251 ip 10.220.247.97 standby 251 preempt ! interface Vlan252 ip address 10.220.247.115 255.255.255.240 standby 252 ip 10.220.247.113 standby 252 preempt |
配置連接資產管理區匯聚設備的互聯地址,並配置OSPF。
NAS-Core-Cisco6509E-1配置命令如下:
interface GigabitEthernet2/1 no switchport ip address 10.220.128.189 255.255.255.252 router ospf 100 router-id 10.221.143.15 passive-interface Vlan248 passive-interface Vlan249 passive-interface Vlan250 passive-interface Vlan251 passive-interface Vlan252 network 10.220.128.189 0.0.0.0 area 0 network 10.220.247.2 0.0.0.0 area 0 network 10.220.247.18 0.0.0.0 area 0 network 10.220.247.34 0.0.0.0 area 0 network 10.220.247.66 0.0.0.0 area 0 network 10.220.247.98 0.0.0.0 area 0 network 10.220.247.114 0.0.0.0 area 0 network 10.221.143.15 0.0.0.0 area 0 |
NAS-Core-Cisco6509E-2配置命令如下:
interface GigabitEthernet0/2 no switchport ip address 10.220.128.213 255.255.255.252 router ospf 100 router-id 10.221.143.16 passive-interface Vlan248 passive-interface Vlan249 passive-interface Vlan250 passive-interface Vlan251 passive-interface Vlan252 network 10.220.128.213 0.0.0.0 area 0 network 10.220.247.3 0.0.0.0 area 0 network 10.220.247.19 0.0.0.0 area 0 network 10.220.247.35 0.0.0.0 area 0 network 10.220.247.67 0.0.0.0 area 0 network 10.220.247.99 0.0.0.0 area 0 network 10.220.247.115 0.0.0.0 area 0 network 10.221.143.16 0.0.0.0 area 0 |
其他區域的互聯地址配置和OSPF發佈路由與資源管理區類似,在這裏就不再贅述了。
5.4、配置業務區匯聚交換機
以資產管理區爲例,我們來看一下各個業務區域應該如何配置。
在業務區域的匯聚交換機上,首先要配通與NAS核心交換機的互聯地址,然後配置OSPF,把業務區域的網段和互聯地址網段發佈到OSPF中。最後,Cisco、Force 10交換機配置ACL與分發列表(Distribute-List)過濾路由;H3C交換機使用Prefix-List和Route-Policy過濾路由。
資產管理區Cisco 6509E-1配置命令如下:
interface GigabitEthernet2/1 no switchport ip address 10.220.128.190 255.255.255.252
//配置ACL,包含本機允許接收的網段(本區域NAS-Server網段與Cisco 6509E的1、2號機與NAS核心交換機的互聯地址網段) access-list 1 permit 10.220.247.0 0.0.0.15 access-list 1 permit 10.220.128.188 0.0.0.3 access-list 1 permit 10.220.128.212 0.0.0.3 access-list 1 permit 10.192.0.0 0.0.255.255
router ospf 100 router-id 10.192.33.1 network 10.220.128.190 0.0.0.0 area 0 network 10.220.181.0 0.0.0.255 area 0 distribute-list 1 in //在分發列表中調用序號爲1 的ACL |
資產管理區Cisco 6509E-2配置命令如下:
interface GigabitEthernet2/1 no switchport ip address 10.220.128.212 255.255.255.252
//配置ACL,包含本機允許接收的網段(本區域NAS-Server網段與Cisco 6509E的1、2號機與NAS核心交換機的互聯地址網段) access-list 1 permit 10.220.247.0 0.0.0.15 access-list 1 permit 10.220.128.188 0.0.0.3 access-list 1 permit 10.220.128.212 0.0.0.3 access-list 1 permit 10.192.0.0 0.0.255.255
router ospf 100 router-id 10.192.33.2 network 10.220.128.212 0.0.0.0 area 0 network 10.220.181.0 0.0.0.255 area 0 distribute-list 1 in //在分發列表中調用序號爲1 的ACL |
對於綜合業務區使用的是H3C 9512設備,不支持在OSPF中使用分發列表,應該使用前綴列表過濾路由。
interface Vlanif1001 ip address 10.220.128.194 255.255.255.252 # interface GigabitEthernet3/0/48 port link-type access port access vlan 1001
//配置前綴列表,包含允許接收的網段 ip ip-prefix NAS index 10 permit 10.220.247.16 28 28 less-equal 32 ip ip-prefix NAS index 20 permit 10.192.0.0 16 16 less-equal 32 ip ip-prefix NAS index 30 permit 10.220.128.192 30 30 less-equal 32 ip ip-prefix NAS index 40 permit 10.220.128.216 30 30 less-equal 32
ospf 100 filter-policy ip-prefix NAS import //調用列表過濾路由 area 0.0.0.0 network 10.220.128.192 0.0.0.3 network 10.220.161.0 0.0.0.255 network 10.192.33.5 0.0.0.0 # |
在這裏,其他區域的配置都與上述兩個區域類似,就不再贅述了。
六、驗證和測試
6.1、驗證各區域收到的路由
每個區域只能收取到各自區域的NAS-Server網段和與NAS核心交換機互聯地址的網段,不能收到其他區域NAS-Server的網段。
下表顯示資產管理區收到的OSPF路由
ZCGL-C6509-1#show ip route ospf ……
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 6 subnets, 4 masks O 10.220.128.212/30 [110/21] via 10.220.128.189, 00:01:49, Ethernet0/1 O 10.220.247.0/28 [110/11] via 10.220.128.189, 00:01:49, Ethernet0/1 |
該業務區域可以收到資產管理區Cisco 6509-2與核心之間的互聯網段10.220.128.212/30和NAS-Server網段10.220.247.0/28,其他區域的路由都收不到,所以資產管理區滿足需求。
下表顯示綜合業務區收到的OSPF路由
<ZHYW-9512-1>dis ip routing-table protocol ospf Public Routing Table : OSPF
Destination/Mask Proto Pre Cost NextHop Interface 10.192.33.0/24 O_ASE 150 1001 10.220.128.193 vlan 1001 10.220.128.216/30 O_ASE 150 1001 10.220.128.193 vlan 1001 10.220.247.16/30 O_ASE 150 1001 10.220.128.193 vlan 1001 |
6.2、其他測試
本次網絡改造中,除了資產管理區以外,其他5個區域的NAS-Server更換了IP地址,所以與ISCSI、DFS相關的服務需要重新掛載,當然,這個也就不屬於網絡工程師管理的範圍了。但是網絡割接完成以後,ping測試和Tracert測試是必要的,不但要保證網絡ping通,在Tracert的時候也要保證來回路徑一致。
七、經驗總結
本案例把失敗的經驗拿出來講,實際上就是爲各位同行們提一個醒:在針對這種大型網絡的時候,一定要把廣播域的範圍控制得越小越好。這張網絡在最開始的設計就是有問題的,那就是太注意“節約”IP地址了,而把幾個業務區域的二層廣播範圍直接泛洪到了核心交換機。如果廣播域太大,單純使用常規的生成樹配置是無法控制住廣播風暴的;而配置CST,多級生成樹,不但概念難以理解,而且配置起來效果恐怕也不好。
所以,只要設備性能支持,該做三層的地方,你還得做。本來嘛,三層上的東西本來就比二層上的東西更容易控制。
在該案例中,將各個區域匯聚交換機的與核心交換機之間的鏈路改爲了三層鏈路,就可以從根本上把廣播域“關”在各個業務區內部。即使某個區域有廣播風暴,它也不會影響到其他的區域。我在想啊,可能當時設計這張網的人也想到了匯聚與核心之間應該用三層鏈路,但那個“每個區域只能訪問自己區域的NAS-Server”讓那羣設計者犯難了,因爲他們認爲:“如果是路由打通了,你就必須在匯聚設備上寫大量的ACL來做訪問控制。”但是他們忘了一點:ACL不僅是可以控制節點之間的訪問,還能控制路由的收發呢。你不讓這個區域訪問其他區域的NAS-Server,那就把其他路由過濾掉就OK了,比你寫一大篇的ACL輕鬆得多。