華爲路由交換 OSPF

ospf 開放式最短路徑優先

簡介:ospf是一個動態路由協 在華爲設備上優先級爲60 在思科設備上優先級爲10 在一個大型網絡上 手動配置靜態路由的工作量非常大且複雜 這時可以使用動態路由協議讓設備自動生成協商生成路由。

router-id

router-id是在一個區域內標識一臺唯一的設備的 相當於我們的身份證號 他的格式和ip地址一樣

  • router-id 可以手工配置(建議採用手工)
  • 當沒有配置router-id時 他會在你的looback口上選擇一個ip地址小的作爲router-id
  • 當沒配置looback時 他會選擇一個物理接口ip地址小的作爲router-id

度量值

ospf使用開銷來作爲度量值 開銷越小路徑越優先
PC1要去網AR8他會走上面的路徑 因爲上面的路徑開銷小 爲2 而下面的路徑開銷爲10
就相當於一個人要去北京 可以用兩塊的就能到 也可以用10塊錢就能到 當讓選擇兩塊錢的了
度量值=參考帶寬/接口帶寬
在這裏插入圖片描述

DR/BDR

作用是收集LSA 再廣播給網絡中的所有鄰接關係的設備 相當於一個小組長 負責收集信息 然後在通告給所有組員 DR的存在 有效減少了廣播LSA時的所使用的帶寬

  • BDR是DR的備份
  • 選舉 優先級大的優先—>router-id大的優先
  • 優先級爲0的不參與選舉
  • 不能搶佔
  • 優先級默認爲1
    如圖
    AR1的接口爲DR 因爲優先級都相同就選舉router-id小的爲DR
    AR2的接口爲BDR 因爲選擇次優的爲BDR當AR1出現問題後 AR2自動變爲DR 然後再選舉過新的BDR
    在這裏插入圖片描述

三個表

  • 鄰居列表
    鄰居列表就是 啓動了ospf協議的路由器 連接了本路由器生成的鄰居表
    上圖 AR1的鄰居列表有 2.2.2.2 3.3.3.3 4.4.4.4 因爲這三個都是他的鄰居 其他同理
  • 鏈路狀態數據庫LSDB
    通過互相交互LSA生成的鏈路狀態數據庫
  • OSPF路由表
    使用SPF算法 運算出來的路由形成的路由表

四個網絡類型

  • 廣播型
    hello時間爲10秒一次 40秒超時 會選舉DR BDR

  • P2P
    hello時間爲10秒一次 40秒超時 不會選舉DR BDR

  • 非廣播型
    helo時間爲30秒一次 會進行DR BDR的選舉

  • P2MP
    hello時間30秒一次 會進行DR BDR的選舉 無需選舉DR BDR

五種報文

Hello 用於發現 建立 維護 鄰居關係
DD 用於同步鏈路狀態數據庫
LSR 用於請求自己沒有的LSA
LSU 用於對LSR回覆他需要的LSA 和用於鏈路更新
LSACK 用於對LSU的確認

六個常用LSA

  • LSA-1
    每個ospf路由器都會發出 通過組播地址 224.0.0.5發送
    描述本地接口的開銷和接口狀態
    只在本區域內泛洪
  • LSA-2
    由DR產生 描述俺媽長度 和網絡中存在哪些router-id
    通過組播地址 224.0.0.6發送
    只在本區域內泛洪
  • LSA-3
    由ABR產生 向去幹區域描述本區域內的網絡情況
  • LSA-4
    由ASBR所在區域內的ABR產生 向其他區域描述ASBR的位置
  • LSA-5
    由ASBR產生 向ospf網絡描述外部網絡
  • LSA-7
    由NSSA區域內的ASBR產生 描述外部網絡

