你還不知道OSPF?快來看看OSPF的這些知識點!


OSPF基原理

  • OSPF(Open Shortest Path First)開放式最短路徑優先,基於SPF算法的鏈路狀態路由協議
  • OSPF優點:
    • 路由信息傳遞與路由計算分離
    • 基於SPF算法(最短路徑樹)
    • 以“累計鏈路開銷”作爲選路參考值

RIP在大型網絡中部署面臨的問題

RIP特性 問題
逐跳收斂 收斂慢,故障恢復時間長
傳聞路由更新機制 缺少對全局網絡拓撲的瞭解
最多有效跳數爲15 環形組網中,使遠端路由不可達
以“跳數爲度量” 存在選擇次優路徑的風險

OSPF相比於RIP的優化

RIP問題 優化
收斂慢,故障恢復時間長 收到更新->計算路由->發送更新 ,更改爲,收到更新->發送更新->計算路由
缺少對全局網絡拓撲的瞭解 路由器基於拓撲信息,獨立計算路由
最多有效跳數爲15 不限定跳數
存在選擇次優路徑的風險 將鏈路帶寬作爲選路參考值
  • OSPF中收到路由信息放入DB(數據庫)中,將數據庫轉發給鄰居,同時放入協議RIB(路由表),計算路由,再加入RIB(全局路由表)
  • RIP收到路由信息,放入DB中(RIP的DB和協議RIB相同),計算好路由後,放入RIB(全局路由表),再轉發給鄰居

OSPF工作過程

  • 鄰居建立
  • 同步鏈路狀態數據庫
  • 計算最優路徑

鄰居建立過程

  • Router-ID用於在自治系統中,唯一標識一臺運行OSPF的路由器
    • 如果沒有指定Router-ID,會優先從本地的環回口中選擇最大的IP地址
    • 如果沒有本地環回口地址,會從物理接口中選擇最大的IP地址作爲Router-ID

發現並建立鄰居

  • 發送Hello報文
  • Hello報文的作用:
    • 鄰居發現:自動發現鄰居路由器
    • 鄰居建立:完成Hello報文中的參數協商,建立令居關係
    • 鄰居保持:通過保活機制檢測鄰居運行狀態

OSPF發現並建立鄰居

  • 雙方互相發送Hello報文,收到報文後,狀態從Down進入Init,然後回覆帶有鄰居Router-ID的Hello報文,鄰居收到後,狀態進入2-Way,鄰居關係建立
  • 維護鄰居關係
    • 廣播和P2P每間隔10秒互相發送Hello報文,40秒(間隔時間的4倍)未收到Hello報文,就認爲鄰居出現故障
    • NBMA和P2MP每間隔30秒互相發送Hello報文,120秒未收到Hello報文就認爲鄰居出現故障
  • Hello報文通過組播(224.0.0.5)發送給其他路由器

實驗1:如下拓撲

在這裏插入圖片描述

  • 配置OSPF,並抓包查看報文
[AR1]int lo 1
[AR1-LoopBack1]ip ad 1.1.1.1 24
[AR1-LoopBack1]int g0/0/0
[AR1-GigabitEthernet0/0/0]ip ad 12.1.1.1 24
[AR1-GigabitEthernet0/0/0]q
[AR1]ospf router-id 1.1.1.1
[AR1-ospf-1]area 0
[AR1-ospf-1-area-0.0.0.0]net 12.1.1.1 0.0.0.0
[AR1-ospf-1-area-0.0.0.0]net 1.1.1.1 0.0.0.0

[AR2]int lo 1
[AR2-LoopBack1]ip ad 2.2.2.2 32
[AR2-LoopBack1]int g0/0/0
[AR2-GigabitEthernet0/0/0]ip ad 12.1.1.2 24
[AR2-GigabitEthernet0/0/0]q
[AR2]ospf router-id 2.2.2.2
[AR2-ospf-1]area 0
[AR2-ospf-1-area-0.0.0.0]net 2.2.2.2 0.0.0.0
[AR2-ospf-1-area-0.0.0.0]net 12.1.1.2 0.0.0.0
  • 報文分析

請添加圖片描述
請添加圖片描述

鏈路狀態信息

  • 鏈路狀態信息LSA包含的信息:
    • 鏈路的類型
    • 接口IP地址及掩碼
    • 鏈路上所連接的鄰居路由器
    • 鏈路的帶寬(開銷)
  • OSPF支持多種網絡協議
    • P2P:PPP的網絡類型。僅兩臺路由互聯,支持廣播和組播
    • 廣播:Ethernet-II的網絡類型。兩臺或兩臺以上的路由器通過共享介質互聯,支持廣播和組播
    • NBMA:幀中繼(FR)的網絡類型。兩臺或兩臺以上的路由器通過VC互連,不支持廣播和組播
    • P2MP:多個點到點的集合,支持廣播、組播

OSPF度量方式

  • 接口的cost=參考帶寬/實際帶寬
  • 更改cost:
    • 直接在接口下改配置ospf cost 10(接口視圖下)
    • 修改參考帶寬(所有路由器都要修改,確保選路一致性)

計算路徑開銷累加是累加進接口的開銷值

報文類型及作用

Type 報文名 功能
1 Hello 發現和維護鄰居關係
2 Database Description 交互鏈路狀態數據庫摘要
3 Link State Request 請求特定的鏈路狀態信息
4 Link State Update 發送詳細的鏈路狀態信息
5 Link State Ack 發送確認報文

LSDB同步過程

