五个步骤,三个表:
泛洪hello报文建立邻居关系,keepalive,得到peer表-->(在广播网络上选举DR和BDR)-->与DR和BDR交换包含LSA头部信息的DBD-->根据收到的DBD需求特定的一组LSA,即为LSR-->根据LSR发送LSA的具体细节,即为LSU,建立邻接关系-->每个人都获得自己所需要的完整的LSDB,用SPF计算出OSPF表
八个OSPF路由器的状态:
1.down:刚开始启动,未收到任何hello,只是在发送hello
2.attempt:在不支持广播泛洪的网域中以单播的方式发送hello
3.init:有一方收到了hello
4.2way:双方已经建立了邻居关系,DR和BDR已经选举完成
5.exstart:确认需要建立邻接关系的两方的主从关系
6.exchange:交换DBD信息
7.Loading:根据收到的LSR回复LSU
8.Full:收到了所需的所有LSU,LSDB已经建立完成,正在计算或已完成OSPF表
DR与BDR的选举:
在四倍hello报等待的时间内,比较1选举优先级(255-0)2RouterID,选举成功之后不会重新选举除非down
DR与BDR监听224.0.0.6,DRother监听224.0.0.5
6种LSA:
- LSA1:区域内的OSPF互通
- LSA2:只有DR会产生,BDR不会
- LSA3:ABR对于区域内的LSA1的汇总与缩略
- LSA4:在ASBR注入外部路由时,会将自己作为路由目标发布路由,但是只有与ASBR在同一个NSSA区域的路由器才知道去往ASBR的路由,所以其他区域在通过ABR转发ASBR的路由的时候需要稍等此信息用来路由对应的ASBR
- LSA5:ASBR产生的外部路由重发布
- LSA7:NSSA区域的ASBR重发布进来的路由,只能在NSSA区域内传播,否则需要ABR转化成LSA5
OSPF虚链路:在两个有相同的非骨干区域的路由端口之间建立(需要其中一个为ABR)