ospf避免環路 OSPF出現環路的情況

2021-10-18 12:26:30 字數 3685 閱讀 7338

1ospf防環設計

區域內:依靠spf演算法防環,依靠lsa1和lsa2,通過spf演算法計算去往每個網段的最優路徑;

區域間:所有區域都必須與骨幹區域連線,區域間路由需經由骨幹區域中轉;

區域外:lsa5的訪問依賴lsa4

2環路情況1:vlink設計不當,導致環路

2.1vlink情況

area 0被area1分割,ar3與ar6建立vlink,ar1的loopback ip為1.1.1.1,ar7為7.7.7.7,其他類推。

ar7的loopbackip通過network發布,ar1的loopbackip同理

ar3與ar6做了vlink,這樣雙邊的area0就連線起來了。ar1可以學到ar7的路由,ar7也可以學到ar1的路由。

2.2訪問分析

ar1的1.1.1.1訪問ar7的7.7.7.7

1.因為ar3是abr,因此ar1訪問7.7.7.7的下一跳為ar3,(因為7.7.7.7是area0的lsa,因此不走ar2)

2.ar3與ar6做了vlink,但資料走向並不一定走vlink,ar3是abr,它有area0(r1和r7所在的area0)和傳輸區域area1的全部lsa,所以計算路徑時會都考慮area0和area1裡的lsa,r5通告的lsa(7.7.7.7)cost是1,r6通告的cost是10,因此接受r5的,去r5走r4最近。

3.r4選擇區域間路由選擇cost最小下一跳r5

4.r5根據area0的lsa1選擇直連r7的下一跳。

5.因此,ar1(1.1.1.1)訪問ar7(7.7.7.7)的路徑ar1--ar3--ar4--ar5--ar7.

2.3回程分析(環路)

ar7(7.7.7.7)訪問ar1(1.1.1.1)

1.因為ar6是abr,通過vlink學到1.1.1.1/32的area0的lsa1,因此r7去往1.1.1.1走ar6(注:ar5訪問1.1.1.1也走r7,再走ar6)

2. ar6根據傳輸區域area1裡的cost分析,走cost最小的ar5

3.ar5是abr,但是沒有vlink,ar1(1.1.1.1/32)是骨幹區域area0的路由,訪問走骨幹區域area0,因此下一跳給ar7,形成環路。

4.ar7-->ar1的路徑ar7--ar6--ar5--ar7,形成環路。

2.4結論

1.vlink設計不當會形成環路。

2.abr會忽略從非骨幹區域收到的lsa3/4,他只會放入database中而不會被加入spf演算法。在vlink情況下,使用area0中的置v的路由器作為訪問其他非直連區域的出口,但如果abr是vlink的端點,則可以根據area1中的lsa3計算到骨幹區域的路由,即area0以置v的路由器作為出口,而置v路由器本身可以按照非骨幹區域的lsa3計算到骨幹區域的路由。

3.vlink代表控制平面,資料平面不一定經過vlink,資料平面和控制平面是分開的。

3環路情況2:nssa區域引入外部路由引發環路

3.1nssa情況

裝置ar1的loop0位址為1.1.1.1,其他裝置類推。

裝置ar1的loop0位址通過network發布

裝置ar1的loop1位址為100.100.100.100,通過import direct發布,模擬nssa引入外部路由。

area1 為nssa區域。

3.2    正常情況下分析

1.在nssa區域中,ar2和ar3都為abr,同時也是asbr,r3的router id大,因此由r3進行lsa7/5翻譯。

2.ar2收到area1的lsa7(100.100.100.100),收到area0的lsa5(100.100.100.100),根據lsa5(fa=1.1.1.1,cost-type=2,cost=1,advrtr=3.3.3.3)和lsa7(fa=1.1.1.1,cost-type=2,cost=1,advrtr=1.1.1.1)的比較,根據選路規則,外部成本一致(cost=1)的情況下比對內部成本,lsa5的內部成本是ar2去往fa經過area0的路徑成本,lsa7的內部成本是ar2去往fa經過area1的路徑成本。從圖中可以看出,lsa7優於lsa5。因此路由的下一跳為10.10.12.1(ar1的介面ip)。

3.同理ar4收到lsa5 lsa5(fa=1.1.1.1,cost-type=2,cost=1,advrtr=3.3.3.3),ar4上fa位址的下一跳是ar2(lsa3學到),因此ar4訪問100.100.100.100的路徑為ar4-->ar2-->ar1.

3.37/5翻譯強制抑制fa位址後,出現環路

如果有要求area0訪問外部路由只能經過ar3,出了通過修改cost外,還可以通過在ar3上進行7/5時抑制fa位址。nssa suppress-forwarding-address,該命令將7/5後的fa位址設定為0.0.0.0.

1.那麼現在在r2上lsa對比如下:

lsa5(fa=0.0.0.0,cost-type=2,cost=1,advrtr=3.3.3.3)

lsa7(fa=1.1.1.1,cost-type=2,cost=1,advrtr=1.1.1.1)

根據選路規則,外部成本一致(cost=1)的情況下比對內部成本,lsa5的fa為0.0.0.0,因此內部成本是ar2去往advrtr=3.3.3.3的成本,cost=1,lsa7的內部成本是ar2去往fa經過area1的路徑成本cost=10,因此選擇lsa5路由,使用area0**,因此下一跳為ar4。

2.ar4去往100.100.100.100的下一跳為ar3(lsa5學到),ar3的下一跳為ar2(lsa7),ar2的下一跳又為ar4,形成環路。

3.4總結

1.ospf 區域內是無環的,

2.區域間若是lsa3路由,可以通過區域結構和水平分割來避免環路(當然也要考慮vlink環路情況)

3.若是lsa5/7路由,則通過fa路由來避免環路,但fa位址可能會在傳遞過程中被修改,丟失原始路徑資訊,則可能導致環路。

ospf rfc2328與rfc1583混用導致的環路參考第5節。

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 是鏈...

ospf避免環路 OSPF四種特殊區域

上期,我們講解了ospf的幾種lsa,分別是router lsa network lsa network summary lsa asbr summary lsa as external lsa nssa lsa,在知道幾種lsa的用途和泛洪範圍後,今天我們來了解下ospf的特殊區域。再說特殊區域之...