OSPF数据包(抓包分析):
OSPF协议是跨层封装的协议,跨四层封装,直接将应用层的数据封装在网络层协议后面的。OSPF数据包的中协议号字段为89。
分析实验图:
OSPF数据包基本结构:头部信息+相应功能数据报文
OSPF的头部数据:
hello包:
DBD包:
LSR包:
LSU包:
LSAck:
OSPF的接口网络类型:
1.BMA网络:
接口类型为Broadcast,需要进行DR/BDR选举,hello 10S,dead time 40S
此时打开R4的ospf的G0/0/0的接口表和邻居表
[r4]display ospf interface g0/0/0
OSPF Process 1 with Router ID 1.1.1.1
Interfaces
Interface: 192.168.1.1 (GigabitEthernet0/0/0)
Cost: 1 State: DR Type: Broadcast MTU: 1500
Priority: 1
Designated Router: 192.168.1.1
Backup Designated Router: 192.168.1.2
Timers: Hello 10 , Dead 40 , Poll 120 , Retransmit 5 , Transmit Delay 1
[r5]display ospf peer
OSPF Process 1 with Router ID 2.2.2.2
Neighbors
Area 0.0.0.0 interface 192.168.1.2(GigabitEthernet0/0/0)'s neighbors
Router ID: 1.1.1.1 Address: 192.168.1.1
State: Full Mode:Nbr is Slave Priority: 1
DR: 192.168.1.1 BDR: 192.168.1.2 MTU: 0
Dead timer due in 36 sec
Retrans timer interval: 5
Neighbor is up for 00:02:16
Authentication Sequence: [ 0 ]
Neighbors
Area 0.0.0.0 interface 192.168.2.1(GigabitEthernet0/0/1)'s neighbors
Router ID: 3.3.3.3 Address: 192.168.2.2
State: Full Mode:Nbr is Master Priority: 1
DR: 192.168.2.1 BDR: 192.168.2.2 MTU: 0
Dead timer due in 35 sec
Retrans timer interval: 5
Neighbor is up for 00:00:35
Authentication Sequence: [ 0 ]
此时会发现MA网络下,网络类型状态为Broadcast,能建立多个邻居关系,有DR和BDR,
2.P2P网络:
P2P网络,只能建立一个邻居关系,不需要进行DR/BDR的选举, hello 10S,dead time 40S
查看R对应的接口的网络类型:
[R1]display ospf interface Serial 4/0/0
OSPF Process 1 with Router ID 1.1.1.1
Interfaces
Interface: 1.0.0.1 (Serial4/0/0) --> 1.0.0.2
Cost: 48 State: P-2-P Type: P2P MTU: 1500
Timers: Hello 10 , Dead 40 , Poll 120 , Retransmit 5 , Transmit Delay 1
此时会发现P2P网络下,PPP的网络类型状态为P-2-P,接口类型也为P2P类,将自己的邻居直接标注出来,并且没有DR和BDR,而cost为48的原因是因为华为设备的接口遵循的是E1标准,最大的传输速率为2.048Mbps
②HDLC网络
此时修改PPP为HDLC网络,并重新查看接口类型
[R1]display ospf interface Serial 4/0/0
OSPF Process 1 with Router ID 1.1.1.1
Interfaces
Interface: 1.0.0.1 (Serial4/0/0) --> 1.0.0.2
Cost: 48 State: P-2-P Type: P2P MTU: 1500
Timers: Hello 10 , Dead 40 , Poll 120 , Retransmit 5 , Transmit Delay 1
此时在P2P网络下,HDCL的网络类型状态依旧为P-2-P,接口类型也为P2P类,将自己的邻居直接标注出来,并且没有DR和BDR,而cost为48的原因是因为华为设备的接口遵循的是E1标准,最大的传输速率为2.048Mbps
③此时再次添加一个路由器,使用P2P进行连接 (重启R1,R2,R3的ospf进程)
此时在R2上查看邻居表
[R2]display ospf peer
OSPF Process 1 with Router ID 2.2.2.2
Neighbors
Area 0.0.0.0 interface 1.0.0.2(Serial4/0/0)'s neighbors
Router ID: 1.1.1.1 Address: 1.0.0.1
State: Full Mode:Nbr is Slave Priority: 1
DR: None BDR: None MTU: 0
Dead timer due in 31 sec
Retrans timer interval: 5
Neighbor is up for 00:21:29
Authentication Sequence: [ 0 ]
Neighbors
Area 0.0.0.0 interface 2.0.0.1(Serial4/0/1)'s neighbors
Router ID: 3.3.3.3 Address: 2.0.0.2
State: Full Mode:Nbr is Master Priority: 1
DR: None BDR: None MTU: 0
Dead timer due in 32 sec
Retrans timer interval: 5
Neighbor is up for 00:17:08
Authentication Sequence: [ 0 ]
证明:P2P网络,只能建立一个邻居关系,并且没有DR和BDR选举
3.环回接口:
实际无数据收发,学习到是32 位主机路由
查看环回接口的网络类型
<r4>display ospf interface LoopBack 0
OSPF Process 1 with Router ID 1.1.1.1
Interfaces
Interface: 1.1.1.1 (LoopBack0)
Cost: 0 State: P-2-P Type: P2P MTU: 1500
Timers: Hello 10 , Dead 40 , Poll 120 , Retransmit 5 , Transmit Delay 1
华为设备环回接口的开销值默认为0,这个值不受外界干扰(修改参考带宽不会影响环回接口的开销)
[r4-LoopBack0]ospf network-type broadcast --- 修改接口默认的网络类型
如果将环回接口的默认网络类型从P2P修改为Broadcast,则将还原环回接口真实的网络掩码
//此时去R5上查看,此时R4的环回已经修改为/24,而r6仍然为/32
<r5>display ip routing-table protocol ospf
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : OSPF
Destinations : 2 Routes : 2
OSPF routing table status : <Active>
Destinations : 2 Routes : 2
Destination/Mask Proto Pre Cost Flags NextHop Interface
1.1.1.0/24 OSPF 10 1 D 192.168.1.1 GigabitEthernet
0/0/0
3.3.3.3/32 OSPF 10 1 D 192.168.2.2 GigabitEthernet
0/0/1
OSPF routing table status : <Inactive>
Destinations : 0 Routes : 0
4.NMMA:
可以创建多个邻居关系,不需要进行DR和BDR的选 举,hello 30S,dead time 120S
在NBMA网络中会存在一个attempt状态(过渡状态,当双方均指定对端为邻居后,将会进入下一个状态init)
5.P2MP:
不会自动建立邻居关系,需要手工指定。需要进行 DR/BDR的选举,hello 30S,dead time 120S
华为设备将管道接口的传输速率定义为64Kbp(实际上改接口为虚拟接口,不存在传速率,传输速率取决于物理接口) -- 目的为了避免选路时选择管道接口,因为走隧道接口需要复杂封装,消耗真实线路的带宽