动态路由协议 --- 选路佳;收敛速度快;占用资源少。
IGP---内部网关协议
链路状态型
距离矢量型
EGP---外部网关协议
ospf基础
OSPF --- 开放式最短路径优先;典型的链路状态型路由协议,是由IETF(国际互联网工程任务组)组
织。
使用的算法**---SPF****算法**。
**接口开销值算法:Cost =参考带宽/实际带宽。参考带宽默认100Mbps。
版本:OSPFv2、OSPFv3
OSPFv2与RIPv2都是无类别路由协议 --- 传递路由信息时,携带真实掩码。
OSPF采用组播形式传递报文,**组播地址224.0.0.5/224.0.0.6
ospf特点
- 没有跳数限制,适合大规模组网
- 使用组播更新变化的路由和网络信息
- 路由收敛快,可以触发更新
- COST作为度量值
- SPF算法有效避免环路
- 30分钟周期性更新----LSA
- 在互联网大量使用,是运用最广泛的路由协议
注意:OSPF传递的是拓扑信息和路由信息,RIP传递的是路由表
ospf三张表
邻居表:记录邻居状态和关系
拓扑表:链路状态数据库(LSDB)

路由表:记录由SPF算法计算的路由,存放在OSPF路由表中
dis ip routing-table pro ospf
ospf数据包
OSPF报文直接封装在IP报文中,协议号89

头部数据包内容:


