基本特点:
内部网关协议的一种,属于链路状态路由协议。
优先级10
交互的是链路状态信息不是路由表,通过SPF最短路径优先算法自行计算最优路径,不存在环路,使用OSPF协议的路由器是已知整个网络拓扑结构的。
收敛快,网络拓扑结构一旦发生变化立马更新
划分区域,BR骨干网段,ABR边界路由,IR(internal Router 区域内路由器)
支持各种规模的网络。不会产生环路。
OSPF的开销
cost=100M/接口带宽
PS:cost=1,需要注意的是,百兆及以上的带宽开销都为1——1000M/100M=1,开销一定要取整!
还有:一条路由中计算cost值都是计算入接口的开销
OSPF区域划分概念
骨干区域(area 0)和非骨干区域必须直连
图中,需要注意的是,BR有三个,除了最中间的一个路由器,area0 和area 1边界的路由器以及area 0 和area 1边界的那个路由器都是BR
OSPF DR、BDR
OSPF接口优先级范围0-255,默认为1,越大越优先
选举BDR:步骤和DR选举类似,先比较接口优先级,优先级相同时比较router-id也就是IP地址,IP地址越大为BDR
PS:每个网段都要选取一个DR和BDR作为代表,和其他路由器Dother建立邻居关系。
例如如下题:
OSPF router-id的选择:
①OSPF进程手工配置的优先级最高
②全局模式下配置的公用router-id优先级排第二
③没有前两种的情况下,loopback接口地址中最大的地址作为router-id
④在没有前三种的情况下,选用普通接口的IP地址中最大的做router-id
OSPF、is-is——不支持自动路由汇总,只支持手工路由汇总(CIDR)
rip、BGP——只支持自动路由汇总
路由优先级:汇总>宣告>外部引入
手动CIDR>自动CIDR>本地路由宣告>外部引入路由
路由器分为内部路由器和边界路由器,内部路由器的链路状态数据库一定是相同的,但是边界路由器具有上下 左右多个区域的链路状态数据库信息(LSDB)
其次,OSPF常见报文如下:
LSA:链路状态通告
路由器通过泛洪LSA进行链路状态更新
hello包:周期性发送,用于发现和维护邻居关系(广播网络,默认10秒发送一次,死亡时间4*10)
DD:描述本地LSDB的摘要信息,用于两台路由器进行数据库同步(用于路由器同步自己缺少的信息)
LSR:Request报文,相对方请求所需要的LSA,只有OSPF邻居双方成功交换DD报文之后才能才能发出此报文
LSU:发送请求方所需要的LSA
LSACK:请求方确认已收到
OSPF的3张表
OSPF工作过程:hello包发现邻居——形成OSPF邻居表;(LSA泛洪)收集所有邻居的LSA——产生LSDB表,并形成邻接关系;SPF计算路由——形成路由表
OSPF邻接关系建立过程:
配置
ospf 1 router-id 1.1.1.1//建立OSPF进程1,并用router-id唯一表示该进程
area 0//划分区域,并进入区域0
network 192.168.1.0 0.0.0.255//然后宣告可以发送hello包建立邻居关系的网段加反掩码
display ospf peer brief//查看邻居表
display ospf lsdb//查看database
dispaly ip routing-table protocol ospf//查看通过OSPF学习到的路由