一、OSPF基础
1 、技术背景(RIP中存在的问题)
RIP中存在最大跳数为15的限制,不能适应大规模组网
周期性发送全部路由信息,占用大量的带宽资源
路由收敛速度慢
以跳数作为度量值
存在路由环路可能性
每隔30秒更新
2 、OSPF协议特点
没有跳数限制,适合大规模组网
使用组播更新变化的路由和网络信息
路由收敛快,可以触发更新
以COST作为度量值
采用SPF算法有效避免环路
每隔30分钟周期性更新----LSA
在互联网上大量使用,是运用最广泛的路由协议
注意:OSPF传递的是拓扑信息和路由信息,RIP传递的是路由表
3、OSPF三张表
邻居表:记录邻居状态和关系
拓扑表:链路状态数据库(LSDB)
路由表:记录由SPF算法计算的路由,存放在OSPF路由表中
4、OSPF数据包
(1)hello :
作用:用来周期保活的,发现,建立邻居关系。
(2)DBD (数据库描述报文):
作用:仅包含LSA摘要
(3)LSR :
作用:请求自己没有的或则比自己更新的链路状态详细信息
**(4)LSU:**链路状态更新信息
作用:把对方所需的几条LSA的详细信息,打包成一条LSU发给对方
一个LSU报文可以包含多个---LSA--(具体关于LSA请看后文)
(5)LSAck:
对LSU的确认
5、OSPF工作过程
邻居:双方通过hello报文,相互认识
邻接:邻居关系建立好后,进行一系列报文交互,当两台路由器LSDB同步完成,开始独立计算路 由时,这两台路由器形成了邻接关系
(1)确认可达性,建立邻居
(2)邻接路由器之间交换链路状态信息,实现区域内链路状态数据库同步
- 向邻接路由器发送DBD报文,通告本地LSDB中所有LSA的摘要信息
- 收到DBD报文后,与本地LSDB对比,向对方发送LSR报文,请求发送本地所需要的LSA的完整信息
- 收到LSR后,把对方所需的LSA的完整信息打包为一条LSU报文,发送至对方
- 收到LSU后,向对方回复LSAck报文,进行确认
(3)完整信息同步,完全邻接关系建立
完全邻接关系建立,LSDB表与路由表形成
6、OSPF的状态机
邻居关系开始建立
(1)down : 关闭状态(稳定状态),这种情况处于手动指定邻居的情况下,发送hello包之后进入下一个状态
(2)INIT : 初始化状态,收到对方的hello报文,但没有收到对方的hello确认报文
(3)Attempt : 一般不会出现,只出现在NBMA网络中,发出hello,但收不到对方的hello包
(4)2-way (稳定状态): 双方互相发现,邻居状态稳定,并确认了DR/BDR的角色;
当选举完毕后,就算出现一台优先级更高的路由器,也不会替换成新的DR\BDR;
需要原DR\BDR失效,或重置OSPF进程才会成为新的DR\BDR;
2-way的前提:
Router-id无冲突,修改router-id需要重置ospf进程使生效;
掩码长度一致(MA网络中);
区域ID一致;
验证密码一致;
hello-time一致;
dead-time一致;
特殊区域类型一致;
邻接关系开始建立
(5)Exstart **:**交换开始状态;发送第一个DD报文,但不发送LSA摘要,仅用于确定LSDB协商的主从,ROUTER-ID大的成为master
(6)Exchange :交换状态;发送后续DD报文,用于通告LSDB摘要
(7)Loading **:**读取状态,进行LSA的请求、加入和确认
(8)Full : 邻接状态(稳定状态),两端同步LSDB;
--注意: FULL的前提:两端MTU一致,否则可能卡在EXSTART\Exchange状态
能够计算路由的前提:两端网络类型一致,否则邻居状态full,但无法学习路由
二、OSPF的区域划分
1 、分区好处
减少LSA泛洪范围;
提高网络扩展性,有利于组建大规模的网络;
2 、区域类型
骨干区域:
非骨干区域:
特殊区域:优化路由表、优化LSDB表
1 、STUB区域:末梢区域
(1)定义:
末梢区域,适用于区域中路由器性能较低,目的是为了减少区域中路由器的路由表规模以及路由信息传递的数量。不希望接收大量的AS以外路由
(2)特征:
不接受4类5类LSA;
不允许出现ASBR;
区域0不能被配置为STUB区域;
虽然拒绝学习域外路由信息,但依然有访问域外路由的需求;故会由ABR设备自动下发一条指向骨干区域的3类缺省;
2 、totally stub区域----完全末梢区域
(1)定义:完全末梢区域,拒绝学习域外和其他区域的路由信息
(2)特征:
不接受3类4类5类LSA;
不允许出现ASBR;
区域0不能被配置为totally STUB区域;
虽然拒绝学习域外路由信息,但依然有访问域外路由的需求;故会由ABR设备自动下发一条指向骨干区域的3类缺省;
3 、NSSA区域(Not-So-stubby Area)----非纯末梢区域
(1)定义:非纯末梢区域,是STUB区域的变形,拒绝学习域外(主要是5类)路由信息,但需要引入后面的域外路由信息
(2)特征:不接受4类5类LSA;
本区域引入的外部路由以7类LSA存在;
本区域的ABR会 把引入的7类LSA转换为5类 LSA通告给其他区域;
LSA
LSA是OSPF的一个核心内容,如果没有LSA,OSPF是无法描述网络的拓扑结构及网段信息的,也无法传递路由信息,更加无法正常工作,在****OSPFV2 中,需要我们掌握的主要有 6 种。
1 、type1-LSA:----重要且复杂
(1)定义:router LSA
- 描述区域内部与路由器直连的链路信息(链路类型、开销值等)
- 仅在区域内部传输
- 每台路由器都会产生Type1 LSA
2 、type2-LSA:
(1)定义:network LSA
描述区域内的MA网络(广播网络、NBMA网络)链路的路由器及掩码信息
仅在区域内部传输
只有DR才会产生type2_LSA
R1\]dis ospf lsdb network 查看Type2 LSA的具体信息 (2)内容: LS ID:该网段的DR的IP地址 Adv Rtr:该网段DR的router-id network mask:该网段DR的IP地址的子网掩码信息
3 、type3-LSA:
(1)定义:Summary LSA(聚合LSA)
在整个OSPF区域内,描述其他区域的链路信息
以子网形式传播,类似直接传递路由
只有ABR会产生type3_LSA
R1\]dis ospf lsdb summary 查看Type3 LSA的具体信息 (2)内容: LS ID:其他区域某个网段的网络地址 SubAdv Rtv:通告该LSA的ABR的router-id net mask:该网段的子网掩码 注:3类LSA的传递范围在ABR相邻的单区域中进行,跨区域传递时,需要进行通告者的转换,通告者变了,则将不是同一条LSA
4 、type4-LSA:
(1)定义:Asbr-summary LSA
描述ASBR的信息
只有ABR才会产生TYPE4 LSA
(2)内容:
LS ID:ASBR的router-id
Adv Rtv:通告描述该ASBR的ABR的router-id
注:在ASBR本区域的内部路由器,不会产生到达该ASBR的4类LSA
5 、type5-LSA:
(1)定义:AS_extenal LSA,传递域外 路由信息
描述AS外部引入的路由信息,会传播到所有区域(特殊区域除外)
只有ASBR才会产生type5_LSA
(2)内容:
LS ID:外部路由的目的网络地址
Adv Rtv:引入该网络路由的ASBR的router-id
net mask:引入的该目标网段的子网掩码
R1\]dis ospf lsdb ase 查看Type5 LSA的具体信息
6 、type7-LSA:
(1)定义:NSSA LSA
描述在NSSA区域引入的AS外部路由信息
只会出现在NSSA和totolly NASS区域,不能进入area 0
7类LSA生成路由信息的标记位,O_NSSA,优先级150
(2)内容:
LS ID:外部某个网段的网络地址
Adv Rtv:引入该网络路由的ASBR的ABR的router-id