一、概述
- OSPF全稱:Open Shortest Path First,開放式最短路徑優先協議。
- OSPF協議是一種基於鏈路狀態的內部網關路由協議。
二、特點
- 大中型網絡上使用最爲廣泛的IGP協議
- 鏈路狀態路由協議
- 無類
- 使用組播(224.0.0.5和224.0.0.6)
- 收斂較快
- 以開銷(Cost)作爲度量值
- 採用的SPF算法可以有效的避免環路
- 觸發式更新(以較低頻率,每30分鐘發送定期更新,被稱爲鏈路狀態泛洪)
- 區域的設計使得OSPF能夠支持更大規模的網絡
- 通過LSA的形式發佈路由
- 不支持自動彙總,支持手動彙總
三、OSPF區域
1、區域的意義
- 爲了適應大型的網絡,OSPF在AS內劃分多個區域;
- 區域是以接口爲單位來劃分的;
- 每個OSPF路由器只維護所在區域的完整鏈路狀態。
2、區域的ID
- 可以標識成一個二進制的數字,如:1;
- 也可以標識爲一個IP,如:0.0.0.1。
3、區域的優點
- 儘量較少路由表條目;
- 使拓撲變化僅影響區域本部。
4、區域的類型
- 骨幹區域:Area 0,核心區域,也叫傳輸區域,負責在不同的非骨幹區域之間分發路由信息。
- 非骨幹區域:非Area 0,也成爲常規區域,所有的非骨幹區域必須和骨幹區域直接相連。
四、OSPF路由器的類型
- IR:Internal Router,內部路由器,所有的接口都屬於同一區域。
- BR:Backbone Router,骨幹路由器,至少有一個接口連接骨幹區域。
- ABR:Area Border Router,區域邊界路由器,連接一個或者多個區域到骨幹區域,至少有一個接口屬於骨幹區域。
- ASBR:Autonomous System Border Router,自治系統邊界路由器,把從其他路由協議學習到的路由以引入的方式到OSPF進程中。
- ————一臺路由器可以同時屬於多種類型。
五、OSPF核心工作流程
-
發現並建立鄰居;
-
傳播LSA(區別於距離矢量的路由表更新);
a、Link State Advertisement,鏈路狀態宣告(路況信息) b、鏈路:路由器接口 c、狀態:描述接口信息(地址、掩碼、開銷、網絡類型、鄰居關係等)
-
將LSA泛洪到區域中的所有OSPF路由器,而不是僅是直連的路由器;
-
收集LSA創建LSDB(鏈路狀態數據庫);
-
使用SPF算法計算到每個目標網絡的最短距離,並將其置於路由表中。
六、OSPF的三張表
- 鄰居表:記錄所有的鄰居關係。
- 鏈路狀態數據庫:記錄所有鏈路狀態信息。
- 路由表:記錄最佳路由。
七、OSPF鄰居建立條件
- RID唯一
- Hello/Dead時間間隔一致
- 區域ID一致
- 認證(如果啓用)一致
- 鏈路MTU大小一致,(華爲默認不開啓檢查,思科默認開啓)
- 子網掩碼一致(以太網環境)
- 網絡地址一致
- 末梢區域設置一致(Option)
八、OSPF網絡類型
- 廣播類型
- 點到點
- 非廣播多路訪問
- 點到多點
——缺省情況下,OSPF認爲以太網的網絡類型是廣播類型,PPP、HDLC的網絡類型是點到點類型。
——缺省情況下,OSPF認爲幀中繼、ATM的網絡類型是NBMA。
九、DR和BDR
只要是多路訪問BMA和NBMA網絡中,都會爲了減少鄰接關係的數量從而減少數據包交換次數,最終節省帶寬,降低對路由器處理能力的壓力,選舉DR和BDR。
- DR、BDR、DRothers之間都保持鄰接關係(Full)。
- DRothers之間保持鄰居關係(2-way)。
- 224.0.0.6向DR和BDR發送鏈路狀態更新。
- 224.0.0.5向所有OSPF路由器發送。
選舉規則
-
首先比較Hello報文中攜帶的優先級。
優先級範圍0~255,默認爲1 優先級最高的被選舉爲DR,優先級次高的被選舉爲BDR 優先級爲0的不參加選舉
-
優先級一致的情況下,比較RID,越大越優先。
-
選舉具有非搶佔性,除非當DR和BDR都失效或重啓OSPF進程。
十、度量值
OSPF度量值:Cost,開銷
- 在每個運行的OSPF的接口上,都維護着一個接口Cost。
- Cost=10^8/BW(bps)=100Mbps/BW = 接口帶寬參考值/接口帶寬
- 到一個目標網絡的度量值=從源到目標所有出站接口的Cost值累加(數據方向)=從源到本路由器沿途所有入站接口的Cost值累加(路由方向)
十一、OSPF配置
1、開啓OSPF進程號爲1(默認爲1),手動配置router-id爲1.1.1.1
[Huawei-GigabitEthernet0/0/0]ospf 1 router-id 1.1.1.1
2、進入區域0
[Huawei-ospf-1]area 0
3、宣告網絡,即指定運行OSPF的接口;使用反掩碼來匹配
[Huawei-ospf-1-area-0.0.0.0]net 1.0.0.1 0.0.0.0
4、查看OSPF鄰居關係
[Huawei]display ospf peer
5、修改Hello包發送間隔
[Huawei-GigabitEthernet0/0/0]ospf timer hello 10
6、修改Hello包超時時間
[Huawei-GigabitEthernet0/0/0]ospf timer dead 10
7、顯示OSPF接口信息
[Huawei]display ospf interface g0/0/0
8、修改接口優先級,越大越優先
[Huawei-GigabitEthernet0/0/0]ospf dr-priority 100
9、調整帶寬參考值,默認爲100Mbps,需要在整個OSPF網絡中進行統一調整
[Huawei-ospf-1]bandwidth-reference 100
10、修改OSPF開銷,範圍1~65535,缺省爲1
[Huawei-GigabitEthernet0/0/0]ospf cost 10
11、重啓OSPF進程
<Huawei>reset ospf process
12、OSPF缺省路由發佈命令,首先出口路由器R4要自己配置缺省路由
[R4]ip route-static 0.0.0.0 0 48.0.0.5
[R4-ospf-1]default-route-advertise
13、配置接口認證
[R4-GigabitEthernet0/0/1]ospf authentication-mode md5 1 cipher 111qqq...
14、配置區域認證
[R4-ospf-1-area-0.0.0.0]authentication-mode md5 1 cipher 111qqq...
PS:如果接口認證和區域認證同時配置,接口認證優先生效