报文类型
HELLO:建立领居,保活和断开
DD:数据库描述报文(LSA头部信息)
LSR:LSA请求报文
LSU:LSA更新报文
LSACK:LSA确定报文
DR与BDR
DR:指定路由器
BDR:备份指定路由器
(指的都是接口,不是路由器)
选举制:先比优先级,再比router-id
终身制:非抢占式
OSPF路由器7大状态
dwon:发送HELLO报文
init:已经接受到别人的HELLO报文,但是报文中没有自己的router-id,则转为init
two-way:收到别人的HELLO报文,发现有自己的router-id
Exstart:交互第一个DD报文,确定主从关系
Exchange:交换数据库描述信息
Loading:数据库同步
Full:完全邻接状态
LSA总结
1类LSA——Router-LSA
名字ID:取自生产这个LSA设备的router-id
通告路由器:生产这个LSA的router-id
特点:每一个运行OSPF的设备,都会在其所属区域上生产一条1类LSA,用来描述自身信息
传递范围:区域内传播
作用:
用来计算域内路由
描述自身信息:
拓扑信息:我是哪台,我的邻居是哪个,我用哪个接口连接的
网段信息:接口IP地址,接口IP地址掩码
2类LSA——Network-LSA
名字ID:取自DR接口的IP地址
通告路由器:DR所在路由器的router-id
传递范围:区域内传播
作用:辅助1类 LSA,计算域内路由
补全DR所在网段的掩码信息
补全DR所在网段的拓扑信息:描述了DR网段下所有与DR建立邻接关系的OSPF路由器
3类LSA——Network-Summary-LSA
通告路由器:ABR的router-id
特点:3类LSA在传播过程中,没经过一个ABR设备,LSA的通告就会发生1次变化(所以不是同一个LSA报文)
传递范围:区域内
作用:计算域间路由,实现区域间互通
备注:ABR设备会把由1类和2类LSA计算出的域内路由,变成3类LSA,在相邻区域泛洪
4类LSA——ASBR-Summary-LSA
名字ID:取自ASBR的router-id
通告路由器:ABR的router-id
特点:
第一个4类LSA是由和ASBR在同一个区域的ABR产出的
后续的4类LSA是本区域的ABR产生的
4类LSA在传播过程中,每经过一个ABR设备,LSA的通告路由器就发生一次变化
传递范围:区域内传播
作用:
辅助5类LSA计算外部路由
通告ASBR的router-id
5类LSA——AS-External-LSA
名字ID:取自引入外部路由网段的名字
通告路由器:ASBR的router-id
传递范围:整个OSPF网络
作用:
通告外部路由,计算外部路由
5类LSA可以传播到ospf网络的任何设备,在传播过程中,不做任何改变(特殊区域除外)
5类LSA不属于任何区域
7类LSA—— NSSA-LSA
名字ID:取自引入外部路由网段的名字
通告路由器:NSSA区域的ASBR的router-id
特点:
7类LSA不会跨区域传播
所以其他区域的设备无法学习7类的LSA,无法计算去往外部的路由
所以NSSA区域的ABR设备会把这个7类变成5类LSA,在其他区泛洪
传递范围:仅仅在NSSA区域
作用:计算外部路由
特殊区域
stub——末梢区域
作用:
保护一个区域不受外部链路不稳定的影响——区域稳定不受震荡
缩减数据库规模——减少LSA
缩减路由表规模——减少路由条目
实现:
不学习4、5类
只学习1、2、3类
出现问题:不学习4、5类怎么计算外部路由
解决方案:区域ABR设备会自动生产一条默认的3类LSA,3类LSA计算出一条默认路由
特点:
不学习4、5类路由,也不引入外部路由
骨干区域不能设置
totally stub——完全末梢区域
作用:
保护一个区域不受外部链路不稳定的影响——区域稳定不受震荡
保护一个区域不受区域间链路不稳定的影响
缩减数据库规模——减少LSA
缩减路由表规模——减少路由条目
实现:
不学习3、4、5类
只学习1、2类
出现问题:
不学习4、5类怎么计算外部路由
不学习3类怎么计算域间路由
解决方案:区域ABR设备会自动生产一条默认的3类LSA,3类LSA计算出一条默认路由
特点:
不学习3、4、5类路由,也不引入外部路由
骨干区域不能设置
相比于Stub区域,NSSA区域能够将自治系统外部路由引入并传播到整个OSPF自治系统中,同时又不会学习来自OSPF网络其它区域的路由。
NSSA——不那么stub的区域
作用:
保护一个区域不受外部链路不稳定的影响——区域稳定不受震荡
缩减数据库规模——减少LSA
缩减路由表规模——减少路由条目
可以引入外部路由
实现:
不学习4、5类
只学习1、2、3、7类
出现问题:不学习4、5类怎么计算外部路由
解决方案:区域ABR设备会自动生产出一条默认的7类LSA,7类默认LSA计算出一条默认的路由
特点:
不学习4、5类路由,也可以通过7类LSA引入外部路由
骨干区域不能设置
totally NSSA——完全NSSA区域
作用:
保护一个区域不受外部链路不稳定的影响——区域稳定不受震荡
保护一个区域不受区域间链路不稳定的影响
缩减数据库规模——减少LSA
缩减路由表规模——减少路由条目
可以引入外部路由
实现:
不学习3、4、5类
只学习1、2、7类
出现问题:
不学习4、5类怎么计算外部路由
不学习3类怎么计算域间路由
解决方案:区域ABR设备会自动生产出一条默认的3类LSA和一条默认的7类LSA,3类默认LSA计算出一条默认的路由
特点:
不学习3、4、5类路由,也可以通过7类LSA引入外部路由
骨干区域不能设置
LSA在各区域中传播的支持情况
OSPF路由聚合
路由聚合是指ABR可以将具有相同前缀的路由信息聚合到一起,只发布一条路由到其它区域。
区域间通过路由聚合,可以减少路由信息,从而减小路由表的规模,提高设备的性能。
OSPF有两种路由聚合方式:
ABR聚合
ABR向其它区域发送路由信息时,以网段为单位生成Type3 LSA。如果该区域中存在一些连续的网段,则可以通过命令将这些连续的网段聚合成一个网段。这样ABR只发送一条聚合后的LSA,所有属于命令指定的聚合网段范围的LSA将不会再被单独发送出去。ASBR聚合
配置路由聚合后,如果本地设备是自治系统边界路由器ASBR,将对引入的聚合地址范围内的Type5 LSA进行聚合。当配置了NSSA区域时,还要对引入的聚合地址范围内的Type7 LSA进行聚合。
如果本地设备既是ASBR又是ABR,则对由Type7 LSA转化成的Type5 LSA进行聚合处理。