017B-OSPF五种报文的头部,hello报文,邻居


在这里插入图片描述

OSPF报文头部
Version(版本号),默认是V2 IPv6是V3
Message type :1、hello 2、DD 3、LSR 4 LSU 5、LSACK
Packet Length:报文长度
Source OSPF router:发送者的Router ID
Area ID:区域号:32位的点分十进制(IP地址格式)
Auth Type (认证类型) 0不认证 1 明文认证 2 MD5
Auth Data:认证的密码
在这里插入图片描述
验证OSPF报文头部是否合法
1、版本号为2
2、Area ID必须要和接收端的Area ID一致
3、认证类型和认证密码也必须一致

RID也不能冲突
在这里插入图片描述
[Huawei-GigabitEthernet0/0/0]ospf enable 10 area 0
[Huawei]ospf 10 router-id 2.2.2.2
[Huawei-ospf-10]area 0
[Huawei-ospf-10-area-0.0.0.0]
在这里插入图片描述

OSPF五种报文

参考:HCNA网络技术学习指南8.3节

  1. Hello报文: 周期性的发送,用来发现建立,和维护OSPF邻居关系的
    邻居关系:两台设备共享同一条链路,并且交互了一些参数(Hello报文),形成邻居关系(2-way状态)

  2. DD:描述本LSDB的摘要信息,用于两台路由器进行数据库的同步 DD报文只是一个LSA的摘要信息,里边不包括LSA
    DBD:Database Description Packet

  3. LSR:用于向对方请求所需的LSA,只有在OSPF邻居双方成功交换了DBD后才会向对方发送LSR
    LSR:Link-Status request
    LSA:Link-Status advertisement 链路状态通告

  4. LSU:用于向对方回复具体的LSA
    LSU:Link-Status update

  5. LSACK:用来对收到的LSA的一个确认
    LSACK:Link-Status Acknowledgement

### OSPF协议的五种报文类型及其作用 OSPF(Open Shortest Path First)是一种基于链路状态的内部网关协议,其核心功能依赖于五种主要类型的报文来实现路由器之间的通信和路由计算。以下是这五种报文的具体描述及其作用: #### 1. Hello 报文 Hello 报文是最常用的一种 OSPF 报文,主要用于建立和维护邻居关系。它周期性地在 OSPF 接口上发送,携带的信息包括定时器的数值、网络中的 DR(指定路由器)、BDR(备份指定路由器),以及已知的邻居列表[^2]。 #### 2. Database Description (DD) 报文 Database Description 报文用于两台路由器之间交换各自的链路状态数据库摘要信息。通过 DD 报文,路由器可以判断彼此的链路状态数据库是否同步,并决定是否需要进一步传输详细的 LSA(Link State Advertisement)。这种机制有助于减少不必要的数据传输量[^3]。 #### 3. Link State Request (LSR) 报文 当一台路由器发现自己的链路状态数据库缺少某些条目或者与另一台路由器不同步时,会使用 Link State Request 报文向对方请求具体的 LSA 条目。这是一种精确的数据请求方式,能够有效提高效率并降低带宽消耗[^1]。 #### 4. Link State Update (LSU) 报文 Link State Update 报文用来响应 LSR 请求,包含完整的 LSA 数据。它是实际传递链路状态信息的主要载体,使得每台路由器都能够获得整个区域内的最新拓扑结构信息。 #### 5. Link State Acknowledgment (LSAck) 报文 为了确保 LSU 的可靠传输,OSPF 使用了确认机制。接收方收到 LSU 后会回送一个 LSAck 报文给发送方,表明该更新已被成功接收。这种方式类似于 TCP 中的 ACK 机制,保障了数据的一致性和可靠性。 ```python # 示例代码展示如何模拟简单的OSPF报文交互过程 class OspfPacket: def __init__(self, type): self.type = type def send_hello(self): print(f"Sending HELLO packet of type {self.type}...") hello_packet = OspfPacket("HELLO") hello_packet.send_hello() ``` 以上即为 OSPF 协议中所涉及的五种报文类型及其各自的作用说明。
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值