OSPF的五种数据包:
hello包 -- 组播收发,用于邻居、邻接关系的发现、建立、周期保活
DBD -- 数据库描述包-- 本地LSDB(链路状态数据库)目录
LSR---链路状态请求 -- 用于询问对端本地未知的LSA信息
LSU-- 链路状态更新 -- 用于共享具体的每一条LSA信息
LSack 链路状态确认 -- 确认包
OSPF的状态机(7种):
Down 一旦接收到对端的hello包进入下一个状态
Init 初始化 若接收到的hello包中存在本地的RID,那么进入下一个状态机
2way 双向通讯 邻居关系建立的标志
条件:点到点网络直接进入下一个状态机;MA网络进行DR/BDR选举,非DR/BDR之间不能进入下一个状态机;
Exstart预启动 使用不携带数据库目录信息的DBD包,进行主从关系的选举,RID数值大为主,优先进入下一个状态机
exchange准交换 使用携带数据库目录信息的DBD包,进行目录共享,需要ACK确认
loading加载 接收到其他邻接的目录信息后,和本地进行比对,若本地存在未知的LSA信息,将使用LSR询问对端,对端使用LSU来更新这些LSA信息,直至双方数据库一致;
Full 转发 标志着邻接关系已经建立;
OSPF的工作过程
启动配置完成后,OSPF向本地所有运行协议的接口以组播224.0.0.5的形式发送hello包,hello包中包含本地的RID以及自己已知的邻居的RID。之后,将收集到的邻居关系记录在一张表 --- 邻居表。
邻居表建立完成后,将进行条件匹配;如果失败,则停留在邻居关系,仅使用hello包进行周期保活。
如果匹配成功,则开始建立邻接关系。首先使用未携带数据的DBD包进行主从关系选举,之后使用携带数据的DBD包共享目录信息。之后,本地使用LSR/LSU/LSAck包获取未知的LSA信息。完成本地数据库的建立 --- LSDB --- 数据库表。
最后,基于本地的链路状态数据库,生成有向图及最短路径树,之后,计算出到达未知网段的路由信息。将生成的路由信息加载到本地的路由表中。
收敛完成后,OSPF依然会没10S一次发送hello包进行周期保活,每30min进行一次周期更新。
关于OSPF协议从邻居建立成为邻接的条件:
根据网络类型决定
在点到点网络中,所有的邻居关系必然成为邻接关系
在MA网络中从邻居到邻接前将利用一个周期的dead time;进行DR/BDR选举;
先比较这些参选接口的优先级,默认1,取值范围0-255;越大越好,0标识不参选;
DR优先级最大,BDR次大;选举非抢占,故若希望干涉选举,需要重启ospf进程,或者将非DR/BDR修改为0;
[r2]interface GigabitEthernet 0/0/1
[r2-GigabitEthernet0/0/1]ospf dr-priority 3 修改优先级
重启进程
reset ospf process
Warning: The OSPF process will be reset. Continue? [Y/N]:y
非DR/BDR间为邻居关系;
结构突变:
1,突然新增一个网段 --- 触发更新,会立即将变更信息通过LSU包传递出去,需要ACK 确认;
2,突然断开一个网段 --- 触发更新,会立即将变更信息通过LSU包传递出去,需要ACK 确认;
3,无法通信 --- dead time
OSPF的基本配置
1,启动OSPF进程
[r1]ospf 1 router-id 1.1.1.1 [r1-ospf-1]
2,创建区域
[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]
3,宣告
[r1-ospf-1-area-0.0.0.0]network 12.0.0.1 0.0.0.0 --- 反掩码 --- 由连续的1和连续的0组
成,其中,0对应位不可变,1对应位可变。
[r1]display ospf peer --- 查看OSPF邻居表
[r1]display ospf peer brief --- 查看邻居表摘要信息
[r1]display ospf lsdb --- 查看数据库表
[r1]display ospf lsdb router 2.2.2.2 --- 展开一条LSA信息
华为体系下OSPF协议的默认优先级为10。
COST = 参考带宽 / 真实带宽 ---- 华为体系下,参考带宽的默认值为100Mbps
注意:开销值如果算出来是个小数,如果是大于1的小数,则直接取整数部分;如果是
小于1的小数,直接取1。
[r1-ospf-1]bandwidth-reference 1000 --- 修改参考带宽
Info: Reference bandwidth is changed. Please ensure that the reference bandwidth
that is configured for all the routers are the same.
OSPF的拓展配置
1,缺省路由
3类缺省 --- 只能通过特殊区域(普通的STUB,完全STUB,完全的NSSA)的配置自动生成。
5类缺省 --- 通过配置命令生成,将域外的路由信息重发布到OSPF中
[r9-ospf-2]default-route-advertise --- 相当于将设备上其他途径获得的缺省信息重发布到OSPF网络中
[r9-ospf-2]default-route-advertise ALWAYS --- 如果设备上本身不存在缺省信息,则可以通过后面增加always参数来强制下发一条缺省
7类缺省 --- 可以通过配置特殊区域(普通的NSSA)自动生成,也可以通过配置手工配置
[r9-ospf-1-area-0.0.0.3]nssa default-route-advertise --- 在NSSA区域内部生成一条缺省信息
2,手工认证 --- OSPF邻居间发送数据包中携带口令,两边如果口令相同,则身份合法。
1,接口认证 --- 邻居接口上配置,两端口令不相同,则无法建立邻居关系。
[r11-GigabitEthernet0/0/0]ospf authentication-mode md5 1 plain 123456
注意:认证模式,Key ID以及认证口令必须相同,否则将影响邻居关系的建立。
2,区域认证 --- 本质还是接口认证,在一个区域中配置区域认证,相当于同时在这个区域中所有激活的接口上配置了接口认证。
[r1-ospf-1-area-0.0.0.1]authentication-mode md5 1 cipher 123456
3,虚链路认证 --- 虚链路建立过程中的认证
[r9-ospf-1-area-0.0.0.3]vlink-peer 7.7.7.7 md5 1 cipher 123456
3,加速收敛 --- 减少计时器的时间
修改hello时间的命令
[r6-GigabitEthernet0/0/0]ospf timer hello 5
注意:hello时间修改,死亡时间会自动按照4倍的关系进行匹配。
修改死亡时间的命令
[r6-GigabitEthernet0/0/0]ospf timer dead 40
注意:修改死亡时间,hello时间不会改变
Waiting time --- 等待时间 --- 时间长短等同于死亡时间,DR/BDR选举时间。修改死亡时间,该计时器时间会同步修改。注意,两个计时器分开计时,只是数值长短相同。
Poll --- 轮询时间 --- 120S --- 与状态为DOWN的邻居关系发送hello包的间隔时间 ----NBMA
NBMA环境下单方面指定邻居后,将邻居置为Attempt状态,等待对方指定自己。
如果对方一直没有指定(经过一个等待时间 -- 120S,这个时间内,会以30S为周期发送hello包)会将邻居的状态改为down状态,之后,将按照poll时间为周期发送hello包。
[r6-GigabitEthernet0/0/0]ospf timer poll ?
INTEGER<1-3600> Second(s)
Retransmit --- 重传时间 --- 5S --- 发送信息时需要确认,如果重传时间内没有收到确认信息,则将重传。
[r6-GigabitEthernet0/0/0]ospf timer retransmit ?
INTEGER<1-3600> Second(s)
Transmit Delay --- 传输延迟 --- 1S --- 主要是附加在LSA的老化时间上的,为了补偿传输过程中消耗的时间。
[r6-GigabitEthernet0/0/0]ospf trans-delay ?
INTEGER<1-500> Second(s)
4,沉默接口 --- 将一个接口设置称为沉默接口,他将只接受不发送OSPF的数据包。
[r6-ospf-1]silent-interface GigabitEthernet 0/0/0
5,路由过滤 --- 主要是针对3类,5类,7类LSA进行过滤
过滤3类LSA
[r3-ospf-1-area-0.0.0.1]abr-summary 172.16.32.0 255.255.224.0 not-advertise --- 在ABR设备上进入对应的区域配置
过滤5类/7类LSA
[r12-ospf-1]asbr-summary 172.16.160.0 255.255.224.0 not-advertise
6,路由控制
优先级
[r3-ospf-1]preference 50 --- 修改类型为OSPF路由(通过1类,2类和3类LSA学到的)的默认优先级
[r3-ospf-1]preference ase 200 --- 修改类型为O_ASE/O_NSSA的路由(通过5类和7类LSA学到的)的默认优先级
注意:这两条命令在修改时只能影响本设备,并且将本设备上所有对应协议类型的路由条目优先级统一修改。
条件匹配
指定路由器 --- DR
备份指定路由器 --- BDR
条件匹配 --- 在MA网络中,若所有的设备均为邻接关系,将出现大量的重复更新;所以,需要进行DR/BDR的选举,所有非DR/BDR(DROther)之间仅维持邻居关系。
DR和BDR需要和其他设备之间建立邻接关系,一个MA网络中,如果DR和BDR都齐全,则至少需要4台设备才能看到邻居关系。DR和BDR其实是接口的概念。
DR/BDR的选举规则:
1,先比较优先级,优先级大的为DR,次大的为BDR;
所有接口的优先级默认为1。
[r1-GigabitEthernet0/0/0]ospf dr-priority ?
INTEGER<0-255> Router priority value
如果将一个接口的优先级设置为0,则该接口将放弃DR和BDR的选举。
2,如果优先级相同,则比较RID,RID大的为DR,次大的为BDR
DR和BDR选举是非抢占模式的。 ---- 选举时间 --- 等同于死亡时间
OSPF协议号 --- 89
版本 --- OSPF协议的版本
类型 --- OSPF数据包的类型
Hello -- 1
DBD -- 2
LSR -- 3
LSU -- 4
LSACK -- 5
RID --- 携带的是发出数据包设备的RID
AREA ID --- 发出数据包的接口所在区域的ID
认证类型 --- 分为三种 -----NULL -- 0
simple明文认证 --- 1
MD5 --- 2
1,hello包 --- 周期发现,建立和保活邻居关系,DR和BDR选举
网络掩码 --- 数据包发出的接口所对应的网络掩码 --- 邻居双方这个参数必须相同才能正常建立邻居关系(但是,这个参数在点到点网络中是不生效的)
hello时间,死亡时间 --- 这两个时间参数如果不相同,则邻居关系无法建立
可选项 --- 每一个标记位都代表设备遵循OSPF的某一种特性。
其中包含特殊区域的标记位。这个标记位不同,则邻居关系无法正常建立。
路由器优先级 -- 指发出数据包的接口在进行DR和BDR选举时的优先级
DR和BDR --- 在没选出来之前,使用0.0.0.0进行填充,选出来之后,将对应接口的IP地址进行携带。
影响邻居关系建立的参数:
1,网络掩码
2,hello时间
3,dead time
4,特殊区域标记位
5,认证
2,DBD报文 --- 数据库描述报文 --- 1,使用未携带数据的DBD包进行主从关系选举
2,使用携带数据的DBD包共享数据库摘要信息
MTU --- 发送接口所支持的MTU值,华为设备默认不检测MTU值。
[r1-Serial4/0/0]ospf mtu-enable ---- 如果两边均开启MTU的检测,并且两边MTU值设定
不同,则OSPF的邻居关系将卡在EXSTRAT状态。
I --- init --- 该位置1 --- 代表这个数据包是主从关系选举的数据包
M --- more --- 该位置1 --- 则代表这个DBD包后面还有其他的DBD包需要发送。
MS --- master --- 该位置1 --- 则代表发送这个数据包的设备为主
序列号 --- 在DBD报文中,会逐次加1,用于确保DBD报文传输的有序性和可靠性
3,LSR --- 数据链路请求报文 --- 基于DBD包请求未知的LSA信息
链路状态类型,链路状态ID,通告路由器 ---- 被称为是LSA的“三元组”,因为这三个参数可
以唯一的标识出一条LSA信息。
4,LSU --- 链路状态更新报文 --- 真正携带LSA信息的数据包
5,LSACK --- 链路状态确认报文
OSPF的接口网络类型
OSPF的接口网络类型指的是OSPF接口,在不同网络类型下,不同的工作方式。
BMA(以太网):Broadcast,可以建立多个邻居关系,需要进行DR和BDR选举,hello 10S,dead time 40S
P2P(PPP,HDLC,MGRE,GRE):P2P,只能建立一个邻居关系,不需要进行DR和BDR的选举,hello 10S,dead time 40S
虚拟接口(环回接口):P2P,只是华为定义为P2P类型,实际没有数据收发,环回接口的开销值定义为0。环回接口默认学习32位的主机路由,如果想还原真实配置,可以将接口网络类型从P2P改为Broadcast。
P2MP,可以建立多个邻居关系,不需要进行DR和BDR选举,hello 30S,dead time 120S,可以学习邻居接口的主机路由。
NBMA(帧中继):NBMA ,可以建立多个邻居关系,需要进行DR和BDR选举,hello 30S,dead time 120S,只能手工建立邻居关系
在华为体系中,将OSPF中的环回接口的开销值定义为0。这个定义值是不会收到外界的变化(修改参考带宽)而改变
[r2-LoopBack0]ospf network-type broadcast --- 修改接口网络类型
注意:隧道接口的传输速率被定义为64K,实际无数据收发,其目的是为了让接口的开销值变得非常大,能不走就不走。应为,走隧道接口实际还是需要从物理接口发出,但是会额外增加复杂的封装过程,造成资源浪费。
在MGRE环境中,还存在一种全连的MGRE环境(MESH),这种环境下,所有节点既是中心,也是分支,所有节点都将开启伪广播。这样将所有节点接口的网络类型改为Broadcast之后,所有节点在进行DR和BDR选举是,将共同进行,则不会出现DR和BDR认知不统一的情况。
[r1-ospf-1]peer 12.0.0.2 --- 指定单播邻居
Attempt --- 尝试 --- 过度状态 --- 出现在NBMA网络中,在DOWN和INIT状态之间,等待对端指定自己成为单播邻居,一旦指定后,将立即进入下一个状态。
OSPF的不规则区域
OSPF区域划分需要遵循的要求:
1,必须存在ABR设备
2,必须按照星型拓扑结构来划分
1,远离骨干的非骨干区域
2,不连续骨干
1,使用Tunnel隧道将非法的ABR设备合法化
R4在使用隧道连接到区域0之后,可以直接通过拓扑信息学习到区域0里的路由信
息,同时也可以通过R2将区域0的拓扑信息转换成路由信息学习一次,但是,R4会将自
己通过拓扑信息计算的路由信息加表,即使他的开销值巨大。
使用隧道来解决不规则区域的问题:
1,可能造成选路不佳的情况
2,可能导致重复更新
3,R2和R4直接需要建立邻居关系,所以,需要发送周期性的数据进行维护,造成中间通过链路的负担加重。
使用虚链路解决不规则区域
注意:虚链路永远属于区域0
使用虚链路解决不规则区域的问题:
1,R2和R4直接需要建立邻居关系,所以,需要发送周期性的数据进行维护,造成中间通过链路的负担加重。
2,虚链路只能穿越一个区域
3,使用多进程双向重发布
因为不同的路由协议之间,对路由的理解及运行逻辑都不相同,所以,不同的路由协议之间是存在信息隔离的。
重发布 --- 将一种协议按照另一种协议的规则发布出去 --- 需要在同时运行两种协议的设备(ASBR设备 --- 自治系统边界路由器/协议边界路由器)上执行该技术 --- 只有执行了重发布的设备才能叫做ASBR设备。
[r4-ospf-1]import-route ospf 2
O_ASE --- 导入的路由信息标记为此标记,代表是域外的路由信息,这些路由信息的可控性较低,信任程度较低,优先级默认设置为150。
LSA --- 链路状态通告 --- 是OSPF在不同网络环境下用于携带和传递不同的信息
LSDB --- 链路状态据库
SPF
LSA的头部内容
Type --- LSA的类型 --- 在OSPFV2当中,需要具体掌握6中LSA
LinkState ID --- 链路状态标识符 --- 可以理解为是一个LSA的名称,而且,这个参数在不同的LSA类型中将携带不同的信息。
AdvRouter --- 通告路由器 --- 谁发出的LSA在这个参数就是谁的RID。
链路状态类型,链路状态ID,通告路由器 ---- 被称为是LSA的“三元组”,因为这三个参数可
以唯一的标识出一条LSA信息。
LS AGE --- LSA的老化时间 --- 单位S --- 当一条LSA被始发路由器产生时置为0,之后,该LSA在网络中传播,老化时间也会持续累加。 ---- 1800S --- 3600S --- MAX-Age ---- 当一条
LSA的老化时间到达3600S时(最大老化时间)则将会从LSDB数据库中删除。
LEN --- 长度 --- 表示LSA的内容所占的字节数
SEQ --- 序列号 --- 本质是由32位二进制构成 --- 一台路由器每发送同一条LSA时都会携带一个序列号,且逐次加1。
序列号空间
直线型空间 --- 从最小值到最大值逐次加一,优点是新旧关系容易区分,缺点是一旦序列号空间用尽,将无法判断新旧。
循环型空间 --- 从最小值到最大值在继续循环,序列号可以一直使用,但是,当两个序列号差值较大时,新旧关系不好区分。
棒棒糖型空间 --- OSPF采用的就是这种序列号空间,但是,为了避免循环型序列
空间的缺点,OSPF要求不能进入循环部分,所以,其取值为0X80000001 -0X7FFFFFFE
当序列号达到最大值时,始发设备会将该LSA的老化时间设置为最大老化时间,之后发出,其他收到该LSA的设备因为其序列号值最大,将刷新本地LSDB数据库,之后,又因为该LSA老化时间为最大老化时间,将把该LSA信息删除。同时,始发设备会再发送一条相同的LSA,其序列号为0X80000001,之后,其他设备将该LSA信息收集入库,起到刷新序列号空间的效果。
chksum --- 校验和 --- 这个参数也会参与新旧关系的比较。如果两条相同的LSA其序列号也相同,则将比较校验和,校验和大的判定为新。
Type - 1 LSA --- 一个网络中,每台设备都需要发送且只发送一条1类LSA。1类LSA使用通告者的RID作为LS ID。
LINK --- 每一条LINK都是在描述路由器接口的连接情况,一个接口可以使用多个LINK来进行描述
Type - 2 LSA --- 在MA网络环境下,仅依靠1类LSA无法获取完整的拓扑信息,所以,我们引入了2类LSA,对拓扑信息进行补充说明。 --- 二类LSA所补充的都是一些公共信息,所以,一个MA网络中只需要一台设备发送就可以了。所以,2类LSA由MA网络中的DR设备发送,并且使用DR设备的IP地址作为LS ID。
因为,1类和2类LSA传递的是拓扑信息,而其余的LSA传递的是路由信息,传递路由信息的LSA需要经过1类和2类LSA的验算才能使用。 ---- 需要通过1类和2类LSA找到通告者的位置
Type - 3 LSA --- 传递的是路由信息,由ABR设备通告,使用目标网络号作为LS ID。三类LSA中所携带的开销值是通告者到达目标网段的开销值。
Type - 5LSA
Metric --- 因为不同路由协议对开销值的评判标准不同,所以,在进行重发布时,无法直接使用其原先的开销值。所以,我们在重发布后将舍弃原先的开销值,而重新赋予其一个规定的初始值 --- seed metric(种子度量值) --- 将路由重发布到OSPF中时,其初始的种子度量值默认为1。
[r1-ospf-1]import-route rip 1 cost 2 --- 在重发布过程中修改种子度量值
E --- 标记位 --- 标志着开销值的类型
E位置0 --- 类型1 --- 如果开销值类型为类型1,则所有OSPF网络内设备到达域外目标网段的开销值都等于种子度量值加沿途累加开销值。
E位置1 --- 类型2 --- 5类LSA默认的开销值类型为类型2。如果开销值类型为类型2,则所有OSPF网络内设备到达域外目标网段的开销值都等于种子度量值。
[r1-ospf-1]import-route rip 1 type 1 --- 在重发布中修改开销值类型
Forwarding Address --- 转发地址 --- 主要是为了应对选路不佳的情况。如果不存在选路不佳的情况,则将使用0.0.0.0进行填充,无实质性作用;但是,如果存在选路不佳的情况,则将会把最佳选路携带在FA地址上,之后设备到达目标网段会查找到达FA地址的路径,而不会按照算法再去找通告路由器。
特殊区域
第一大类的特殊区域 --- 1,不能是骨干区域;
2,不能存在虚链路;
3,不能存在ASBR设备
1,符合以上特点的区域,我们可以配置成为第一大类的特殊区域 --- 末梢区域(stub)
如果,将一个区域配置成为末梢区域,则这个区域将拒绝学习4类和5类LSA。为了保证可以正常访问到域外的网段,所以,末梢区域会自动生成一条指向骨干的三类缺省(通过3类LSA生成的缺省)。
[r5-ospf-1-area-0.0.0.2]stub
注意:一旦配置特殊区域,区域内所有设备都必须配置
2,完全末梢区域(Totally stub) --- 在拒绝4类和5类LSA的基础上,进一步拒绝3类LSA但是保留3类缺省。
[r1-ospf-1-area-0.0.0.2]stub no-summary --- 只需要在ABR设备上配置即可
第二大类特殊区域 --- 1,不能是骨干区域;
2,不能存在虚链路;
3,必须存在ASBR设备
3,符合以上特点的区域,我们可以配置成为第二大类的特殊区域 --- 非完全末梢区域(NSSA)
如果,将一个区域配置成为NSSA,则这个区域将拒绝学习4类和5类LSA。为了保证可以正常访问到域外的网段,所以,NSSA区域会自动生成一条指向骨干的七类缺省(通过7类LSA生成的缺省)。
[r4-ospf-1-area-0.0.0.1]nssa
注意:一旦配置特殊区域,区域内所有设备都必须配置
Forwarding Address --- 转发地址 --- 主要是为了应对选路不佳的情况。如果不存在选路不佳的情况,则将使用0.0.0.0进行填充,无实质性作用;但是,如果存在选路不佳的情况,则将会把最佳选路携带在FA地址上,之后设备到达目标网段会查找到达FA地址的路径,而不会按照算法再去找通告路由器。
在7类LSA中,会默认使用ASBR设备环回接口的IP地址作为转发地址(如果不存在环回接口,则将使用ASBR的物理接口的IP地址作为转发地址),这样收到这条LSA的设备到达目标网段将直接发送到转发地址上。
E --- 一般置1,代表支持5类LSA,如果配置成为特殊区域,则该标记位置0
N --- 一般置0,如果在NSSA区域中,将置1。
P --- P位置1,则代表该LSA支持7转5
0.0.0.0/0 O_NSSA 150 --- 7类LSA生成的路由信息其标记为O_NSSA,优先级也是
150。
4,完全的非完全末梢区域 (Totally NSSA)
[r3-ospf-1-area-0.0.0.1]nssa no-summary --- 仅需在ABR设备上配置即可
COST
COST = 参考带宽 / 真实带宽
1,通过修改参考带宽达到修改开销值的目的
[r3-ospf-1]bandwidth-reference ?
INTEGER<1-2147483648> The reference bandwidth (Mbits/s)
[r3-ospf-1]bandwidth-reference 1000
Info: Reference bandwidth is changed. Please ensure that the reference bandwidth
that is configured for all the routers are the same.
注意:因为参考带宽一改,所有设备都需要修改,所以,无法进行有效的选路控
制,只能是通过增大参考带宽的方式来应对选路不佳的情况。
2,通过修改真实带宽达到修改开销值的目的
[r3-GigabitEthernet0/0/0]undo negotiation auto --- 关闭接口自动协商功能
[r3-GigabitEthernet0/0/0]speed 10 --- 将接口的传输速率修改为10Mbps(在修改传输速率时,只能将接口的传输速率改小)
注意:该修改效果必须重启接口后生效
这种方法确实可以起到控制选路的效果,但是,因为只能把接口的传输速率改低,
所以,会影响链路的传输效率,不建议使用。
3,直接修改接口的开销值
这种方法也可以修改环回接口的开销值。
[r3-LoopBack0]ospf cost 10
注意:如果一条链路两端接口的开销值大小不一样,则我们将按照路由传递方向的入接口的开销值来计算。
路由层面(控制层面):路由协议传递路由信息产生的流量
数据层面:设备访问目标地址时产生的数据流量
注意:如果想要改变到达某一个末梢网段的开销值,建议直接在这个修改这个末梢网段接口的开销值,而不要修改沿途骨干链路的开销值。因为沿途修改则经过的路由的开销都会影响。
OSPF的选路原则
域内:1类,2类
域间:3类
域外:5类,7类 --- 还分为类型1,类型2
1,如果学到了两条到达相同目标的路由时,并且都是通过1类和2类LSA学到的,这种情况下,直接比较开销值,若两边开销值相同,则负载均衡。
2,如果学到了两条到达相同目标的路由时,并且都是通过3类LSA学到的,这种情况下,直接比较开销值,若两边开销值相同,则负载均衡。
3,类型2的选路原则 --- 先比较种子度量值,优选种子度量值小的;如果种子度量值相同,则比较沿途累加开销值,优先沿途累加开销值小的。如果都相同,则负载均衡。
类型1的选路原则 --- 直接比较总度量值(种子度量+沿途累加开销值),优选总度量小的;如果总度量相同,则负载均衡。
E --- 标记位 --- 标志着开销值的类型
E位置0 --- 类型1 --- 如果开销值类型为类型1,则所有OSPF网络内设备到达域外目标网段的开销值都等于种子度量值加沿途累加开销值。
E位置1 --- 类型2 --- 5类LSA默认的开销值类型为类型2。如果开销值类型为类型2,则所有OSPF网络内设备到达域外目标网段的开销值都等于种子度量值。
类型1永远优于类型2
[r3]display ospf lsdb ase --- 同时展开所有5类LSA
4,域内和域间 --- 域内路由优于域间路由
5,域间和域外 --- 域间优于域外
6,5类和7类 --- 在华为体系中,5类和7类LSA生成的路由信息在优先级比较方面没有区别。
OSPF的防环
域间防环
1,星型区域划分本身就是一种防环的手段。
2,区域之间需要遵循区域水平分割机制。 --- 从哪个区域学来的就不再发回到那个区域
域内防环
SPF --- 最短路径优先算法