七個狀態

  • down(失效)
    設備關機 或者端口關閉

  • init(初始)
    對方在我鄰居列表裏 但我不在對方的鄰居列表裏
    AR40通過hello報文發送出去 41收到這個hello報文會將對方存在自己的鄰居列表裏
    然後他就知道了對方的存在 但是對方不知道自己的存在 所以狀態爲init
    在這裏插入圖片描述

  • attempt(嘗試)
    在非廣播網絡中才有這個狀態

  • 2-way(雙向通道)
    -相互都存在對方的鄰居列表 也就是大家都知道對方的存在
    -41回覆一個hello報文 40看到自己在對方的鄰居列表裏就會變爲2-way狀態 將對方放在自己的鄰居列表裏
    -然後40會回覆一個hello包 41收到後看到自己在對方的鄰居列表裏 也會將狀態從init進入2-way
    -在此 鄰居狀態建立完成 在廣播型網路中開始選舉DR和BDR
    在這裏插入圖片描述

  • exstart(交換初始)
    發送DD報文 選取主從關係
    此狀態下交互的DD報文是沒有LSA的 只用於選舉主從關係
    在這裏插入圖片描述

  • exchange(交換)
    發送DD報文 進行鏈路狀態數據庫同步
    由主發出 dd報文 從做回覆 M=1則表示還有LSA沒發完 =0則表示此條爲最後一條
    在這裏插入圖片描述

  • loading(加載)
    經過上個狀態的dd報文交互 就知道自己沒有那些LSA
    發送LSR LSU LSACK 進行鏈路狀態數據庫同步
    到目前爲止 所有交互的LSA都是摘要信息 並不是一條完整詳細的
    只有LSU有完整詳細的LSA 這樣在交互過程中可以節省資源 沒必要吧整條都發過去 對方能識別就可以了
    你沒有的LSA 我再把他的詳細信息發給你
    在這裏插入圖片描述

  • full(全毗鄰)
    到此 大家的LSDB都相同了 你有的我也有 我有的你也有
    鏈路狀態數據庫完全同步
    進入鄰接狀態
    在這裏插入圖片描述

ospf路由類型和優先級

區域內路由–>區域間路由—>type1外部路由—>type2外部路由
type1=外部開銷+內部開銷
type2=外部開銷(默認爲ytpe2)

過程

理解了ospf的建立到生成路由的整個過程 可以更好的掌握ospf

第一步:通過組播地址224.0.0.5發送hello報文
第二步:發現鄰居的存在建立鄰居列表 建立起了鄰居關係 進入 2-way狀態
在這裏插入圖片描述
第三步:開始選舉DR BDR 上圖優先級默認爲1 都相同 所以比較router-id 小的爲DR 所以 40選爲DR 41 爲BDR
第四步:進入Exstart狀態 開始發送DD報文 此狀態下 DD報文是不包含LSA的 只用來選出 主/從關係
在這裏插入圖片描述
第五步:選出主從關係後進入exchange狀態 開始由主設備發起DD報文 從設備做回覆的方式交互LSA
注意:所有設備和DR交互LSA 再由DR組播發送出去 通告給網絡上的設備 作用相當於村長 將村民的信息收集起來再通過大喇叭告訴所有村民 而不是每個村民到處的去傳播 這樣有利於節省帶寬 所以 其他設備只需要和DR和BDR建立鄰接關係即可 BDR作爲DR的備份也需要和其他設別建立鄰接關係 但不會幹DR的工作 只要DR出現故障了他就立刻變成DR
第六步:LSA交互完後 開始向對方請求自己沒有的LSA 使用LSR報文請求 對方使用LSU報文回覆 我在回覆LSACK作爲確認收到回覆
第七步:LSDB同步完成 進入鄰接關係
注意:上圖中 其他設備只和DR BDR建立鄰接關係 非DR BDR之間建立的是鄰居關係 DR和BDR建立的是鄰接關係
分清楚鄰居和鄰接非常重要
第八步:到此大家的LSA已經同步完成了 設備會進行一定的運算 計算出路由來

區域和路由器角色

骨幹區域
區域0 爲骨幹區域 其他爲標準區域
注意:ospf中區域是以路由器上的接口劃分的
AR50 和AR54爲ASBR ABR是標準區域鏈接骨幹區域的路由器叫ABR 他用來向其他區域泛洪LSA3 用來告訴其他區域 本區域的網絡情況

在這裏插入圖片描述
如圖 AR56爲 ASBR 在和外部網絡系統連接的路由器叫ASBR 他負責泛洪LSA5 來告訴OSPF網絡 外部網絡的情況
而路由器54 他的角色爲ABR 他會泛洪LSA4 來告訴網絡中的所有人 如何能到達ASBR
在這裏插入圖片描述

特殊區域

特殊區域的存在可以減少LSA數目 因爲在一個大型網絡裏面會存在很多LSA 有LSA就會建立鏈路狀態數據庫 LSA越多 數據庫就越大 所以佔用的內存也就越多 消耗的資源也就越多 特殊區域有效減少一些不必要的LSA 節省內存和資源
如上圖 標準區域中會存在很多的LSA1 LSA2 LSA3 LSA4 LSA5 但是區域內只需要LSA1 LSA2 就足夠了

  • 末梢區域(stub)
    設置爲末梢區域
    只有LSA-1 LSA-2 LSA-3
    還能進一步減少 LSA-3

  • 非完全末梢區域(NSSA)
    設置在有ASBR存在的區域
    只有LSA-1 LSA-2 LSA-3 LSA-7
    能進一步減少LSA-3

ospf的知識不止這一點點 還有虛鏈路等很多有待深入研究的知識
小白菜 做筆記 如果問題多多指教

發佈了5 篇原創文章 · 獲贊 2 · 訪問量 123
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章