OSPF
OSPF是链路状态协议。
架构介绍:
花瓣形状,骨干区域为0区域,其他区域1、2、3都围绕区域0相连,及个别的特殊情况,可以通过虚拟链路来连接。
信息传递:
向邻居发送是自己知道的所有状态的链路状态信息。
路由标识:
Router-ID是网络上唯一用于标识的一台路由器,线网用路由器的环回口来配置Router-ID,这边的地址是32位的公网IP地址,如果没有标,通过物理口来确认。
区域规划:
划分多个区域是为了优化网络性能。
OSPF特点
·可适应大规模网络
·路由变化收敛速度快
·无路由环
·支持变长子网掩码VLSM
·支持区域划分
·支持以组播地址发送协议报
OSPF工作过程
建立邻接关系→(学习链路状态信息)链路状态数据库→(Dijkstra算法)→最短路径树→路由表
先建立邻接关系,相互学习链路状态信息,放在链路状态数据库,通过Dijkstra算法计算出最短路径树,将路由信息添加到路由表中。
DR选举原则
·选举DR、BDR是为在广播多路访问中减少连接关系的建立,优化性能。
·默认Router-ID最大是DR,第二大是BDR,其他是Drother。
·DR一旦被选定就不会被抢占。
·Drother会通过224.0.0.6向DR和BDR通告网络状态信息,DR会通过224.0.0.5向所有邻居通告信息。
OSPF数据包
承载在IP数据包内,使用协议号89。
OSPF协议5种报文分析
Hello
发现邻居并建立和维护邻居关系。
DataBase Description
数据库描述报文DBD,检查所有路由器的LSDB是否同步。
Link-State Request
链路请求报文LSR,向另外一台路由器请求特定的链路状态记录。
Link-State Update
链路回应报文LSU,发送被请求的链路状态记录。
Link-State Acknowledgment
链路确认报文LSA,对其他类型的分组进行确认。
链路通告状态LSA类型
1类LSA:OSPF路由域内每一台路由器都会产生的LSA,这是LSA通告的基础,该LSA包内列出了,本路由器的所有参与OSPF进程的端口的IP地址与掩码与该接口Metric值,他的Link-ID与Adv Router都是发出该LSA的路由器的Router-id,该LSA只会在发送路由器所在的区域内扩散,也就是说他的作用范围是本区域。
2类LSA:此类LSA只会在网络拓扑是多路访问的情况下产生(MA或NBMA),这类LSA包内,列出了这个多路访问的掩码,使用Router-id的方式,描述这个物理网段内有多少台路由器与DR保持联系,Link-id为DR所属的接口的IP地址,Adv Router为DR所在的那台路由器的Router-id。
3类LSA :3类LSA由BDR发出,存在这类LSA的主要原因是1类2类只能在域内域内和传播,无法跨区域,这类数据包内,列出了网段,,掩码,出接口到达目标网段的Metric值,所以3类LSA相当于将1,2类LSA打包,通过ABR传输至其他区域&#x