介紹:
OSPF用迪克斯加算法,即SPF(開放式最短路徑優先算法) OSPF是工作在網絡層面即 IP層,協議號 89
RIP工作在UDP層,端口號520
OSPF是內部網關協議的一種,基於鏈路狀態算法。
OSPF的基本特點:
1、收斂速度快,相對RIP快些,在IGP協議中,EIGRP協議收斂最快,
2、無類路由協議,VLSM(可變長子網掩碼),CIDR
3、OSPF支持負載均衡(等價負載分擔)
4、支持區域劃分,提供分級管理,使得SPF的算法更優,頻率更低,節約了鏈路狀態數據庫,降低了路由的開銷
5、OSPF支持認證:0不認證 1明文認證 2 MD5認證
6、支持觸發更新
7、OSPF的路由優先級 內部10(OSPF自身產生的) 外部150(從其他協議引入的路由)
8、OSPF的度量值採用開銷(Cost)作爲標準的, RIP使用跳數選路,容易產生次優路徑
9 、OSPF要維護鄰居表,拓撲表,路由表
10、OSPF採用組播的方式來收發報文,可以減少對沒有運行OSPF設備的干擾
OSPF的組播地址 224.0.0.5(所有設備) 224.0.0.6 (DR,BDR監聽的)
RIP的組播地址:224.0.0.9
EIGRP的組播地址:224.0.0.10
11、OSPF爲了確保鏈路狀態數據庫的同步,每1800秒(30分鐘)更新一次
12、OSPF沒有環路的一個協議,僅限於一個區域,在一個區域中是絕對無環的(基於算法)天然無環 (鄰居)
可以這樣認爲,OSPF在區域內是鏈路狀態協議(算法),在區域之間用的是距離矢量協議算法
OSPF的一些術語:
1、鏈路:OSPF路由器的一個接口
2、鏈路狀態:各條鏈路的狀態信息,接口的IP地址、掩碼、網絡類型、開銷,所有的鏈路狀態信息構成LSDB(鏈路狀態數據庫 Link State DataBase)
3、區域:同一組路由器組成,共享相同的信息
4、自治系統:一個自治系統是指使用同一種路由協議交換路由信息的一組路由器。自治系統(Autonomous System)
5、LSA(鏈路狀態通告)和LSU(鏈路狀態更新)
LSA :用來描述路由器的信息和鏈路的狀態
LSU:可以包含一個或多個LSA,通告LSA給鄰居
6、SPF算法
7、鄰居關係:兩臺設備共享同一條鏈路,並且交互了一些參數(Hello報文),形成鄰居關係(2-way狀態)
鄰接關係:相互交換LSA同步數據庫的OSPF設備,(Full關係)
鄰居是形成鄰接關係的必要條件
8、DR(指定路由器)
BDR(備份指定路由器)
9、Router ID:用來標識運行OSPF的設備,是一個32位整數
每一個路由器必須要有一個Router ID
OSPF的三張表:
鄰居表
拓撲表
路由表
劃分AS爲多個區域
區域是一組網段的集合。
OSPF支持將一組網段組合在一起,這樣的一個組合稱爲一個區域,即區域是一組網段的集合。
劃分區域可以縮小LSDB規模,減少網絡流量。
區域內的詳細拓撲信息不向其它區域發送,區域間傳遞的是抽象的路由信息,而不是詳細的描述拓撲結構的鏈路狀態信息。每個區域都有自己的LSDB,不同區域的LSDB是不同的。路由器會爲每一個自己所連接到的區域維護一個單獨的LSDB。由於詳細鏈路狀態信息不會別發佈到區域以外,因此LSDB的規模大大縮小了。
Area0爲骨幹區域,骨幹區域負責在非骨幹區域之間發佈區域邊界路由器彙總信息(並非詳細的鏈路狀態信息),爲了避免區域間路由環路,非骨幹區域之間不允許直接相互發布區域間信息。因此,所以區域邊界路由器都至少有一個接口屬於Area0,即每個區域都必須連接到骨幹區域。
區域0爲骨幹區域(類似於中央) 其他非0區域都是非骨幹區域
OSPf要求每一個非骨幹區域必須要連接到骨幹區
OSPF路由器的分類:
內部路由器(Internal Router):
內部路由器是指所有所連接的網段都在一個區域的路由器。屬於同一個區域的IR維護相同的LSDB。
區域邊界路由器(Area Border Router):連接骨幹區域和非骨幹區域的設備
區域邊界路由器是指連接到多個區域的路由器。ABR爲每一個所連接的區域維護一個LSDB。
骨幹路由器(Backbone Router):
骨幹路由器是指至少有一個端口(或者虛連接)連接到骨幹區域的路由器。包括所有的ABR和所有端口都在骨幹區域的路由器。
AS邊界路由器(AS Boundary Router):
AS邊界路由器是指和其他AS中的路由器交換路由信息的路由器,這種路由器向整個AS通告AS外部路由信息。
AS邊界路由器可以是內部路由器IR,或者是ABR,可以屬於骨幹區域也可以不屬於骨幹區域。
Router ID概念:
Router ID的配置:
1、進程下直接配置
ospf 10 router-id 5.5.5.5
2、全局下配置,各協議會自動調用該Router ID
router id 3.3.3.3
進程下配置的Router ID優於全局下配置
每一個OSPF設備都要有一個Router ID,
1、手工指定的Router ID最優
2、如果沒有手工指定,會自動選舉
選舉規則:比較邏輯接口,地址最大的一個
如果沒有邏輯接口,比較物理接口IP地址最大 的一個(接口必須是激活狀態)
如果修改了router ID不會立刻生效,需要重置進程OSPF進程,或者重啓OSPF設備
reset ospf process //重置OSPF進程
<Huawei>system-view
[Huawei]sysname AR1
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]ip address 172.16.10.1 24
[AR1-GigabitEthernet0/0/0]int lo 0
[AR1-LoopBack0]ip ad 1.1.1.1 32
[AR1-LoopBack0]int g0/0/1
[AR1-GigabitEthernet0/0/1]ip ad 12.1.1.1 24
#其餘路由器的IP配置同理
#ospf全局宣告
[AR1]ospf 10 router-id 1.1.1.1 # 配置OSPF進程10 Router ID爲1.1.1.1 這是進程下指定
[AR1-ospf-10]area 10 #進入區域10
[AR1-ospf-10-area-0.0.0.10]network 172.16.10.1 0.0.0.0 # 精確宣告172.16.1.1
[AR1-ospf-10-area-0.0.0.10]network 1.1.1.1 0.0.0.0
[AR1-ospf-10-area-0.0.0.10]network 12.1.1.1 0.0.0.0
[AR1-ospf-10-area-0.0.0.10]display ospf interface # 查看OSPf接口的相關信息
OSPF Process 10 with Router ID 1.1.1.1
Interfaces
Area: 0.0.0.0 (MPLS TE not enabled)
Area: 0.0.0.10 (MPLS TE not enabled)
IP Address Type State Cost Pri DR BDR
172.16.10.1 Broadcast DR 1 1 172.16.10.1 172.16.10.8
1.1.1.1 P2P P-2-P 0 1 0.0.0.0 0.0.0.0
12.1.1.1 Broadcast Waiting 1 1 0.0.0.0 0.0.0.0
[AR1-ospf-10-area-0.0.0.10]display this
[V200R003C00]
#
area 0.0.0.10
network 1.1.1.1 0.0.0.0
network 12.1.1.1 0.0.0.0
network 172.16.10.1 0.0.0.0
#
return
[AR2]ospf 10 router-id 2.2.2.2
[AR2-ospf-10]area 10 #區域0.0.0.10
[AR2-ospf-10-area-0.0.0.10]network 12.1.1.0 0.0.0.255 #通配符掩碼宣告,宣告12.1.1.0 網絡運行OSPF協議
[AR2-ospf-10-area-0.0.0.10]area 0 #骨幹區域0.0.0.0
[AR2-ospf-10-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[AR2-ospf-10-area-0.0.0.0]network 23.1.1.0 0.0.0.255
[AR2-ospf-10]dis th
[V200R003C00]
#
ospf 10 router-id 2.2.2.2
area 0.0.0.0
network 2.2.2.2 0.0.0.0
network 23.1.1.0 0.0.0.255
area 0.0.0.10
network 12.1.1.0 0.0.0.255
#
return
[AR2-ospf-10]display ospf interface
OSPF Process 10 with Router ID 2.2.2.2
Interfaces
Area: 0.0.0.0 (MPLS TE not enabled)
IP Address Type State Cost Pri DR BDR
2.2.2.2 P2P P-2-P 0 1 0.0.0.0 0.0.0.0
23.1.1.2 Broadcast Waiting 1 1 0.0.0.0 0.0.0.0
Area: 0.0.0.10 (MPLS TE not enabled)
IP Address Type State Cost Pri DR BDR
12.1.1.2 Broadcast BDR 1 1 12.1.1.1 12.1.1.2
[AR5]ospf 10 router-id 5.5.5.5
[AR5-ospf-10]area 20
[AR5-ospf-10-area-0.0.0.20]network 45.1.1.0 0.0.0.255
[AR5-ospf-10-area-0.0.0.20]network 5.5.5.5 0.0.0.0
---------------------------------------
[AR5]rip #啓用rip進程
[AR5-rip-1]undo summary #關閉自動彙總
[AR5-rip-1]version 2 #配置rip v2版本
[AR5-rip-1]network 5.0.0.0 #rip只能宣告主類地址,如200.200.200.200 32宣告方式爲network 200.200.200.0
[AR5-rip-1]network 56.0.0.0
[AR5-rip-1]import-route ospf 10 #將ospf引入RIP
[AR5-rip-1]dis current configuration ospf
[V200R003C00]
#
ospf 10 router-id 5.5.5.5
area 0.0.0.20
network 5.5.5.5 0.0.0.0
network 45.1.1.0 0.0.0.255
#
return
[AR5-rip-1]dis th
[V200R003C00]
#
rip 1
undo summary
version 2
network 5.0.0.0
network 56.0.0.0
import-route ospf 10
#
return
#路由器6
[AR6-rip-1]dis th
[V200R003C00]
#
rip 1
undo summary
version 2
network 6.0.0.0
network 56.0.0.0
#
return
-----------------------------
[AR5]ospf 10 router-id 5.5.5.5
[AR5-ospf-10]di th
[V200R003C00]
#
ospf 10 router-id 5.5.5.5
area 0.0.0.20
network 5.5.5.5 0.0.0.0
network 45.1.1.0 0.0.0.255
#
return
[AR5-ospf-10]im
[AR5-ospf-10]import-route rip 1 #將rip引入ospf
[AR5-ospf-10]dis th
[V200R003C00]
#
ospf 10 router-id 5.5.5.5
import-route rip 1
area 0.0.0.20
network 5.5.5.5 0.0.0.0
network 45.1.1.0 0.0.0.255
#
return
OSPF宣告的第二種方法
在接口下宣告
interface GigabitEthernet0/0/0
ip address 23.1.1.3 255.255.255.0
ospf enable 10 area 0.0.0.0
interface GigabitEthernet0/0/1
ip address 34.1.1.3 255.255.255.0
如果在接口下宣告OSPf,要手工起用OSPF進程和區域
ospf 10
area 0.0.0.0
ospf enable 10 area 0.0.0.0
ospf的三個表
[AR1]display ospf peer brief #查看OSPF的鄰居表
OSPF Process 10 with Router ID 1.1.1.1
Peer Statistic Information
----------------------------------------------------------------------------
Area Id Interface Neighbor id State
0.0.0.10 GigabitEthernet0/0/0 7.7.7.7 Full
0.0.0.10 GigabitEthernet0/0/0 8.8.8.8 Full
0.0.0.10 GigabitEthernet0/0/1 2.2.2.2 Full
----------------------------------------------------------------------------
[AR1]dis ospf lsdb #查看OSPF的LSDB表
OSPF Process 10 with Router ID 1.1.1.1
Link State Database
Area: 0.0.0.0
Area: 0.0.0.10
Type LinkState ID AdvRouter Age Len Sequence Metric
Router 7.7.7.7 7.7.7.7 160 48 80000007 1
Router 2.2.2.2 2.2.2.2 868 36 80000005 1
Router 1.1.1.1 1.1.1.1 159 60 8000000F 1
Router 8.8.8.8 8.8.8.8 167 48 80000007 1
Network 172.16.10.1 1.1.1.1 159 36 80000005 0
Network 12.1.1.1 1.1.1.1 868 32 80000003 0
Sum-Net 23.1.1.0 2.2.2.2 836 28 80000002 1
Sum-Net 5.5.5.5 2.2.2.2 300 28 80000002 3
Sum-Net 3.3.3.3 2.2.2.2 485 28 80000002 1
Sum-Net 4.4.4.4 2.2.2.2 408 28 80000002 2
Sum-Net 2.2.2.2 2.2.2.2 854 28 80000002 0
Sum-Net 34.1.1.0 2.2.2.2 459 28 80000002 2
Sum-Net 45.1.1.0 2.2.2.2 384 28 80000002 3
Sum-Asbr 5.5.5.5 2.2.2.2 570 28 80000001 3
AS External Database
Type LinkState ID AdvRouter Age Len Sequence Metric
External 6.6.6.0 5.5.5.5 573 36 80000001 1
External 5.5.5.5 5.5.5.5 573 36 80000001 1
External 56.1.1.0 5.5.5.5 573 36 80000001 1
[AR1]display ip routing-table protocol ospf #查看路由表
Route Flags: R - relay, D - download to fib #路由表rib已經解析到fib轉發表
------------------------------------------------------------------------------
Public routing table : OSPF
Destinations : 11 Routes : 11
OSPF routing table status : <Active>
Destinations : 11 Routes : 11
Destination/Mask Proto Pre Cost Flags NextHop Interface
2.2.2.2/32 OSPF 10 1 D 12.1.1.2 GigabitEthernet
0/0/1
3.3.3.3/32 OSPF 10 2 D 12.1.1.2 GigabitEthernet
0/0/1
4.4.4.4/32 OSPF 10 3 D 12.1.1.2 GigabitEthernet
0/0/1
5.5.5.5/32 OSPF 10 4 D 12.1.1.2 GigabitEthernet
0/0/1
6.6.6.0/24 O_ASE 150 1 D 12.1.1.2 GigabitEthernet
0/0/1
7.7.7.7/32 OSPF 10 1 D 172.16.10.7 GigabitEthernet
0/0/0
8.8.8.8/32 OSPF 10 1 D 172.16.10.8 GigabitEthernet
0/0/0
23.1.1.0/24 OSPF 10 2 D 12.1.1.2 GigabitEthernet
0/0/1
34.1.1.0/24 OSPF 10 3 D 12.1.1.2 GigabitEthernet
0/0/1
45.1.1.0/24 OSPF 10 4 D 12.1.1.2 GigabitEthernet
0/0/1
56.1.1.0/24 O_ASE 150 1 D 12.1.1.2 GigabitEthernet
0/0/1
OSPF routing table status : <Inactive>
Destinations : 0 Routes : 0