目录

华为eNSP2.配置OSPF报文分析和验证

华为eNSP:2.配置OSPF报文分析和验证

Hello包:用于发现和维护邻居关系。定期发送,确保邻居路由器在线。

数据库描述包(DBD, Database Description Packet):在邻居关系建立后,用于交换链路状态数据库的摘要信息。

链路状态请求包(LSR, Link-State Request Packet):请求邻居发送具体的链路状态信息。

链路状态更新包(LSU, Link-State Update Packet):包含具体的链路状态信息,用于更新邻居的链路状态数据库。

链路状态确认包(LSAck, Link-State Acknowledgment Packet):确认收到链路状态更新包,确保信息可靠传输。

Down:初始状态,表示未收到任何Hello包。

Init:收到Hello包,但尚未建立双向通信。

Two

-Way:双向通信建立,确定邻居关系。

ExStart:准备交换数据库描述包,确定主从关系。

Exchange:交换数据库描述包,同步链路状态数据库。

Loading:请求并接收具体的链路状态信息。

Full:链路状态数据库完全同步,邻居关系建立完成。

拓扑图:

https://i-blog.csdnimg.cn/direct/284c6457a1824718a874e129a1a55462.png

配置与命令

R1命令

sy

[Huawei]un in e

[Huawei]sys AR1

[AR1]int g0/0/0

[AR1-GigabitEthernet0/0/0]ip address 12.1.1.1 24

[AR1-GigabitEthernet0/0/0]q

[AR1]int loopback 0

[AR1-LoopBack0]ip address 1.1.1.1 24

[AR1-LoopBack0]

[AR1-LoopBack0]q

[AR1]ospf router-id 1.1.1.1

[AR1-ospf-1]area 0

[AR1-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255

[AR1-ospf-1-area-0.0.0.0]network 1.1.1.0 0.0.0.255

[AR1-ospf-1-area-0.0.0.0]q

[AR1-ospf-1]q

[AR1]ospf

[AR1-ospf-1]area 0

[AR1-ospf-1-area-0.0.0.0]authentication-mode md5 1 cipher joinlabs

R2命令

sy

[Huawei]un in e

[Huawei]SYS AR2

[AR2]int g0/0/1

[AR2-GigabitEthernet0/0/1]ip address 12.1.1.2 24

[AR2-GigabitEthernet0/0/1]int g0/0/0

[AR2-GigabitEthernet0/0/0]ip address 23.1.1.2 24

[AR2-GigabitEthernet0/0/0]q

[AR2]int loopback 0

[AR2-LoopBack0]ip address 2.2.2.2 24

[AR2-LoopBack0]q

[AR2]ospf router-id 2.2.2.2

[AR2-ospf-1]area 0

[AR2-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255

[AR2-ospf-1-area-0.0.0.0]network 23.1.1.0 0.0.0.255

[AR2-ospf-1-area-0.0.0.0]network 2.2.2.0 0.0.0.255

[AR2-ospf-1-area-0.0.0.0]q

[AR2-ospf-1]area 0

[AR2-ospf-1-area-0.0.0.0]authentication-mode md5 1 cipher joinlabs

R3命令

sy

[Huawei]un in e

[Huawei]sys AR3

[AR3]int g0/0/0

[AR3-GigabitEthernet0/0/0]ip address 23.1.1.3 24

[AR3-GigabitEthernet0/0/0]q

[AR3-LoopBack0]ip address 3.3.3.3 24

[AR3-LoopBack0]q

[AR3]ospf router-id 3.3.3.3

[AR3-ospf-1]area 0

[AR3-ospf-1-area-0.0.0.0]network 23.1.1.0 0.0.0.255

[AR3-ospf-1-area-0.0.0.0]network 3.3.3.0 0.0.0.255

[AR3-ospf-1-area-0.0.0.0]authentication-mode md5 1 cipher joinlabs

Hello包:

12.1.1.

2

以 10s为周期向其他链路以组播方式发送hello包,并携带了自己的RID

(在这个拓扑中是R2首先发送的Hello包)

https://i-blog.csdnimg.cn/direct/0a0dd70a68d04f2484a554aaacc5ac96.png

https://i-blog.csdnimg.cn/direct/9f18f7382dd8426fa95fd527545449be.png

此时,R

1

收到了R

2

的hello包,并向R

2

发送hello(打招呼)

https://i-blog.csdnimg.cn/direct/2d3027803275403aa5757b6c7c12cb95.png

Init完成,双方成为邻居关系Two-way:邻居关系建立(DR/BDR选举)

Exstart预启动

发送了四次的DBD是因为,首先R1想要先进入下一状态,但是R2告诉R1你的RID比我的小(要想进入下一状态RID要是较大方,此时R2将R1的RID与自己进行了比较),R2向R1发送DBD请求,告诉R1 我才是RID大的

这个图中的第一次DB由于没有回复所以作废了。

https://i-blog.csdnimg.cn/direct/4a8bc43e29fd409abe6a87fd6077e9a6.png

R 1 第一次发送DBD将自己的master置成Yes告诉R 2 ,我应该是Master;注意此时DD-seq是 921

https://i-blog.csdnimg.cn/direct/028e0b23f0a2401e8f54cf9c910edb79.png

R 2 给R 1 回应我的RID比你大,我才应该是Master,并且将自己的MS置位为Yes注意此时的DD-seq是 925

https://i-blog.csdnimg.cn/direct/13b760fa32e343cba4f1c403ccd8c291.png

R 1 第二次发送DBD由于R 1 的RID比R 2 小,那么R 1 就将自己的MS置成No这个DD是为了确认上一步中R 2 发来的DD的,所以DD-seq是 925 (与上一步中R2发来的相同)

https://i-blog.csdnimg.cn/direct/93d232a36ac4426e8bf8e400f4d227a4.png

R2再发送一个DD将M置位0,告诉R1我没有DD要发送了此时的DD-seq是在上一次发送DD-seq的基础上+1,因为是新发出来的DD,注意这个926发出后,一定会收到一个926用于确认的

https://i-blog.csdnimg.cn/direct/b49deb9170f74ecba06e47bb37d2bf93.png

R1第三次发送DBD将M置位为0,表示我也没有DBD要发送了注意DD-seq就是926,用于确认上一步中R2发来的DD的

https://i-blog.csdnimg.cn/direct/cdb5f5a7fb6e47fa999b91069c07298a.png

R

2

向R

1

以单播方式发送LSR的请求

https://i-blog.csdnimg.cn/direct/c8c5e96a11f24493bca46ef0b0a36d73.png

R

1

给R

2

回复LSU的确认包含了LSA,路由信息或拓扑信息

https://i-blog.csdnimg.cn/direct/aa395846102e490fbdef846e08baaee5.png

R1 R2之间互相发送LS

RLSU

https://i-blog.csdnimg.cn/direct/9bf0befeeacc4e41a1da38a18ca46ab4.png

R1 要给R2发送 LSU的确认

https://i-blog.csdnimg.cn/direct/e184f3d44aa84402866b45bb1f9aa29f.png

OSPF是一种功能强大、灵活性高的链路状态路由协议,通过分层设计、LSA洪泛和SPF算法实现高效的路由计算和网络收敛。尽管配置和管理相对复杂,但其在大型网络中的性能和稳定性使其成为广泛使用的IGP协议。