OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。
收敛过程
1.建立邻居关系
开始转态为down,配置OSPF后开始从接口发出hello包(10S一次)
hello包内容仅有自己的Router-ID,
当路由器收到hello包,记录hello内的RID,更新到hello的邻居字段中,此时状态变更为——init(初始化)
当路由器收到hello包,发现hello包里的邻居字段有自己的RID,此时状态变更为——2-way(双向连接)
hello包通过组播地址发送,224.0.0.5(DR other 接收),224.0.0.6(DR与BDR接收)
keeplive机制,10s周期发送hello,40s内没收到——断开邻居
邻居建立前提:直连能通(能够收发到hello包),RID不同,区域相同,hello/dead时间一致(默认10/40),认证方式一致(明文/密文/无),掩码,特殊区域标签一致
DR:指定路由器 BDR:备份指定路由器: DRother:其他路由器
在MA(multiple access)网络中,必须要有DR,BDR可有可无(默认网络环境为MA),DR,BDR在一个广播域内选举——避免LSA(链路转态通告)重复发送,DRother与DRother关系只建立到2-way
在PTP(点到点)网络中就不需要DR和BDR了
2.建立邻接关系
选举主从(与DR和BDR不同)
路由器互相发送空的DD(摘要)报文(DRother与DRother之间不发送),携带序列号,RID大的为主路由器,小的为从路由器——此时转态为exstart(预开始)
从路由器先发送有数据的DD报文并使用对方的序列号代表自己为从,主路由器发送的DD报文序列号再加1——交互DD报文——此时邻接建立成功,状态为exchange(预交换)
3.交换LSA(链路转态通告)
路由器根据DD报文中,自己没有的路由器条目发送LSQ(链路状态请求)报文,请求本地缺少的LSA
对端发送LSU(链路状态更新)报文,包含LSA的详细信息
路由器再发送LSAck(链路状态确认)报文,确认收到——交换信息过程中状态为loading
交换结束,路由器根据LSDB(链路状态数据库)中的LSA,计算——生成最优的路由器条目记录到路由表中——状态变更为full
OSPF区域:为了减少LSA交换的数量,减轻路由器的压力,骨干区域为0,不同区域不传递LSA,其他区域要互相访问必须经过骨干区域
基本配置:
全局下创建OSPF进程
OSPF 1 router-id X.X.X.X //创建OSPF 进程1 routerID x.x.x.x
area X //进入区域
network IP 通配符 //通告网络配置OSPF
接口模式下
OSPF cost XX //修改路径开销
OSPF dr-priority XX //配置DR/BDR优先级
OSPF authentication-mode md5/simple key-id plain/cipher 密码 //选择认证加密
reset ospf pr //ospf重启进程
display ospf peer //查看邻居信息
display ospf peer b //查看邻居关系
display cu con ospf //查看ospf配置
display ospf lsbd //查看LSDB