- 版本(Version):对于OSPFv2,该字段值恒为2。
- 类型(Type):该OSPF报文的类型。该字段的值与报文类型的对应关系是:1-Hello;2-DD;3-LSR;4-LSU;5-LSAck。
- 报文长度(Packet Length):整个OSPF 报文的长度(字节数)。
- 路由器ID (Router Identification):路由器的OSPF Router-ID。
- 区域ID (Area Identification):该报文所属的区域ID,这是一个32bit 的数值。
- 校验和(Checksum):用于校验报文有效性的字段。
- 认证类型(Authentication Type):指示该报文使用的认证类型。
- 认证数据(Authentication Data):用于报文认证的内容。
hello报文
发现、建立、周期保活OSPF邻居关系。
10秒钟发送一次hello报文,来确认邻居是否存在。如果在一个hold-time时间内没有收到邻居
发送的hello报文,则认为邻居不存在,一般为hello时间的四倍。
使用的是224.0.0.5发送。
hello报文存在一个非常重要的参数,Router-ID --->路由器标识符
全域唯一;
表示形式:点分十进制--->一般采用手工配置方式。
自动配置 ---> 遵循RFC标准:取环回最大IP地址,若没有环回,则取物理接口最大IP地 址。
DD报文 --- 数据库描述报文
携带的是路径信息的摘要****(LSA的摘要)。
LSA--->指的是链路状态通告(里面包含的是拓扑或路由信息)
减少更新量的一个做法。
LSR报文 --- 链路状态请求报文
基于未知的LSA摘要,来请求完整的LSA信息。
LSU报文 --- 链路状态通告
携带了完整的LSA信息。
LSAck报文
是一种显式确认机制。
该报文是在确认上一步LSU报文中传输的LSA信息。
ospf工作过程
状态机
down --- 关闭状态;一旦启动OSPF协议,则进入下一个状态,并发送出本地的hello报文。
init --- 初始化状态;成功发送第一个hello报文的状态。当收到一个hello报文,并且该hello报文中
携带了本地的RID时,进入下一个状态。
2-way --- 双向通信状态;代表邻居关系建立。是一个稳定态。
条件匹配:匹配成功进入下一个状态,匹配失败**(双方均为DRother),则停留在2-way状态。
exstart --- 预启动状态;使用未携带信息的DD报文进行主从关系选举,RID值大的设备成为主设
备,而从设备先进入下一个状态。
exchange --- 准交换状态;使用携带信息的DD报文**进行摘要信息共享。
loading --- 加载状态;通过LSR/LSU/LSAck三种报文,来交互完整的LSA信息。
full --- 转发状态;LSA交换完成后进入该状态,代表邻接关系的建立。是一个稳定态。
仅仅是收集完所有的LSA信息。
条件匹配
目的:选举出负责人,减少LSA的重复更新。
设备名称 --- 设备身份指的是路由器的接口身份。
DR --- 指定路由器
BDR --- 备份指定路由器
DRother --- 其他路由器
在一个广播域中,DR有且只有一个,而BDR可以没有。
选举规则:使用hello报文进行选举。
- 比较接口优先级,0-255;越大越优。默认为1。0代表放弃选举。
- 比较RID,越大越优。
角色之间的关系
只有DRother之间,为邻居关系,其他设备之间为邻接关系。224.0.0.5地址是所有设备都可以发送和接收的,而224.0.0.6****地址是所有设备可以发送,但是
只有DR和BDR可以侦听的地址。
DR****角色是非抢占模式。
工作过程
启动配置后,OSPF向本地所有运行了OSPF协议的接口以组播224.0.0.5发出hello'报文,hello报文
中携带本地RID值。通过接收到其他邻居的hello报文,建立邻居关系,此时生成邻居表。
进行条件匹配。匹配失败停留在邻居关系,仅使用hello报文保活。
匹配成功,则开始建立邻接关系。
首先使用未携带数据的DD报文进行主从关系选举。
使用携带数据的DD报文进行LSA摘要共享。
之后使用LSR/LSU/LSAck报文获取完整LSA信息。
当收集所有的LSA后,本地建立LSDB--链路状态数据库。**存放本地生成的LSA以及接收到的所有**LSA。
基于数据库信息,运行SPF算法,生成有向图和最短路径树。根据结果来计算本地到达所有未知网
段的最短路径,并将其加载到OSPF****路由表中;
然后将OSPF路由表中的路由项与其他路由表中的相同路由项进行对比,选择最优的路由加载到全局路由表。
此时收敛完成,使用hello报文30S周期保活。并且每30min进行一次周期链路刷新。
LSDB的更新
网络正在第一次收敛的时候,路由器会把自己LSDB表中的所有LSA发给邻接路由器。
注:广播网络中的更新:只由DR发起----当网络拓扑有变化的时候,路由器先把变化后的LSA发给监听224.0.0.6的的路由器,DR会把变化的LSA发给监听224.0.0.5的路由器。
ospf的开销计算
计算方法:
链路带宽大于等于参考带宽 cost=1
反之,cost=参考带宽/链路带宽(Mb)
注:在路由器上。千兆以太网、百兆以太网、十兆以太网的缺省OSPF链路开销值分别是:1、1、10
ospf区域划分
分区好处:
减少LSA泛洪范围;提高网络扩展性,有利于组建大规模的网络;
通过区域划分 --- 支持OPSF的中大型网络部署,并且,在每一个区域内部运行SPF算法,来构建无环树形结构,可以保证每一个区域内部,不会出现三层环路。
链路状态型协议的距离矢量特征 --- OSPF协议,在区域内部传递拓扑信息,在区域之间传递路由信息。
区域类型

骨干区域:
非骨干区域:
特殊区域:优化路由表、优化LSDB表
ospf路由器类型
区域内路由器(IR):所有接口在同一区域
骨干路由器(BR):有接口都在骨干区域
区域边界路由器(ABR):连接骨干区域和非骨干区域
自治系统边界路由器(ASBR):连接外部自治系统并引入外部路由;ASBR设备上要运行多种路由协议或者运行同一个路由协议的多个进程。
ABR设备 --- 负责将不同区域的路由信息进行相互传递的。将收集到的A区域的拓扑,计算为路由然后把这些路由传递给区域B。路由传递,一定是先经过骨干。
**ABR ---**区域边界路由器定义:
- 至少连接两个不同的区域。
- 至少有一个接口连接在Area 0。
- 在Area 0中必须存在一个活跃的邻居。
区域划分原则
- OSPF要求域中的所有非骨干区域都必须与Area 0直接相连。
Area 0实际上就是骨干区域。 - 骨干区域不能被分割 --- 骨干区域唯一。
非骨干区域之间,不允许直接相互发布路由信息。
OSPF规定:从非骨干区域收到的"路由信息",ABR能接收,但是不会使用这条路由信息,也不会传递这条路由信息**(OSPF区域水平分割原则)。---**从一个区域学习到的路由信息,不能在传递回该区域。
LSA头部
链路状态**---**每台路由器对自己激活了链路状态型协议的接口信息的描述内容。
路由器会将网络中所洪泛的所有的链路状态信息收集起来,并且存入LSDB中;被视为是对整个网络
拓扑结构及网段信息的描绘。--->所有路由器的LSDB都是相同的。
每一台路由器的LSDB都是独立的,可以独立运行SPF算法。以自己为根节点,得到一颗无环的最短路径树。

