一、什么是OSPF?
- OSPF(Open Shortest Path First开放式最短路径优先):是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。
- OSPF 路由协议:是一种用于网际协议(IP)网络的链路状态路由协议。该协议使用链路状态路由算法的内部网关协议(IGP),在单一自治系统(AS)内部工作。
二、四大路由类型:
- DR : 指定一个路由器;
- BDR : 指一个备份指定路由器;
- ABR : ABR是位于一个或多个OSPF区域边界上、将这些区域连接到主干网络的路由器,同时是OSPF主干和相连区域的成员;
- ASBR : 是OSPF域外部的通信量进入OSPF域的网关路由器,也就是说,ASBR路由器是用来把其他路由选择协议学习到的路由通过路由选择重分配的方式注入到OSPF域的路由器。一个ASBR路由器可以是位于OSPF域的自治系统内部的任何路由器,他可以是一台内部路由器或者ABR路由器。
三、外部网关协议与内部网关协议:
- 自治系统(AS):是一个有权自主地决定在本系统中应采用何种路由协议的小型单位。这个网络单位可以是一个简单的网络也可以是一个由一个或多个普通的网络管理员来控制的网络群体,它是一个单独的可管理的网络单元(例如一所大学,一个企业或者一个公司个体)。
- 内部网关协议(IGP):是在一个自治网络内网关(主机和路由器)间交换路由信息的协议。路由信息能用于网间协议(IP)或者其它网络协议来说明路由传送是如何进行的。IGP协议包括RIP、OSPF、IS-IS、IGRP、EIGRP。
- 外部网关协议(EGP):是AS之间使用的路由协议,EGP是一种简单的(网络)可达性协议,其与现代的距离-矢量协议和路径-矢量协议不同,它仅限适用于树状拓扑的网络。
四、OSPF的工作过程:
建立邻接关系 → 链路状态数据库 → 最短路径树 → 路由表
五、OSPF 基本概念:
(1)ospf 区域:为了适应大型的网络,ospf 在AS内划分多个区域;每个ospf路由器只维护所在区域的完整链路状态信息。
(2)区域ID
- 区域ID 可以表示成一个十进制的数字;
- 也可以表示成一个 IP
(3)骨干区域(area0 ):负责区域间路由的信息传播;除了area0 之外的区域都为非骨干区域。
(4)Router ID :ospf 区域内唯一标识路由器的IP地址
(5)Router ID 的选取规则:
- 选取路由器 loopback接口上数值最高的IP地址;
- 如果没有 loopback接口,在物理端口中选取IP地址最高的;
- 也可以使用 router-id 命令来指定一个 Router ID;
(6)DR 与 BDR:
1、DR指定一个路由器,BDR是指一个备份指定路由器。为减小多路访问网络中OSPF流量,OSPF会选择一个DR和一个BDR。当多路访问网络发生变化时,DR负责更新其他所有OSPF路由器。BDR会监控DR 的状态,并在当前DR发生故障时接替其角色。
在多路访问网络上,可能存在多个路由器,为了避免路由器之间建立完全相邻关系而引起的大量开销,OSPF要求在区域中选举一个DR。每个路由器都与之建立完全相邻关系。DR负责收集所有的链路状态信息,并发布给其他路由器。选举DR的同时也选举出一个BDR,在DR失效的时候,BDR担负起DR的职责。点对点型网络不需要DR,因为只存在两个节点,彼此间完全相邻。
2、DR 和 BDR 的选举方法:
- 自动选举DR 和 BDR : 网段上Router ID最大的路由器将被选举为DR,第二大的将被选举为BDR;
- 手动选举DR 和 BDR :
优先级范围是0 ~ 255,数值越大,优先级越高,默认为1;
当优先级相同时,则比较 Router ID;
如果路由器的优先级被设置为0 ,它将不参与DR 和 BDR 的选举;
3、DR 和 BDR 的选举过程:
路由器的优先级可影响一个选举过程,但是它不能强制更换已经存在的DR 或BDR路由器。
OSPF的组播地址:224.0.0.5;244.0.0.6
(7)ospf 的度量值为COST,最短路径是基于接口指定的代价(cost)计算的。
六、OSPF 的数据包类型:
- ospf数据包承载在 IP数据包内,使用协议号为89;
- ospf 的包类型:
七、OSPF 邻接关系建立流程:
- ospf 启动的第一个阶段是使用 Hello 报文建立双向通信的过程;
- ospf 启动的第二个阶段是建立完全的邻接关系;
- 完整流程:
Down状态 → init状态 → 2-Way状态(DR和BDR的选举)→ Exstart状态 → Exchange状态 → Loading状态 → Full状态
八、OSPF 的网络类型:
- 点到点网络;
- 广播多路访问网络;
- 非广播多路访问网络;
- 点到多点网络;
九、OSPF 的特点:
- 可适应大规模网络;
- 路由变化收敛速度快;
- 无路由环;
- 支持变长子网掩码 VLSM;
- 支持区域划分;
- 支持以组播地址发送协议报
十、OSPF协议与 RIP协议的比较:
十一:OSPF 相关配置命令:
-
启动ospf 路由进程:router ospf process-id(process-id表示的是进程号)
-
指定ospf 协议运行的接口和所在的区域:network address 反掩码 area area-id(area-id表示的是区域号)
-
修改接口的优先级:ip ospf priority priority
-
修改接口的Cost 值: ip ospf cost cost
-
查看邻居列表及其状态 :show ip ospf neighbor
-
查看ospf 的配置 : show ip ospf
-
查看ospf 接口的数据结构 : show ip ospf interface type number
十二、OSPF 的三种通信量:
- 域内通信量:单个区域内的路由器之间交换数据包构成的通信量;
- 域间通信量(ABR):不同区域的路由器之间交换数据包构成的通信量;
- 外部通信量(ASBR):ospf域内的路由器与ospf区域或另一个自治系统内的路由器之间交换数据包构成的通信量;
十三、ospf 的路由器类型:
- 骨干区域 Area0;
- 非骨干区域 ---- 根据能够学习的路由种类来区分:
标准区域、末梢区域(stub)、完全末梢区域、非纯末梢区域(NSSA)
(1)只有满足以下条件的才可被称为末梢区域或者完全末梢区域:
- 只有一个默认路由作为其区域的出口;
- 区域不能作为虚链路的穿越区域;
- stub 区域里无自治系统边界路由器 ASBR;
- 不是骨干区域 Area0
(2)末梢区域:没有LSA4、5、7 这三个通告;
完全末梢区域:除了一条LSA3 的默认路由通告外,没有LSA3、4、5、7 这四个通告
十四、链路状态数据库:
(1)链路状态数据库的组成:
- 每个路由器都创建了由每个接口、对应的相邻节点和接口速度组成的数据库;
- 链路状态数据库中每个条目称为 LSA (链路状态通告),常见的有六种LSA类型:
(2)路由器只会把最优的路由条目添加到路由表;并且选择路由的依据是管理距离和度量值。
(3)NSSA区域:
- 它是OSPF 和RFC 的补遗;
- 定义了特殊的LSA类型7;
- 提供了类似 stub area 和 totally stubby area的优点;
- 可以包含 ASBR;
十五、OSPF 的路径类型:
区域内路径(优先级为1);区域外路径(优先级为2);E1外部路径(优先级为3);E2外部路径(优先级为4)
其中,优先级为1的最高,优先级为4的最低。
十六、路由重分发:
在大型的企业中,可能在同一网内使用到多种路由协议,为了实现多种路由协议的协同工作,路由器可以使用路由重分发(route redistribution)将其学习到的一种路由协议的路由通过另一种路由协议广播出去,这样网络的所有部分都可以连通了。 为了实现重分发,路由器必须同时运行多种路由协议,这样,每种路由协议才可以取路由表中的所有或部分其他协议的路由来进行广播。