上期,我們講解了ospf的幾種lsa,分別是router lsa、network lsa、network-summary lsa、asbr-summary lsa、as-external lsa、nssa lsa,在知道幾種lsa的用途和泛洪範圍後,今天我們來了解下ospf的特殊區域。
再說特殊區域之前,要先回顧下ospf的區域概念。ospf區域分為骨幹區域(area 0)和非骨幹區域,而特殊區域就是由非骨幹區域變化得來的,其目的是為了減少區域內的lsdb大小,提高裝置的處理效能。其本質就是通過下發預設路由來代替3類lsa或5類lsa。
ospf存在四種特殊區域,分別是stub區域(末梢區域)、totally-stub(完全末梢區域)、nssa區域(非純末梢區域)、totally-nssa區域(完全非純末梢區域),下面具體來介紹每種特殊區域的相關情況。
stub區域:該區域不允許4類lsa、5類lsa的泛洪,但是允許1類lsa、2類lsa、3類lsa的泛洪,當其他區域有引入的外部路由,stub區域的abr會自動下發預設的3類lsa用於該區域路由器訪問其他區域的外部路由。當然特殊區域也會存在問題,以stub區域為例。
如上圖所示,ospf拓撲存在兩個區域,乙個是骨幹區域(區域0),乙個是非骨幹區域(area 1)且該非骨幹區域配置為了特殊區域(stub 區域)。ar1在區域0中,ar4在區域1中,ar2和ar3是abr。ar1和ar2之間的開銷是100,ar1和ar3之間的開銷是10,ar2和ar4之間的開銷是1,ar3和ar4之間的開銷是1。因為stub 區域是不允許4類lsa、5類lsa泛洪的,所以ar4在訪問其他區域的外部路由時,需要使用abr下發的預設3類lsa計算出的預設路由(每乙個abr都會產生一條預設的3類lsa),綜合以上條件即ar4上會學到兩條等價的預設路由。
ar1上現由一條外部路由1.1.1.1/32,並且引入進了ospf。那麼當ar4去訪問這條外部路由時,會有等價的兩台路徑即負載分擔,那麼去往ar2的哪部分流量走到就是次優路徑。
解決辦法:
①可以在ar2和ar4之間修改ospf的開銷值,讓ar4優選ar3的預設lsa
②可以在ar4上對下一跳為ar3的路由修改權重值(權重預設值為255,值越小,優先順序越高)
③如果允許的情況下可以在ar4上配置靜態路由(預設lsa計算的路由優先順序預設為150)
totally-stub區域:該區域不允許3類lsa、4類lsa、5類lsa泛洪,允許1類lsa、2類lsa、預設3類lsa泛洪,當其他區域有引入外部路由和其他區域的區域間路由,totally-stub區域的abr會下發預設的3類lsa,用於該區域路由器訪問其他區域的外部路由和區域間路由。
nssa區域:該區域不允許4類lsa、5類lsa的泛洪,但是允許1類lsa、2類lsa、3類lsa、7類lsa的泛洪。nssa區域可以存在asbr,即外部路由以7類lsa的形式引入,當7類lsa泛洪進骨幹區域和其他非骨幹區域時,要轉換為5類lsa(實際上7類lsa就是5類lsa的變形,本質上都是外部路由資訊)。當其他區域有引入的外部路由,nssa區域的abr會自動下發預設的7類lsa用於該區域路由器訪問其他區域的外部路由。
如上圖所示,ar4所在區域為nssa區域且引入了外部路由4.4.4.4/32。當其他區域的路由器(ar1)訪問nssa引入的外部路由,此時nssa區域的abr會講引入的7類lsa轉為5類lsa。如果存在多個abr,就由router-id大的路由器執行7轉5,並且5類lsa的adv router會修改為執行7轉5路由器的rid。
由於該5類lsa的adv router的改變會隱藏真正asbr的位置,所以如果直接通過adv查詢外部路由則容易產生次優路徑。如圖中所示ar3執行7轉5操作後,ar1訪問4.4.4.4/32就會走開銷更大的路徑。
如上圖所示,ar1引入一條外部路由192.168.1.0/24,由於ar3執行7轉5操作時同時使用命令將**位址清楚。會導致ar2可以在骨幹區域學到不攜帶**位址的5類lsa,可以在nssa區域學習到7類lsa,並且ar2修改了到達ar1的開銷,所以ar2會使用5類lsa去訪問192.168.1.0/24(即骨幹區域ar2——ar4——ar3)到達ar3後,ar3去往外部路由要將報文傳送給ar2,以此會形成環路。
這個問題是由操作配置引起的,即7轉5後不攜帶**位址產生的問題。因此得知為避免此類現象,7轉5後一定要有**位址的存在。
哪7類lsa一定攜帶**位址嗎?
預設的7類lsa是不攜帶**位址的;在nss區域的abr上引入的路由是不攜帶**位址的。
totally-nssa區域:該區域不允許3類lsa、4類lsa、5類lsa的泛洪,但是允許1類lsa、2類lsa、預設3類lsa、7類lsa的泛洪。該區域也可以存在asbr,和nssa區域相同要由abr執行7轉5的操作。當其他區域有引入外部路由和其他區域的區域間路由,totally-nssa區域的abr會下發預設的3類lsa和預設的7類lsa,用於該區域路由器訪問其他區域的外部路由和區域間路由。
ospf避免環路 OSPF出現環路的情況
1ospf防環設計 區域內 依靠spf演算法防環,依靠lsa1和lsa2,通過spf演算法計算去往每個網段的最優路徑 區域間 所有區域都必須與骨幹區域連線,區域間路由需經由骨幹區域中轉 區域外 lsa5的訪問依賴lsa4 2環路情況1 vlink設計不當,導致環路 2.1vlink情況 area 0...
ospf避免環路 OSPF出現環路的情況
1ospf防環設計 區域內 依靠spf演算法防環,依靠lsa1和lsa2,通過spf演算法計算去往每個網段的最優路徑 區域間 所有區域都必須與骨幹區域連線,區域間路由需經由骨幹區域中轉 區域外 lsa5的訪問依賴lsa4 2環路情況1 vlink設計不當,導致環路 2.1vlink情況 area 0...
ospf避免環路 OSPF學習筆記(一)
1 ospf 路由協議基礎 1.1 ospf 基本特點 1.支援無類域間路由 cidr 有類和無類是指路由通告,有類是按照 a b c 類位址分類進行路由 通告,ripv1 無類是指可以通過可變長子網進行路由通告。2.無路由自環 區域內無自環,通告和學習 type1 和 type2 的 lsa 是鏈...