OSPF路由协议
内部网关协议和外部网关协议
自治系统(AS):使用同一协议的区域
内部网关协议(IGP):工作在自治系统之内的网关协议
外部网关协议(EGP):工作在AS之间的,可以使两个独立的AS进行连接,使它们之间实现通信。
AS是指由同一个技术管理机构管理,使用统一选路策略的路由器的集合。
OSPF是链路状态路由协议
OSPF的工作过程
·邻居列表
·链路状态数据库
·路由表
建立邻接关系———>链路状态数据库——>最短路径树———>路由表
以自己为根,计算出最优路径。
OSPF区域
为了适应大型的网络,OSPF在AS内划分多个区域。
每个OSPF路由器只维护所在区域的完整链路状态信息。
区域ID
区域ID可以表示成一个十进制的数字
也可以表示成一个IP
骨干区域
负责区域间路由信息传播
非骨干区域
Router ID
OSPF区域内唯一标识路由器的IP地址
Router ID选取规则
选取路由器loopback接口上数值最高的IP地址(回环网口相当于在路由器内部)
如果没有loopback接口,在物理端口中选取IP地址最高的
也可以使用router-id命令指定Router ID(优先级最高)
DR和BDR
广播网络中建立邻接关系
构成n(n-2)/2个邻接关系
指定路由器(DR)
是为了解决链路连接过多的问题,BDR相当于是一个副队长的意思,DR挂掉之后就会使用BDR,其他路由器只能和DR以及BDR形成邻接关系
DR和BDR的选举方法
自动选举DR和BDR:网段上Router ID最大的路由器将被选举为DR,第二个选举为BDR。
手动选择DR和BDR:优先级范围是0~255,数值越大,优先级越高,默认为1.
如果优先级相同,则需要比较Router ID,如果路由器的优先级为0,则它不参与DR和BDR的竞选。
在现场环境中,一般来说,先开机的是DR,第二开机的是BDR,因为选举大概十几秒就能完成,这样就可能在第二台路由器还没开机就已经选举成功了。路由器的优先级可以影响一个选举过程,但是它不能强制啊让现在已经在任的DR和BDR下位,只有等他们都不能工作的时候,才能更换DR和BDR。
OSPF的组播地址
224.0.0.5 互相发送Hello包进行选举 DR和BDR把消息发给DRother
224.0.0.6 DRother发送给DR和BDR
OSTF的度量值为cost
cost=10^8/BW
最短路径是基于接口指定的代价(cost)计算的
接口类型 | 代价(10^8/BW) |
---|---|
Fast Ethernet | 1 |
Ethernet | 10 |
56K | 1785 |
cost值越小越优
OSPF数据包
承载在IP数据包内,使用协议号89
OSPF的包类型
OSPF的包类型 | 描述 |
---|---|
Hello包 | 用于发现和维持邻居关系,选举DR和BDR。 |
数据库描述包(DBD) | 用于向邻居发送摘要信息,以同步链路状态数据库 |
链路状态请求包(LSR) | 在路由器收到包含新信息的DBD后发送,用于请求更详细的信息 |
链路状态更新包(LSU) | 收到LSR后发送链路状态通告(LSA),一个LSU数据包可能包含了几个LSA |
链路状态确认包(LSACK) | 确认已经收到DBD/LSU,每个LSA需要被分别确认 |
OSPF启动
包括Down状态,Lnit状态,2-Way状态,Exstart状态,Exchange状态,Loading状态,Full状态。
OSPF网络类型
OSPF将网络划分为四种类型
点对点网络(Point-to-point)
——自动发现邻居,不需要DR/BDR,组播224.0.0.5
广播多路访问网络(Broadcast MultiAccess,BMA)
——自动发现邻居,选DR/BDR,组播224.0.0.5,224.0.0.6
非广播多路访问网路(None Broadcast MultiAccess NBMA)
——手动指定邻居,选DR/BDR,单播
点到多点网络(Point-to-Multipoint)
——自动发现邻居,不需要DR/BDR,组播224.0.0.5
OSPF的特点
可适应大规模网络
路由变化收敛速度快
无路由环
支持变长子网掩码VLSM
支持区域划分
支持以组播地址发送协议报
OSPF多区原理和配置
生成OSPF多区域的原因
·改善网络的可扩展性
·快速收敛
OSPF的三种通信量
域内通信量
单个区域内的路由器之间交换数据包构成的通信量
域间通信量
不同区域的路由器之间交换数据包构成的通信量
外部通信量
OSPF域内的路由器与OSPF区域外或另一个自治系统内的路由器之间交换数据包构成的通信量。
OSPF的路由器类型
区域边界路由器(ABR):用来连接区域0和其他区域(用在内部协议不同区域的划分)
自治系统边界路由器(ASBR):用来连接OSPF的AS与外部其他的路由(连接外部协议)
OSPF的区域类型
·骨干区域Area0
·非骨干区域—根据能够学习的路由种类来区分
··标准区域
··末梢区域(stub)
··完全末梢(Totally stubby)区域
··非纯末梢区域(NSSN)
末梢区域和完全末梢区域
满足以下条件的区域
·只有一个默认路由作为其区域的出口
·区域不能作为虚链路的穿越区域
·stub区域里无自治系统边界路由器 ASBR
·不是骨干区域Area0
末梢区域
·没有LSA4.5.7通告
完全末梢区域
·除了一条LSA3的默认路由器通告外,没有LSA3.4.5.7通告
路由器对路由条目的选择
路由器只把最优的路由目录添加到路由表
选择路由条目的依据
·管理距离
·度量值
末梢区域和完全末梢区域的作用
主要目的是减少区域内的LSA条目以及路由条目,减少对设备cpu和内存的占用;末梢区域和完全末梢区域中ABR会自动生成一条默认路由发布到末梢区域或完全末梢区域中。
OSPF链路状态数据库
·链路状态数据库的组成
··每个路由器都创建了由每个接口,对应的相邻节点和接口速度组成的数据库。
··链路状态数据库中每个条目称为LSA(链路状态通信)常见的有六种类型。
类型代码 | 描述 | 用途 |
---|---|---|
Type1 | 路由器LSA | 由区域内的路由器发出的,描述了路由器的的链路状态和花费,传递到整个区域内 |
Type2 | 网络LSA | 由区域内的DR发出的,描述了区域内变更信息,传递到整个区域内 |
Type3 | 网络汇总LSA | ABR发出的,其他区域的汇总链路通告,描述了其他区域内某一网段的路由,区域间传递 |
Type4 | ASBR汇总LSA | ABR发出的,用于通告ASBR信息,确定ASBR的位置,不会出现在ASBR所属区域之内 |
Type5 | AS外部LSA | ASBR发出的,用于通告外部路由,告诉相同AS的路由器通往外部AS的路径,在整个AS中进行泛洪 |
Type7 | NSSA外部LSA | NSSA区域内的ASBR发出的,用于通告本区域连接的外部路由,与Type 5类似,仅在非纯末梢区域内进行泛洪,传递时会被ABR转换为LSA5 |
路由重分发
一个单一lP路由协议是管理网络中IP路由的首选方案
Cisco lOS能执行多个路由协议,每一个路由协议和该路由协议所服务的网络属于同一个自治系统
Cisco lOS使用路由重分发特性以交换由不同协议创建的路由信息
路由重分发的考虑
度量值
管理距离
OSPF重分发路由
重分发到OSPF域中路由的路径类型
类型1的外部路径(Type 1 external path,E1),主要考虑全程的花费。
类型2的外部路径(Type 2 external path,E2),主要考虑外部的花费。
OSPF虚链路
虚链路
指一条通过一个非骨干区域连接到骨干区域的链路
虚链路的目的
通过一个非骨干区域连接一个区域到骨干区域
通过一个非骨干区域连接一个分段的骨干区域两边的部分区域
配置虚链路的规则及特点
虚链路必须配置在两台ABR路由器之间
传送区域不能是一个末梢区域
虚链路的稳定性取决于其经过的区域的稳定性
虚链路有助于提供逻辑冗余