链路状态老化时间 --- 指的是这一条LSA的失效时间。
当LSA被始发路由器产生时,老化时间会被设定为0;之后随着LSA在网络中洪泛,老化时间逐渐累加。
老化时间一般小于1800秒;原因:因为OSPF存在周期链路刷新机制,每30min向外通告本地产生的LSA****信息。
最大老化时间**--- 3600秒**。**当LSA时间增长到3600S****,则本地才可以删除该LSA**。
**对于一条LSA而言,只有始发路由器可以修改,而其他路由器不能修改**。
链路状态类型 --- 指的是本条LSA的类型
链路状态ID --- 根据不同的类型,ID信息是完全不同的。
通告路由器 --- 产生该条LSA的路由器的RID
链路状态序列号---一台路由器,每发送同一条LSA信息,则会将序列号加1**。
**设备一旦发现接收到的LSA的序列号比本地的序列号大,则将会用接收到的LSA信息覆盖本地**的信息**。
32bit的二进制数字,一般由16进制标识。
起始位:0x80000001
终止位:0x7FFFFFFF
序列号不能循环。序列号刷新方式
当序列号增长为0x7FFFFFFE;接下来再一次发送新的报文时,会将序列号0x7FFFFFFF中的LSA的老化时间设定为3600S。然后紧接着发送一个序列号为0x80000001的LSA。
判断LSA新旧关系
- 根据序列号判断,序列号越大,则LSA越新。
- 如果序列号相同,则对比校验和,拥有更大校验和的LSA被认为更新。
- 如果校验和也相同,则比较老化时间。
- 如果存在一个LSA,老化时间为3600S,则无条件加载到本地LSDB中。
- 如果不存在一个LSA老化时间为3600S,则比较两条LSA的老化时间差值
如果差值大于15min,则认为老化时间小的更新。
如果差值小于15min,则两条LSA相同。
6种LSA
|------------------|-------------|---------------------------------------------------|--------------------|-------------------|
| 链路类型 | LS ID | 通告者 | 传播范围 | 携带信息 |
| Router(Type-1) | 通告者的RID | 区域内所有运行了OSPF协议 的路由器的RID | 单区域 | 本地接口的 直连拓扑信 息 |
| network(Type- 2) | DR接口 的IP地址 | 单个MA网络中DR所在的路 由器的RID | 单区域 | 单个MA网络 拓扑信息的 补充信息 |
| summary(Type- 3) | 目标网络号 | ABR设备的RID,在通过下一 个ABR设备时,会被修改为 新的ABR设备的RID | ABR设备相 邻的区域 | 域间路由信息 |
| asbr(Type-4) | ASBR的 RID | 与ASBR同区域的ABR的 RID,在通过下一个ABR设备 时,会被修改为新的ABR设 备的RID | 除了ASBR所 在区域的其 他单区域 | ASBR的位置信息 |
| ase(Type-5) | 域外路由 目标网络 号 | ASBR | 整个OSPF网络 | 域外路由信息 |
| NSSA(Type-7) | 域外路由 目标网络 号 | ASBR;离开NSSA区域后, 被转换为5类 | NSSA区域 | 域外路由信息 |
一类LSA是每台路由器都会发送的,并且每台路由器会使用一个一类LSA来完全描述自己的所有连接在该区域的接口的参数信息。一个接口可以使用一个或多个link来进行描述。
二类LSA是可以被理解为对1类LSA的补充信息,填充了1类LSA中的某个MA网络的连接节点数量以及该MA****网络的掩码信息。
二类LSA是由DR设备发送的,用来描述该MA网络信息的,使用DR发送的原因,是因为只有DR可以将LSA通告给所有的邻居。
路由信息在传递时,只需要携带目标网络号、掩码、开销值,不需要携带下一跳,因为谁传递给
我,谁就是我的下一跳。
三类LSA中开销值为该LSA通告者本地上,该路由项的开销值。而接收者对于路由开销值计算的方式=本地到达LSA通告者的Cost + LSA中的Cost。
对于任何一种路由信息,路由器在收到后,都需要进行一次验算过程,即验算本地是否能够达到路
由的通告者所在地。而三类LSA的验算,是通过1/2类LSA辅助完成的,因为只有拥有1/2类LSA后,才可以找到对应的RID。
因为五类LSA的通告者是ASBR,而该LSA可以传播到整个OSPF网络,所以需要又另外一种LSA帮助接收者来递归ASBR的位置,即四类LSA。
四类LSA中,仅记载了ASBR的RID的位置,以及该LSA通告者到达ASBR的开销值。
7类LSA相当于是5类LSA的马甲。其内容与5类LSA基本相同。
O_NSSA--->代表根据7类LSA学习到的路由信息,优先级150。
7类LSA与5类的不同点:
options字段
E --- 代表该LSA允许被洪泛
N --- 代表允许设备处理7类LSA;一般与P标记一起出现
P --- 代表支持7/5操作。
FA字段
一般原始五类LSA,该字段为0.0.0.0;而7类以及7/5操作的LSA一般为非0;
FA字段在7类LSA中,一般会使用通告者的环回地址作为FA字段,如果没有宣告在OSPF****网络
的第一个宣告环回,则选择宣告在OSPF网络的第一个宣告物理地址。
ospf网络类型
网络类型 --- 指的是数据链路层所运行的协议及规则来划分的。
P2P --- 点到点网络类型
MA --- 多点接入网络类型
BMA --- 广播型多点接入
NBMA --- 非广播型多点接入
所谓的OSPF接口网络类型,指的是OSPF的接口在某种网络类型下的工作方式
|------------|-------------------------------------------------------------------------------------------------------------------|
| 网络类型 | 网络类型OSPF接口网络类型**(工作方式)** |
| Broadcast | Broadcast;可以建立多个邻居关系;需要进行DR/BDR选举;Hello时间 10S, dead time 40S。 |
| P2P | P2P;只能建立一个邻居关系;不需要进行DR/BDR选举;Hello时间 10S, dead time 40S。 |
| 环回接口(虚拟接口) | P2P填充;实际上该接口没有数据收发。默认学习32位主机路由;cost固定为0。 |
| | P2MP;可以建立多个邻居关系,不需要进行DR/BDR选举;Hello时间 30S, dead time 120S。会学习邻居接口的主机路由。 |
| NBMA(帧中继) | NBMA;可以建立多个邻居关系,需要进行DR/BDR选举;Hello时间 30S,dead time 120S。 不能自动建立邻居,需要管理员手工指定邻居IP地址。 该类型所有的OSPF报文都是单播发送 |
| | Vlink(Vitrual);以单播来传输数据;Hello时间 10S,dead time 40S。不需要 进行DR/BDR选举。 |
OSPF在BMA网络类型中,通常以组播方式发送hello报文、LSU、LSAck报文。以单播形式发送DD报文以及LSR****报文。
P2P****网络中,所有报文都是组播形式发送。
环回接口的OSPF接口开销值固定为****0。
所有通过OSPF协议学习到的环回接口的路由掩码都是32位;原因是因为环回接口只会存在一个IP地址。目的:避免环路或路由黑洞。
P2MP --->特殊类型,是一个扩展类型,在P2P的本质上,进行了扩充,使得P2P基础上可以连接多个节点。
没有任何一种数据链路层协议会被缺省认为是P2MP环境,点到多点环境是人为创造的。
在P2MP环境中,只有hello报文是组播发送,其余报文都是单播发送。
NBMA****网络一般不会出现,只能在帧中继网络中出现该环境。
OSPF优化方案:将网络类型修改为P2P或者P2MP**,减少进行DR选举的时间,加快收敛;但是需要注意,P2MP的hello时间比P2P****长**。
OSPF不规则区域划分解决方案
所有的非骨干区域都必须和骨干区域直接相连
骨干区域存在且唯一 --- 骨干区域不能被分割
不规则区域划分,指的是没有按照星型拓扑结构来部署OSPF网络
远离骨干的非骨干区域
非骨干区域之间不允许直接相互发布区域间路由信息。
不连续的骨干区域
OSPF区域水平分割原则---从非骨干区域收到的路由信息,ABR只能接收,但是不能使用和转发。
解决思路:本质上,是让R3(伪ABR设备**)能够具备ABR****的功能**。
虚连接
[r2-ospf-1-area-0.0.0.1]vlink-peer 3.3.3.3
[r3-ospf-1-area-0.0.0.1]vlink-peer 2.2.2.2
**配置注意点:1.对端的RID;2.需要进入跨越的区域中配置。
**Vlink可以被视为是骨干区域的一段延伸。
这一条虚拟的链路,只能够跨越一个****非骨干区域。
Vlink建立的邻居关系,不再OSPF****邻居表中存放。Vlink链路是基于物理链路来建立的,只要本地还存在到达目标的物理链路,那么Vlink永远都不会中断。
OSPF规定:Vlink所在的非骨干区域,不能传递聚合路由;即ABR设备不能向配置了Vlink链路的区域传递聚合路由信息。--- 原因:为了避免环路的产生。
重发布
[R4-ospf-1]import-route ospf 2
[R4-ospf-2]import-route ospf 1
经过重发布引入的路由信息,在OSPF中的表现为O_ASE,优先级为****150。
OSPF****域内路由、域间路由、域外路由。
种子度量值**---在重发布的过程中,因为原本的度量值(Cost)对于新网络而言,没有意义,所以不需要传递原本的开销值,但是不能不传递开销,否则接收方无法计算路由总Cost,故传递一个****"种子度量值****",人为添加的参数。在OSFP中,种子度量值默认为1****;在RIP中默认为****0**。
可以将直连、静态、任何动态路由协议的路由信息,引入到其他动态路由协议,但是不能够引入缺
省路由。
特殊区域
定义:特殊区域是指人为定义的一些区域,它们在逻辑中一般位于ospf区域的边缘,只与骨干区域相连。
特殊区域的条件:不能是骨干区域;不能存在虚链路;
STUB区域:末梢区域
末梢区域,适用于区域中路由器性能较低,目的是为了减少区域中路由器的路由表规模以及路由信息传递的数量。不希望接收大量的AS以外路由
**1.**不能是骨干区域;2.不能存在Vlink链路;3.不能存在ASBR设备
如果一个区域成为末梢区域,则该区域会拒绝学习4/5类****LSA。
特殊区域的配置,需要在所有接入到该区域的路由器上进行配置。
成为Stub区域的区域,会由ABR设备主动产生一条三类用来描述缺省路由的LSA****信
息。
[r1-ospf-1-area-0.0.0.2]stub
[r5-ospf-1-area-0.0.0.2]stub
totally stub区域----完全末梢区域
完全末梢区域,拒绝学习域外和其他区域的路由信息
**1.**不能是骨干区域;2.不能存在Vlink链路;3.不能存在ASBR设备
如果一个区域成为末梢区域,则该区域会拒绝学习4/5类****LSA。
特殊区域的配置,需要在所有接入到该区域的路由器上进行配置。
成为Stub区域的区域,会由ABR设备主动产生一条三类用来描述缺省路由的LSA****信
息。
特点:在末梢区域的基础上,进一步的拒绝3类LSA在该区域中洪泛。

