条件匹配
指定路由器 — DR — DR和MA网络中其他设备之间应该建立邻接关系 备份指定路由器 — BDR — BDR也应该和MA网络中其他设备之间建立邻接关系, 这样 BDR才能在DR出现故障时第一时间顶替DR的位置, 起到备份的效果。
一个MA网络中, 在DR和BDR都存在的情况下, 至少需要几台设备才能看到邻居关系。 — 4台 只有DR-Other之间会建立邻居关系。 DR/BDR — 虽然名字叫做指定路由器/备份指定路由器, 但一定注意, 他其实是一个接 口的概念。因为DR/BDR都是在一个MA网络中选取的。
条件匹配: 在MA网络中, 若所有设备均保持邻接关系, 将出现大量的重复更新; 所以, 需要进行DR/BDR的选举; 所有非DR/BDR的设备(DR-Other) 之间仅保持邻居关系即可。 **
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 OSPF的头部信息
版本 — 指的是OSPF版本, 在IPV4中一般使用OSPFV2, 所以, 版本号一般为2 类型 — 指的是OSPF数据包类型 Hello — 1 DBD — 2 LSR — 3 LSU — 4 LSACK — 5 RID — 谁发的这个数据包, 就写谁的RID AREA ID — 数据包是从哪个区域发出的, 就写哪个区域的ID 网络掩码 — 接口一旦激活后开始发送hello报文, 这个接口本身配置的IP地址的掩码 信息 华为设备要求, 邻居之间hello包中所携带的子网掩码必须相同, 不同则无法建立邻居关系。(只针对以太网接口进行检测, 对点到点网络不做限制) hello时间和死亡时间 — 邻居之间所携带的Hello时间和死亡时间必须相同, 不同则无 法建立邻居关系。 8位的可选项 — 每一个比特都表示路由器所携带的某种OSPF特性— 8位特殊标记中包含OSPF特殊区域的标记,这个特殊区域的标记在邻居关系 建立中也需要检测, 如果不同, 则将无法建立邻居关系。 路由器的优先级 — 指的是发出接口DR/BDR选举时的优先级 指定路由器/备份指定路由器 — 在DR/BDR选举完成后, 将会把DR/BDR的IP信息携带在 该字段。在DR/BDR未选出之前, 将以0.0.0.0来填充。 邻居 — 指的是本地已知的邻居的RID, 这个是建立邻居关系的重要条件。
HELLO包中限制邻居关系建立的条件:
1, 网络掩码(只针对以太网接口) 2, hello时间 3, dead time 4, OSPF特殊区域标记 5, 认证 MTU — 最大传输单元 — 这个华为设备默认不检测, 一般携带值0。可以在接口上开 启检测功能, 开启后, 数据包中将携带真实的MTU值。在exstart状态中交互DBD包, 如果 邻居的MTU值不一致, 则将会停留在exstart状态。 8位的可选项 — 每一个比特都表示路由器所携带的某种OSPF特性
I — INIT — 该位置1, 则代表此时的DBD包是进行主从关系选举的DBD包, 后面讲不 携带LSDB的摘要信息 M — More — 该位置1, 则代表后续还有更多的DBD包, 该位置0, 则代表这个DBD包是 最后一个DBD包。 MS — Master — 该位置1, 则代表发送DBD包设备为主, 置0则代表发送该数据包的设 备为从。 (在主从关系没有选举出来之前, 邻居双方都会将自己的MS位置1, 认为自己是主; 之 后, 主从关系选举结束后, 只有主会将MS置1, 从置0)
DBD的序列号 — 在DBD报文交互过程中, 会逐次加1, 用于确保BDB报文传输的有序性和 可靠性。 DBD包的确认机制是通过序列号来实现的隐性确认。而通过LSACK数据包实现确认的 方法称为显性确认。 ---- 隐性确认: 为主的设备发送一个DBD包, 中包含一个序列号, 从收到这个数据 包后将使用相同的序号回复DBD包, 已起到确认的作用。
LSA头部信息 ---- 并不是完整的LSA信息, 相当于LSA信息的一个摘要。
LSR包 — 链路状态请求报文 — 基于DBD包中的摘要信息, 和本地LSDB进行比对, 之 后请求未知的LSA信息。 **
OSPF的接口网络
** P2P MA BMA NBMA OSPF的接口网络类型 — 实际上指OSPF接口在不同网络环境下默认的不同工作方 式 。 Attempt — 在NBMA网络中增加了一个attempt尝试状态, 这是一个过度状态, 当双 方均指定对端为邻居后将进入下一个状态init状态。
|