OSPF的协议号:89
OSPF报文头部:
版本:OSPF协议的版本
类型:OSPF数据包类型
- hello包—1
- DBD—2
- LSR—3
- LSU—4
- LSACK—5
报文长度:整个OSPF数据报文的长度(单位字节)
RID:发出该数据包的设备的RID
区域ID:发出数据的接口所在的区域
认证类型和认证数据:
- 认证类型–null–空认证—0
--simple—明文认证—1
--MD5–比对摘要值认证—2 - 认证数据:
- hello包:周期发现,建立/保活邻居关系
**子网掩码:**发出hello包接口的IP地址对应的掩码信息–华为设备设定邻居建立双方要求子网掩码必须相同,否则无法建立(P2P网络不生效)
hello时间和死亡时间:邻居双方hello时间和死亡时间必须相同–可选项,8个标记位置1,则代表符合OSPF的某种特性。其中存在OSPF特殊区域的标记位,若特殊区域标记位不同,邻居无法建立
**路由器的优先级:**发出该数据包的接口其DR/BDR选举时的优先级
**指定路由器和备份指定路由器:**携带DR/BDR接口的IP地址。—在DR/BDR选举出来之前,使用0.0.0.0填充。
邻居:本地已知的邻居的RID
限制邻居建立的因素:
1. 认证
2. 子网掩码
3. helloTime/deadTime
4. 特殊标记域
5. 优先级
- DBD包:—数据库描述报文–
- 使用未携带数据的DBD包进行主从选举
- 使用携带数据的DBD包进行目录信息共享
MTU–华为设备默认不开启MTU值的检测功能,可 以在接口开启 ospf mtu-enable。若两边都开MTU 检测功能,则必须相同,否则停留在exstartr阶段
I —init—该位置1,代表这个DBD包是进行主从关 系选举的包,在主从关系没有选出来之前,所有设备都 认为自己是主
M—more—该位置为1,则代表后面还有其他DBD 包要发送
MS—Master—该位置为1,则代表发送这个数据包 的设备为主
序列号:在DBD报文收发过程中,会逐次加1,以便确 保DBD报文的有序性以及可靠性
- LSR包:链路状态请求报文—基于DBD包请求本地未知LSA信息
链路状态类型,链路状态ID,通告路由器—“LSA三元组”—通过这三个参数可以唯一标识出一条LSA - LSU包:链路状态更新报文—真正携带LSA信息的数据包
- LSACK包:链路状态确认报文
OSPF的接口网络类型:
指的是OSPF接口在不同网络类型下的不同工作方式。
P2P:
MA
BMA:
NBMA:
查看OSPF不同区域接口的工作方式:[r1]display ospf interface //查看摘要
dis ospf interface g0/0/0 //查看详细信息
T1 — 1.544Mbps
E1 — 2.048Mbps ----华为设备的串口默认遵循的是E1标准。
华为设备将环回接口的开销值定义为o,不会受外界影响,不受参考带宽变化的影响。
[r2-LoopBack0]ospf network-type broadcast —修改接口网络类型如果想要还原环回接口真实的掩码长度,可以将环回接口的网络类型修改为broadcast。
华为设备将tunnel接口的传输速率定义为64Kbps ----华为设备这样设计主要目的是为了让隧道接口的开销值变大,使数据尽可能的避免从隧道接口发出,因为走隧道接口的数据,真实还是从物理接口发出,但是会增加复杂的封装和解封装的过程,加大资源的浪费。
在MGRE的环境中,还有一种全连网状拓扑— mesh,就是所有边界设备即当中心,也做分支,这样搭建出来的MGRE环境是一种类似BMA的网络环境。
[r1-ospf-1]peer 12.0.0.2—单播邻居,在NBMA环境下可以手工指定邻居关系。
Attempt —尝试状态—过渡状态—本端手工指定邻居后将从down到达尝试状态,之后,等对端手工指定后将进入下一个状态。