OSPF协议是常见、最重要的协议之一,必须充分的理解掌握,本文是对前文的总结和补充,后文也会继续描述OSPF协议。本次没有配置案例,下期补充。

 

一、OSPF的三张表

1. 邻居表:记录邻居状态和关系;

2. 拓扑表:链路状态数据库;

3. 路由表:记录由SPF算法计算的路由。

 

二、OSPF路由器类型

1. 区域内路由器(IR):所有接口都在同一区域;

2. 骨干路由器(BR):有接口在骨干区域;

3. 区域边界路由器(ABR):连接骨干区域和非骨干区域;

4. 自治系统边界路由器(ASBR):连接外部自治系统,并引入外部路由

 

路由器类型示图:

ospf备份路由 ospf路由表详解_网络

三、OSPF网络类型

1. 定义

对于不同的二层链路类型的网段,OSPF会生成不同的网络类型;不同的网络类型,DR/BDR选举,LSA细节,协议报文发送形式等会有所不同。

 

2. 类型

2.1 Broadcast

广播网络,以太网默认的网络类型

组播发送协议报文:224.0.0.5 所有运行OSPF的接口会监听,224.0.0.6 所有DR/BDR的接口会监听;

需要选举DR/BDR;

hello-time 10秒,dead-time 40秒

 

2.2 NBMA

非广播多点可达,帧中继默认的网络类型;

单播发送协议报文,需要手动指定邻居;

需要选举DR/BDR;

hello-time 30秒,dead-time 120秒

 

2.3 P2MP

点到多点网络,由其他网络类型手动更改;

模拟组播发送协议报文,可以自动发现邻居;

不选举DR/BDR;

hello-time 30秒,dead-time 120秒

 

2.4 P2P

点到点网络,PPP默认的网络类型;

组播发送协议报文;

不选举DR/BDR;

hello-time 10秒,dead-time 40秒

 

说明:可以通过将默认网络类型改成P2P,加快ospf收敛速度

 

查看ospf网络类型命令:dis ospf interface g 0/1

ospf备份路由 ospf路由表详解_路由器_02

 

修改ospf网络类型命令:ospf network-type ?

ospf备份路由 ospf路由表详解_交换机_03

 

四、OSPF邻接建立过程

1. Down:关闭状态(稳定状态)

2. Init单方发现状态,收到了对方的hello报文,但没有收到对方的hello确认报文

3. Attempt只会出现NBMA网络中(已淘汰,不需要考虑),发出了Hellow包,但未收到对方的Hellow包

4. 2-way邻居状态(稳定状态),邻居双方互相发现,并确认了DR/BDR角色,当选举完毕,就算出现一台更高优先级的路由器,也不会替换成为新的DR/BDR,需要原DR/BDR失效,或者重置OSPF进程才会成为新的DR/BDR

2-way的前提:

说明:非常重要

(1)Router-id无冲突:修改Router-id需要重置OSPF进程使生效

(2)掩码长度一致;

(3)区域id一致;

(4)验证密码一致;

(5)hello-time一致;

(6)dead-time一致;

5. Exstart:交换开始状态,发送第一个DD报文,不传送LSDB摘要,仅用于确定LSA传递的主从;DD报文置位符:I Init位,置位则表示此报文是第一个DD报文 M more位,置位则表示还有后续DD报文 MS master位,置位则表示本端为主

6. Exchange:交换状态,发送后续DD报文,用于通告LSDB摘要

7. Loading:读取状态,进行LSA的请求、加入和确认

8. Full:邻接状态(稳定状态),两端LSDB同步

Full的前提

说明:非常重要

(1)两端网络类型一致,否则邻居状态FULL,但无法学习路由

(2)两端MTU一致,否则邻居状态卡在Exstart、Exchange

ospf备份路由 ospf路由表详解_交换机_04

 

五、LSDB更新

更新流程

1. 收到LSA更新,在本地LSDB中查询此LSA,未查到则加入LSDB

2. 查到此LSA,则把收到的LSA和本地LSA进行序列号对比

3. 如本地LSA序列号大,则丢弃更新,否则加入LSDB

说明:LSA越大,说明越新

 

广播网络中的更新

只由DR发起更新

 

六、OSPF开销计算

参考带宽

计算开销的基准带宽值,默认参考带宽是100M

建议把网络中最高的链路带宽设置为参考带宽

 

计算方法

链路带宽大于等于参考带宽 cost=1

链路带宽小于参考带宽 cost=参考带宽/链路带宽(Mb)

说明:余数取整加1(cost值都是整数)

 

七、常用命令

(1)[h3c]router id 'router-id' 

配置全局Router-id,对所有协议生效,协议内指定Router-id的优先级更高

 

(2)[h3c]display ospf interface

查看OSPF接口信息,网络类型通过此命令查看

 

(3)[h3c]display ospf routing

查看OSPF路由信息,可以查看路由所属区域和发布者

 

(4)[h3c]display ospf statistics error

查看OSPF报错信息

说明:ospf排除神器

 

(5)[h3c]display ospf lsdb

查看本地LSDB汇总信息

 

(6)[h3c-GigabitEthernet0/0]ospf network-type 'broadcast/nmba/p2mp/p2p'

配置接口网络类型

 

(7)[h3c-GigabitEthernet0/0]ospf timer hello 'seconds'

配置接口HELLO时间

 

(8)[h3c-GigabitEthernet0/0]ospf timer dead 'seconds'

配置接口DEAD时间

 

(9)[h3c-ospf-1]Bandwidth-reference  'value'

配置参考带宽

 

(10)[h3c-ospf-1]default-route-advertise

将已经存在的默认路由引入到OSPF

 

(11)[h3c-ospf-1]default-route-advertise always

自动产生一条默认路由LSA下发到OSPF