[r1-ospf-1-area-0.0.0.2]stub no-summary ---只需要在ABR上配置
NSSA区域(Not-So-stubby Area)----非纯末梢区域
**1.**不能是骨干区域;2.不能存在Vlink链路;3.必须存在ASBR设备。
如果一个区域成为NSSA区域,则该区域会拒绝学习4/5类****LSA
。
该区域不允许传递5类LSA,但是又存在ASBR设备,所以由ASBR引入进来的路由信
息,会由7类LSA来表示,但是7类LSA只能够存在于NSSA区域。即在NSSA区域的
ABR上,将7类LSA向外传递时,会将其转换为5类LSA****向外通告
成为NSSA区域后,ABR设备会主动下放一条描述缺省路由的7类LSA。
[r1-ospf-1-area-0.0.0.2]nssa
[r5-ospf-1-area-0.0.0.2]nssa
totally NSSA区域---完全非纯末梢区域
**1.**不能是骨干区域;2.不能存在Vlink链路;3.必须存在ASBR设备。
在NSSA区域的基础上,进一步拒绝3类LSA的传播。
完全NSSA区域中,ABR会下发三类缺省路由;然后撤销原本下发的7类缺省路由。
但是只有华为,在完全NSSA区域中,保留了原本下放的7类LSA;即存在3类和7类
两条描述缺省路由的LSA信息。
不接受3类4类5类LSA
[r5-ospf-1-area-0.0.0.2]nssa no-summary
OSPF路由聚合
OSPF路由只能手动聚合(LSA),将具有相同前缀的路由信息聚合后发布到其他区域
针对3类、5类、7类LSA;OSPF路由只能手动聚合(LSA
ABR聚合(3类)
实质上是通过在ABR设备上对区域之间传递的三类LSA进行汇总。
[GS-R2-ospf-1-area-0.0.0.1]abr-summary 192.168.0.0 255.255.224.0 --
- 在本地产生一条描述192.168.0.0/19的三类LSA,而这个LSA会抑制本地生成明细三类
LSA
[GS-R3-ospf-1-area-0.0.0.2]abr-summary 192.168.32.0 255.255.224.0
在配置时,需要进入到Area 1中,原因这些三类LSA的根本来源,是根据Area 1中
的1/2类LSA计算得到的。--- 需要汇总哪个区域的路由,则进入到哪个区域中进行配
置。
域间路由汇总,只能够汇总本地从1/2类LSA中计算得到的路由。
汇总的LSA只会影响他人,而不会影响到自身本地。
当ABR本地还存在任意一条明细路由时,关于这些明细的路由的汇总路由就可以向外发
布;而如果所有明细路由均失效,则汇总路由失效。
ASBR聚合(5类、7类)
实质上是通过在ASBR的重发布过程中,将5/7类LSA进行汇总。
[r1-ospf-1]asbr-summary 10.1.0.0 255.255.0.0
五类汇总****LSA中的开销值计算方式
Type-1 --- 该LSA的Cost = 所有明细路由中Cost数值的最大值****(每条明细路由的种子
度量值)
Type-2 --- 该LSA的Cost = 所有明细路由中Cost数值的最大值 + 1
OSPF安全特性
1、OSPF报文验证:
区域验证模式:在区域下配置一致的密码才能加入同一个区域。[r3-ospf-1-area-0.0.0.0]authentication-mode md5 1 cipher 123456
接口验证模式:链路两端的接口必须配置一致的密码才能建立邻居关系
r5-GigabitEthernet0/0/0\]ospf authentication-mode md5 1 cipher 123456 虚链路认证(本质接口认证):\[r4-ospf-1-area-0.0.0.1\]vlink-peer 3.3.3.3 md5 1 cipher 123456 注:接口认证高于区域认证,只要接口验证通过,区域验证哪怕失败,也不影响邻接关系建立 2、禁止端口发送OSPF报文: 为了使OSPF路由信息不被其他路由器获得,配置静默接口:\[r5-ospf-1\]silent-interface GigabitEthernet 0/0/2 3、路由过滤 (1)特点:影响本机及下游路由器的OSPF表的学习,过滤本机及下游路由器的LSDB表中的LSA,在协议视图下配置进方向 方法2:在传入区域的区域视图下配置出方向,不影响本机ospf表的学习,但影响下游路由器ospf表的学习,过滤本机及下游路由器的LSDB表中的LSA (3)过滤3类5类/7类LSA:not-advertise 实现 ## 加快收敛 1、修改hello时间:\[r5-GigabitEthernet0/0/0\]ospf timer hello 5 2、修改死亡时间:\[r1-GigabitEthernet0/0/0\]ospf timer dead 20 3、其他计时器: 重传时间默认5S:\[r5-GigabitEthernet0/0/0\]ospf timer retransmit ?-----重传LSA的 INTEGER\<1-3600\> Second(s) 4、修改ospf的网络类型:\[R2-GigabitEthernet0/0/0\]ospf network-type ? 注:两端网络类型不一致,导致邻居关系建不起来 ## 缺省路由 (1)3类缺省:特殊区域自动下发,优先级10 (2)5类缺省:手工配置,优先级150 命令:\[r2-ospf-1\]default-route-advertise --- 相当于将本设备上通过其他方式学到的缺省路由,重发布到OSPF网络当中 (3)7类缺省: 自动下发,通过配置特殊区域自动下发,优先级150-----nssa 手工下发,优先级150 命令:\[r2-ospf-1\]default-route-advertise always --- 在设备上没有其他网络学来缺省信息时,可以强制下发一条7类缺省。 ## 路由控制 1、优先级 \[r3-ospf-1\]preference 50 --- 修改OSPF路由默认优先级,只影响本机OSPF路由的学习 \[r3-ospf-1\]preference ase 100 --- 修改域外导入的路由的默认优先级。 2、开销值 \[r3-ospf-1\]bandwidth-reference 1000 --- 修改参考带宽需要将所有OSPF网络中的设备都改成相同的。 \[r3-GigabitEthernet0/0/0\]undo negotiation auto --- 关闭自动协商 \[r3-GigabitEthernet0/0/0\]speed 10---修改接口真实传输速率 \[r3-GigabitEthernet0/0/0\]ospf cost 1000 --- 修改接口开销值 [R1]dis ospf error 显示ospf错误统计信息 ## 附录E RFC标准文档 --- 2328;附录E描述了OSPF在特定场景下出现路由计算错误问题时,解决方案。 OSPF中3/5/7类LSA传递的是路由信息,而LS ID是传递的路由目标网络号,在三元组信息中,并不包含网络掩码。**所以,当路由器收到****IP****网络号相同,但是掩码不相同的****LSA****时,无法做到区分,导致路由****学习错误**。 若先发送掩码小的路由,则正常产生LSA;后将掩码大的路由发布时,则发送的LS ID为其的**直接广****播地址**。 若先发送掩码大的路由,则正常产生LSA;然后将掩码小的路由发布时,正常发布该路由,但是会将序列号+1;然后再通告一个掩码大的LSA,且其的LS ID为**直接广播地址**。 **掩码小则正常发布,掩码大则发布直接广播地址**。 ## OSPF防环 OSPF域间防环措施 **OSPF****区域水平分割原则****---\> ABR****不会将描述到达某个区域内的****3****类****LSA****在注入该区域**。 **OSPF****规则:****ABR****从非骨干区域收到的****3****类****LSA****不能用于域间路由的计算**。 OSPF域内防环措施 **得益于****SPF(****最短路径优先****)****算法**。 根据LSDB收到到的LSA信息,转换为内部拓扑的图形结构。然后利用有向图机制,将其变化为带有方向性的图形结构(有向图);每台设备以本地为根节点,将有向图转变为树形结构,称为 **最短路径树**。最短路径树描述的路径信息就是路由信息。 ## OSPF选路原则 **域内优于域间优于域外**。--\>1/2类\>3类\>5/7类 域内 --- 如果到达相同目标网段,存在多条1/2类LSA学习到的路由,则比较Cost,小优;如果相 同,则负载均衡。 域间 --- 如果到达相同目标网段,存在多条3类LSA学习到的路由,则比较Cost,小优;如果相同, 则负载均衡。 域外 --- 域外,存在开销值类型 Type-1:路由Cost = 本地到达ASBR + 种子度量值 如果到达相同目标网段,存在多条5类LSA学习到的路由,且开销值类型均为Tpye-1; 直接比较总开销,小优; 如果相同,则负载均衡。 Type-2:路由Cost = 种子度量值 如果到达相同目标网段,存在多条5类LSA学习到的路由,且开销值类型均为Tpye-2 先比较种子度量值,小优。 再比较沿途累加度量值,小优。 如果都相同,则负载均衡 **类型****1****永远优于类型****2**。 **在华为体系中,****5****类和****7****类的选路规则相同** ## **OSPF建邻失败原因** **1.RID冲突 2.区域ID不一致 3.OSPF认证不一致 4.OSPF以太网接口掩码不一致** **5.hello时间和dead时间不一致 6.特殊区域标记不一致 7.没有DR** **8**.**拓展能够建立邻接,但是无法获取路由- 接口网络类型不一致将导致生成有向图不一致,计算路由失败**