OSPF(Open Shortest Path First,开放最短路径优先)是 IETF(Internet Engineering Task Force,
互联网工程任务组)组织开发的一个基于链路状态的内部网关协议。目前针对 IPv4 协议使用的是
OSPF Version 2。IPv6协议使用的OPSFv3
OSPF 协议报文直接封装为 IP 报文,协议号为 89。
OSPF 有五种类型的协议报文:
1、Hello 报文:周期性发送,用来发现和维持 OSPF 邻居关系,以及进行 DR(Designated
Router,指定路由器)/BDR(Backup Designated Router,备份指定路由器)的选举。
2、DD(Database Description,数据库描述)报文:描述了本地 LSDB(Link State DataBase,
链路状态数据库)中每一条 LSA(Link State Advertisement,链路状态通告)的摘要信息,
用于两台路由器进行数据库同步。
3、LSR(Link State Request,链路状态请求)报文:向对方请求所需的 LSA。两台路由器互相
交换 DD 报文之后,得知对端的路由器有哪些 LSA 是本地的 LSDB 所缺少的,这时需要发送
LSR 报文向对方请求所需的 LSA。
4、 LSU(Link State Update,链路状态更新)报文:向对方发送其所需要的 LSA。
5、 LSACK(Link State Acknowledgment,链路状态确认)报文:用来对收到的 LSA 进行确认。
1. 区域内路由器(Internal Router)
该类路由器的所有接口都属于同一个 OSPF 区域。
2. 区域边界路由器ABR
该类路由器可以同时属于两个以上的区域,但其中一个必须是骨干区域。ABR 用来连接骨干区域和
非骨干区域,它与骨干区域之间既可以是物理连接,也可以是逻辑上的连接。
3. 骨干路由器(Backbone Router)
该类路由器至少有一个接口属于骨干区域。因此,所有的 ABR 和位于 Area0 的内部路由器都是骨
干路由器。
4. 自治系统边界路由器ASBR
与其他 AS 交换路由信息的路由器称为 ASBR。ASBR 并不一定位于 AS 的边界,它有可能是区域
内路由器,也有可能是 ABR。只要一台 OSPF 路由器引入了外部路由的信息,它就成为 ASBR。
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