在這裏插入圖片描述

  • 第一份發出的DD包,不包含LSA的任何信息,用來選舉主從
    • I位表示是否爲第一個數據包
    • M位表示之後是否還有DD包
    • MS位爲1表示爲主,爲0表示爲從(通過比較Router-ID,大的爲主)

在這裏插入圖片描述

  • RTB中的路由信息如果RTA中沒有,RTA會發送LSR請求報文,獲取STB中的RTA沒有的路由信息,RTA的路由信息RTB都有,RTB則直接進入Full
  • RTB收到RTA的請求報文,會把RTB中沒有的路由信息放在LSU中,發送給RTA
  • RTA收到LSU後,更新自己的路由信息表,恢復LSAck報文確認
  • Full表示鄰接關係建立成功

DR與BDR的選舉與作用

  • 鄰接關係個數=[n*(n-1)]/2

DR與BDR的作用

  • 減少鄰接關係
  • 降低OSPF協議流量

DR與BDR選舉

  • DR與BDR的選舉是基於接口
  • 接口的DR優先級越大越優先
  • 接口的DR優先級相等時,Router-ID越大越優先

更改網絡類型ospf network-type p2p

OSPF域內路由

Router-LSA

描述P2P網絡

在這裏插入圖片描述

描述MA網絡或NBMA網絡

在這裏插入圖片描述

Network-LSA

在這裏插入圖片描述

  • display ospf lsdb router查看一類LSA
  • display ospf routing查看協議路由表

SPF計算

  • 構建SPF樹
    • 根據Router-LSA和Network-LSA中的拓撲信息,構建SPF樹幹
  • 計算最優路由
    • 基於SPF樹幹和Router-LSA、Network-LSA中的路由信息,計算最優路由

OSPF域間路由

區域間路由傳遞

Network-Summary-LSA

在這裏插入圖片描述

  • 三類LSA是由ABR(邊界路由器)產生的,用來描述區域間的路由信息
  • 三類LSA是在區域內泛洪,
  • 爲本區域產生一條相鄰區域的三類LSA

區域間路由防環

  • 非骨幹區域必須與骨幹區域相連
  • ABR收到非骨幹區域的LSA不做計算
  • 三類LSA傳遞規則

虛連接Vlink

  • 進入OSPF進程ospf 1
  • 進入中間區域area 1
  • 虛連接vlink-peer 對端的Router-ID

OSPF外部路由

外部路由引入

  • 命令:import-route static

AS-External-LSA

在這裏插入圖片描述

  • ASBR產生,在整個OSPF域內泛洪
  • 引入外部路由,一條AS External LSA只能宣告一條外部路由

ASBR-Summary-LSA

在這裏插入圖片描述

  • ABR產生,在區域內泛洪
  • 告訴其他設備如何去往ASBR
  • 通告到ASBR的開銷

外部路由類型

Type Cost
第一類外部路由 AS內部開銷值+AS外部開銷值
第二類外部路由 AS外部開銷
  • 默認爲第二類外部路由
  • 第二類會先比較外部開銷,外部開銷相同,會比較內部開銷
  • 第二類會可能會造成次優路徑
  • External-Type1的優先級高於External-Type2(Type1比Type2更精確)

次優路徑

Forwarding Address

  • 字段爲0
  • 字段非0時,接口類型不能爲P2P或P2MP接口、不能是靜默接口、ASBR設備到達目的網段的下一跳地址所在網段被髮布在OSPF中
  • 靜默接口:不再收發報文
  • 當三個條件都成立時,FA字段爲非零,字段爲ASBR到達目的網段的下一跳的地址

OSPF特殊區域

Stub區域和Totally Stub區域

  • 傳輸區域
  • 末端區域

Stub區域

  • 配置:區域中的每臺設備的OSPF進程下,進入區域,輸入stub
  • 不引入外部路由
  • 沒有四類、五類LSA
  • 有一條三類的默認路由,有三類的明細路由

Totally Stub區域

  • 配置:只需要在ABR上配置,進入OSPF進程,進入區域,輸入stub no-summary
  • 不能引入外部路由
  • 有一條三類默認路由,沒有三類明細、四類、五類LSA,

NSSA區域和Totally NSSA區域

NSSA區域

  • 允許外部路由
  • 七類LSA只能在NSSA區域中傳遞
  • 七類LSA傳遞給ABR,ABR轉換爲五類LSA,進行OSPF全區域泛洪
  • 有三類的默認路由、明西路由

Totally NSSA區域

  • 沒有三類明細路由,有一條三類的默認路由

總結

LSA類型 通告路由器 LSA內容 傳播範圍
Router LSA(Type-1) OSPF Router 拓撲信息、路由信息 本區域內
Network LSA(Type-2) DR 拓撲信息、路由信息 本區域內
Network-Summary-LSA(Type-3) ABR 域間路由信息 非Totally Stub區域(區域內)
ASBR-Summary-LSA(Type-4) ABR ASBR的Router ID以及到ASBR的開銷 非特殊區域(區域內)
AS-External-LSA(Type-5) ASBR 路由進程域外部路由 (非特殊區域)OSPF進程域
NSSA LSA(Type-7) ASBR NSSA域外部路由信息 (Totally)NSSA區域

區域間路由彙總和外部路由彙總

區域間路由彙總

  • 配置:在邊界路由器,進入OSPF進程,進入區域,輸入abr-summary 172.16.0.0 255.255.248.0

外部路由彙總

  • 配置:在ASBR上,進入OSPF進程,輸入bsbr-summary 172.17.0.0 255.255.248.0

以上內容均屬原創,如有不詳或錯誤,敬請指出。
本文作者: 壞壞
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章