OSPF:开放式最短路径优先
工作在网络层,IP协议之上,协议号89
特点:
开放式:现在基本所有的厂商生产的设备都支持OSPF协议
天然无环:
1、域内:使用SPF算法,构建最短路径树
2、域间:所有非骨干区域必须与骨干区域相连
支持区域划分:减少同一区域的LSDB中的LSA数量
采用科学的度量值:根据实际的链路带宽进行计算链路的开销
开销计算方式:实际开销 = 参考带宽 / 实际带宽
参考带宽默认100M
s:带宽:2.048M,实际开销:48
FE:带宽:100M,实际开销:1
G:带宽:1000M,实际开销:1
修改开销的方式:
1、在接口视图下,直接修改开销值
2、在OSPF协议视图下修改参考带宽值
路由更新:
1、触发式更新:当OSPF检测到拓扑发生改变时,将进行触发更新,将更新路由泛洪
2、周期更新:在拓扑稳定的情况下,OSPF将路由每隔1800S进行一次新的泛洪
以组播发送报文:
224.0.0.5:只要运行了OSPF协议的路由器都会去监听
224.0.0.6:只有DR或者BDR才会去监听的组播地址
支持无类路由:OSPF可以进行路由汇总
支持认证:
1、接口认证:当接口配置认证后,接口对端的设备都需要配置相同的认证,否则无法建立邻居关系
2、区域认证:当一台设备配置了区域认证后,区域中的所有路由器都需要配置认证,否则无法建立邻居关系
注:当接口认证和区域认证同时存在,优先使用接口认证配置的认证类型和密钥
确认机制:
1、隐式确认机制:hello报文、LSU报文
2、显示确认机制:LSR、LSU、LSACK、DD报文:主发送的DD报文从都要进行确认
选举DR和BDR:
作用:
1、减少邻接关系建立
2、减少相同LSA的泛洪
3、减少报文交互
4、节约链路的资源
选举规则:比优先级、优先相同时,比较router-id
OSPF的工作原理:
1、运行了OSPF协议的路由器发送hello报文建立邻居关系
影响邻居关系建立不起来的因素:
1、router-id冲突
2、area id不一致
3、hello报文的发送间隔不一致
4、邻居死亡时间间隔不一致
5、认证类型不一致
6、认证数据不一致
7、可选字段不一致
8、版本不一致
9、校验和检验失败
10、掩码不一致,必须是MA网络才会出现
11、接口未开启OSPF协议
12、设备链路故障
13、网络类型不一致
14、开启了静默接口
2、交互LSA、同步LSDB,建立邻接关系
接口MTU不一致会导致邻接关系建立不成功
注:华为设备默认不检查MTU值,可以通过命令开启检查功能
命令:ospf mtu-enable
3、基于LSDB,使用SPF算法,生成以自身为根的最短路径树,将去往每一个目的网段的最优路由假如到路由表
OSPF报文:
OSPF通用报文头部:
version:版本,标识OSPF的版本号,如果承载的时
IPv4网络,则为2,如果承载的时IPv6网络,则为3
type:类型,具体指明报文的类型
Packet length:报文总长度,包括通用报文头部、数据部分
Router-ID:发送者的router-id
Area id:标识接口所属的区域
checksum:校验和,检测报文的完整性
Authentication type:接口发出的报文采用哪种认证类型
0、不认证
1、简单明文认证:在链路上直接采用明文的方式传递密钥信息
2、MD5认证:在链路上传递加密的密钥信息
Authentication data:认证数据
hello报文:发现、建立、维护邻居关系
Network mask:网络掩码,标识接口所处网段
HelloInterval:接口发送hello报文的时间间隔
options:可选功能,默认情况下只有E位置位
E:路由器支持传递外部路由,支持承载5类
M/C:支持IP组播报文,支持承载6类
N/P:支持nssa区域,支持承载7类
DC:支持按需链路,
Router priority:标识路由器的优先机,用于选举DR和BDR
Dead hello interval:死亡时间间隔,当路由器死亡时间超时后还未收到邻居发送的hello报文,则认为邻居失效,并且将邻居的router id从活跃邻居列表中删除
DR router id:接口所处网段选举的DR的router id
BDR router id:接口所处网段选举的BDR的router id
DD报文:协商主从、交互LSDB摘要信息</