一、OSPF簡介
OSPF(Open Shortest Path First,開放最短路徑優(yōu)先)是 IETF(Internet Engineering Task Force,
互聯(lián)網(wǎng)工程任務組)組織開發(fā)的一個基于鏈路狀態(tài)的內部網(wǎng)關協(xié)議。目前針對 IPv4 協(xié)議使用的是
OSPF Version 2。IPv6協(xié)議使用的OPSFv3
二、OSPF報文類型
OSPF 協(xié)議報文直接封裝為 IP 報文,協(xié)議號為 89。
OSPF 有五種類型的協(xié)議報文:
1、Hello 報文:周期性發(fā)送,用來發(fā)現(xiàn)和維持 OSPF 鄰居關系,以及進行 DR(Designated
Router,指定路由器)/BDR(Backup Designated Router,備份指定路由器)的選舉。
2、DD(Database Description,數(shù)據(jù)庫描述)報文:描述了本地 LSDB(Link State DataBase,
鏈路狀態(tài)數(shù)據(jù)庫)中每一條 LSA(Link State Advertisement,鏈路狀態(tài)通告)的摘要信息,
用于兩臺路由器進行數(shù)據(jù)庫同步。
3、LSR(Link State Request,鏈路狀態(tài)請求)報文:向對方請求所需的 LSA。兩臺路由器互相
交換 DD 報文之后,得知對端的路由器有哪些 LSA 是本地的 LSDB 所缺少的,這時需要發(fā)送
LSR 報文向對方請求所需的 LSA。
4、 LSU(Link State Update,鏈路狀態(tài)更新)報文:向對方發(fā)送其所需要的 LSA。
5、 LSACK(Link State Acknowledgment,鏈路狀態(tài)確認)報文:用來對收到的 LSA 進行確認。
三、路由器類型
1. 區(qū)域內路由器(Internal Router)
該類路由器的所有接口都屬于同一個 OSPF 區(qū)域。
2. 區(qū)域邊界路由器ABR
該類路由器可以同時屬于兩個以上的區(qū)域,但其中一個必須是骨干區(qū)域。ABR 用來連接骨干區(qū)域和
非骨干區(qū)域,它與骨干區(qū)域之間既可以是物理連接,也可以是邏輯上的連接。
3. 骨干路由器(Backbone Router)
該類路由器至少有一個接口屬于骨干區(qū)域。因此,所有的 ABR 和位于 Area0 的內部路由器都是骨
干路由器。
4. 自治系統(tǒng)邊界路由器ASBR
與其他 AS 交換路由信息的路由器稱為 ASBR。ASBR 并不一定位于 AS 的邊界,它有可能是區(qū)域
內路由器,也有可能是 ABR。只要一臺 OSPF 路由器引入了外部路由的信息,它就成為 ASBR。
四、基本配置組網(wǎng)
1、拓撲
2、配置步驟
(1) 配置各接口的 IP 地址(略)
(2) 配置 OSPF 基本配置
# 配置 Switch A
<SwitchA> system-view
[SwitchA] router id 10.2.1.1
[SwitchA] ospf
[SwitchA-ospf-1] area 0
[SwitchA-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0] quit
[SwitchA-ospf-1] area 1
[SwitchA-ospf-1-area-0.0.0.1] network 10.2.1.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.1] quit
[SwitchA-ospf-1] quit
# 配置 Switch B
<SwitchB> system-view
[SwitchB] router id 10.3.1.1
[SwitchB] ospf
[SwitchB-ospf-1] area 0
[SwitchB-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[SwitchB-ospf-1-area-0.0.0.0] quit
[SwitchB-ospf-1] area 2
[SwitchB-ospf-1-area-0.0.0.2] network 10.3.1.0 0.0.0.255
[SwitchB-ospf-1-area-0.0.0.2] quit
[SwitchB-ospf-1] quit
# 配置 Switch C
<SwitchC> system-view
[SwitchC] router id 10.4.1.1
[SwitchC] ospf
[SwitchC-ospf-1] area 1
[SwitchC-ospf-1-area-0.0.0.1] network 10.2.1.0 0.0.0.255
[SwitchC-ospf-1-area-0.0.0.1] network 10.4.1.0 0.0.0.255
[SwitchC-ospf-1-area-0.0.0.1] quit
[SwitchC-ospf-1] quit
# 配置 Switch D
<SwitchD> system-view
[SwitchD] router id 10.5.1.1
[SwitchD] ospf
[SwitchD-ospf-1] area 2
[SwitchD-ospf-1-area-0.0.0.2] network 10.3.1.0 0.0.0.255
[SwitchD-ospf-1-area-0.0.0.2] network 10.5.1.0 0.0.0.255
[SwitchD-ospf-1-area-0.0.0.2] quit
[SwitchD-ospf-1] quit
3、驗證配置
查看 OSPF 鄰居:
[SwitchA] display ospf peer verbose
OSPF Process 1 with Router ID 10.2.1.1
Neighbors
Area 0.0.0.0 interface 10.1.1.1(Vlan-interface100)'s neighbors
Router ID: 10.3.1.1 Address: 10.1.1.2 GR State: Normal
State: Full Mode: Nbr is Master Priority: 1
DR: 10.1.1.1 BDR: 10.1.1.2 MTU: 0
Options is 0x02 (-|-|-|-|-|-|E|-)
Dead timer due in 37 sec
Neighbor is up for 06:03:59
Authentication Sequence: [ 0 ]
Neighbor state change count:
Area 0.0.0.1 interface 10.2.1.1(Vlan-interface200)'s neighbors
Router ID: 10.4.1.1 Address: 10.2.1.2 GR State: Normal
State: Full Mode: Nbr is Master Priority: 1
DR: 10.2.1.1 BDR: 10.2.1.2 MTU: 0
Options is 0x02 (-|-|-|-|-|-|E|-)
Dead timer due in 32 sec
Neighbor is up for 06:03:12
Authentication Sequence: [ 0 ]
Neighbor state change count: 5