目录
OSPF条件匹配
在MA网络中,若所有设备均保持邻接关系,将出现大量的重复更新;所以,需要进行DR/BDR的选举;使DR/BDR的设备与所有设备均保持邻接关系,所有非DR/BDR的设备(DR-Other)之间仅保持邻居关系即可,
DR与BDR
指定路由器 --------- DR ------ DR和MA网络中其他设备之间应该建立邻接关系
备份指定路由器 --- BDR --- BDR也应该和MA网络中其他设备之间建立邻接关系,这样BDR才能在DR出现故障时第一时间顶替DR的位置,起到备份的效果
DR/BDR ------------ 虽然名字叫做指定路由器/备份指定路由器,但一定注意他们其实是一个接口的概念。因为DR/BDR都是在一个MA网络中选取的。
一个MA网络中,在DR和BDR都存在的情况下,至少需要4台设备才能看到
邻居
关系。
DR/BDR的选举规则:
1,先比较优先级,优先级最大的为DR,次大的为BDR优先级默认为1。
[r1-GigabitEthernet0/0/0]ospf dr-priority ? --- 修改接口优先级,为了方便人为干涉DR/BDR的选举
INTEGER<0-255> Router priority value
如果将一个接口的优先级修改为0,则代表该接口放弃DR/BDR的选举。
2,当优先级相同时,则比较RID。RID大的路由器对应接口为DR,次大的为BDR。
DR/BDR的选举是非抢占模式的,一旦一开始DR和BDR选定,则将无法被新加入的路由器替换。选举时间为死亡时间。(只是时间相同,并不是由同一个计时器计时)(这个时间仅是选举的一个上限时间,选举可以在短时间内完成,只要完成后则将不能抢占)
OSPF的数据包
OSPF协议是跨层封装的协议,跨四层封装,直接将应用层的数据封装在网络层协议后面。IP协议包中协议号字段对应数值为 --- 89
1,OSPF的头部信息
OSPF的头部信息(之后所有的OSPF数据包都会携带此头部信息)
1.版本 --- 指的是OSPF版本,在IPV4中一般使用OSPFV2,所以,版本号一般为2
2.类型 --- 指的是OSPF数据包类型
Hello --- 1
DBD --- 2
LSR --- 3
LSU --- 4
LSACK --- 5
3.路由器ID(RID) ------- 谁发的这个数据包,就写谁的RID
4.区域ID(AREA ID) --- 数据包是从哪个区域发出的,就写哪个区域的ID
5.校验和 ---- 校验数据包
6.OSPF的认证类型 --- null(不认证) --------------------------------------- 0
simple(明文认证) -------------------------------- 1
MD5(通过比对摘要值的方式进行认证) ---- 2
OSPF在进行认证时,需要比较两部分数据,一个是认证类型,一个认证数据。
2,hello包
hello包 --- 周期发现,建立和保活邻居关系,及DR/BDR选举
1.
网络掩码
--- 接口一旦激活后开始发送hello报文,这个接口本身配置的IP地址的掩码信息
华为设备要求,邻居之间hello包中所携带的子网掩码必须相同,不同则无法建立邻居关系。 (只针对以太网接口进行检测,对点到点网络不做限制)
2.
hello时间和死亡时间
--- 邻居之间所携带的Hello时间和死亡时间必须相同,不同则无法建立邻 居关系。
3.8位的可选项 --- 每一个比特都表示路由器所携带的某种OSPF特性
--- 8位特殊标记中包含
OSPF特殊区域的标记
,这个特殊区域的标记在邻居关系建 立中也需要检测,如果不同,则将无法建立邻居关系。
4.路由器的优先级 --- 指的是发出接口DR/BDR选举时的优先级
5.指定路由器/备份指定路由器 --- 在DR/BDR选举完成后,将会把DR/BDR的IP信息携带在该字 段。在DR/BDR未选出之前,将以0.0.0.0来填充。
6.邻居 --- 指的是本地已知的邻居的RID,这个是建立邻居关系的重要条件。
HELLO包中限制邻居关系建立的条件:
1.网络掩码(只针对以太网接口)
2.hello时间
3.dead time
4.OSPF特殊区域标记
5.认证
3,DBD包
DBD包 (可以进行主从关系选举)
注意 --- 主从关系选举的作用:
1.为主的可以优先进行LSA信息的交换;
2.为主的可以主导DBD包的隐性确认
1.接口最大传输单元(MTU):华为设备默认不检测,一般携带值0。可以在接口上开启检测功能,开启后数据包中将携带真实的MTU值。在exstart状态中交互DBD包,如果邻居的MTU值不一致,则将会停留在exstart状态(故要开启要同时开启)
2.8位的可选项 --- 每一个比特都表示路由器所携带的某种OSPF特性
3.
I --- INIT ---------- 该位置1,则代表此时的DBD包是进行主从关系选举的DBD包,后面讲不携带 LSDB的摘要信息
M --- More ------- 该位置1,则代表后续还有更多的DBD包,该位置0,则代表这个DBD包是最后 一个DBD包。
MS --- Master --- 该位置1,则代表发送DBD包设备为主,置0则代表发送该数据包的设备为从。
注;在主从关系没有选举出来之前,邻居双方都会将自己的MS位置1,认为自己是主;之后主从关 系选举结束后,只有主会将MS置1,从置0)
4. DBD的序列号 --- 在DBD报文交互过程中,会逐次加1,用于确保BDB报文传输的有序性和可靠性。
DBD包的确认机制是通过序列号来实现的隐性确认 --- 为主的设备发送一个DBD包,中包含一个序列号,从设备收到这个数据包后将使用相同的序号回复DBD包,已起到确认的作用。
5.LSA头部信息 ---- 并不是完整的LSA信息,相当于LSA信息的一个摘要。(菜单)
4,LSR包
LSR包 --- 链路状态请求报文 --- 基于DBD包中的摘要信息,和本地LSDB进行比对,之后请求 未知的LSA信息。
链路状态类型,链路状态ID,通过路由器 ---- LSA的三元组 --- 可以唯一的标识出一条LSA
5,LSU
LSU --- 链路状态更新报文 ---- 真正携带LSA信息的数据包
LAS
携带真正LSA信息的数据包
6,LSAck
LSAck --- 链路状态确认报文 --- 确认包
通过LSA头部序号进行确认
OSPF的接口网络类型
实际上指OSPF接口在不同网络环境下默认的不同工作方式。
查看OSPF接口网络类型
[r2]display ospf interface GigabitEthernet 0/0/0
不同接口华为设备默认传输速率及OSPF的开销值
1.BMA(以太网)
GE接口
传输速率:1000Mps OSPF默认开销值:1
Eth-Trunk接口
传输速率:100Mps OSPF默认开销值:1
2.P2P(点到点网络)
串口(华为
串口遵循的是E1标准)
传输速率:
2.048Mbps OSPF默认开销值:48
3.虚拟接口
隧道接口(Tunnel)
传输速率:
64Kbps OSPF默认开销值:1562
原因:(实际上该接口为虚拟接口,不存在传输速率,现在所看到64Kbps
非真实的,
其传输速率取决于物理接口)
---- 其目的是为了避免选路时选择tunnel接口,因为走隧道接口需要进行复杂的封装,会消耗大量资源。
环回接口(LoopBack)
传输速率: 0 OSPF默认开销值:
默认设置为0(这个值不受外界变化干扰,修改参考带 宽不会影响环回接口的开销)
修改接口默认的网络类型
[r2-LoopBack0]ospf network-type broadcast
NBMA网络中OSPF的使用
NBMA网络中建立邻居关系的方法 --- 必须手动指定,以单播的形式建立,否者无法使用OSPF
[r1-ospf-1]peer 12.0.0.2 --- 必须互相指定
指认前处于(Attempt) 尝试状态
Attempt --- 在NBMA网络中增加了一个 attempt 尝试状态,这是一个过度状态,当双方
均相互指定对端为邻居后将进入下一个状态 init 状态