条件匹配
指定路由器 --- 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 Router priority value 如果将一个接口的优先级修改为0,则代表该接口放弃DR/BDR的选举。
2,当优先级相同时,则比较RID。RID大的路由器对应接口为DR,次大的为BDR。
DR/BDR的选举是非抢占模式的,一旦DR和BDR选定,则将无法被替换。选举时间为死亡时间。(只是时间相同,并不是由同一个计时器计时)(这个时间仅是选举的一个上限时间,选举可以在短时间内完成,只要完成后则将不能抢占)
OSPF的头部信息
版本 --- 指的是OSPF版本,在IPV4中一般使用OSPFV2,所以,版本号一般为2 类型 --- 指的是OSPF数据包类型
Hello --- 1
DBD --- 2
LSR --- 3
LSU --- 4
LSACK --- 5
RID --- 谁发的这个数据包,就写谁的RID
AREA ID --- 数据包是从哪个区域发出的,就写哪个区域的ID
OSPF的认证类型 --- null(不认证) ---- 0
simple(明文认证) ----- 1
MD5(通过比对摘要值的方式进行认证) ---- 2
--- OSPF在进行认证时,需要比较两部分数据,一个是认证类型,一个认证数据。
hello包 --- 周期发现,建立和保活邻居关系,包括DR/BDR选举 。
网络掩码 --- 接口一旦激活后开始发送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,认证
DBD包 ---- 数据库描述报文 --- 可以主从关系选举(未携带数据的DBD包),携带 LSDB(链路状态数据库)摘要信息
注意 --- 主从关系选举的作用:1,为主的可以优先进行LSA信息的交换;
2,为主的可以主导DBD包的隐性确认;
MTU --- 最大传输单元 --- 这个华为设备默认不检测,一般携带值0。可以在接口上开启检测功能,开启后,数据包中将携带真实的MTU值。在exstart状态中交互DBD包,如果 邻居的MTU值不一致,则将会停留在exstart状态。
8位的可选项 --- 每一个比特都表示路由器所携带的某种OSPF特性。
DBD的序列号 --- 在DBD报文交互过程中,会逐次加1,用于确保BDB报文传输的有序性和可靠性。
DBD包的确认机制是通过序列号来实现的隐性确认。而通过LSACK数据包实现确认的方法称为显性确认。
---- 隐性确认:为主的设备发送一个DBD包,中包含一个序列号,从收到这个数据包后将使用相同的序号回复DBD包,已起到确认的作用。
LSA头部信息 ---- 并不是完整的LSA信息,相当于LSA信息的一个摘要。
LSR包 --- 链路状态请求报文 --- 基于DBD包中的摘要信息,和本地LSDB进行比对,之后请求未知的LSA信息。
OSPF的接口网络类型 --- 实际上指OSPF接口在不同网络环境下默认的不同工作方式。
华为设备将tunnel接口的传输速率定义为64Kbps(实际上该接口为虚拟接口,不存在传输速率,其传输速率取决于物理接口) ---- 其目的是为了避免选路时选择tunnel接 口,因为走隧道接口需要进行复杂的封装,会消耗大量资源。
全连网状拓扑 ---- MGRE环境中,所有站点都充当中心站点,同时也充当分支站点。--- 在这种模式下,OSPF运行只需要将tunnel口修改为broadcast类型即可。
NBMA网络中建立邻居关系的方法 --- 手动指定,以单播的形式建邻。
[r1-ospf-1]peer 12.0.0.2 --- 必须互相指定
Attempt --- 在NBMA网络中增加了一个attempt尝试状态,这是一个过度状态,当双方均指定对端为邻居后将进入下一个状态init状态。