
展开代码# AR1配置 [AR1]interface GigabitEthernet 0/0/0 [AR1-GigabitEthernet0/0/0]ip address 100.0.123.1 24 [AR1-GigabitEthernet0/0/0]q [AR1]interface LoopBack 0 [AR1-LoopBack0]ip address 10.0.1.1 24 [AR1-LoopBack0]q [AR1] # AR2配置 [AR2]interface GigabitEthernet 0/0/0 [AR2-GigabitEthernet0/0/0]ip address 100.0.123.2 24 [AR2-GigabitEthernet0/0/0]q [AR2]interface LoopBack 0 [AR2-LoopBack0]ip address 10.0.2.2 24 [AR2-LoopBack0]q [AR2] # AR3配置 [AR3]interface GigabitEthernet 0/0/0 [AR3-GigabitEthernet0/0/0]ip address 100.0.123.3 24 [AR3-GigabitEthernet0/0/0]q [AR3]interface LoopBack 0 [AR3-LoopBack0]ip address 10.0.3.3 24 [AR3-LoopBack0]q [AR3]
在AR1上pingAR2,尝试验证连通性

展开代码# AR1配置 [AR1]ospf 1 router-id 10.0.1.1 [AR1-ospf-1]area 0 [AR1-ospf-1-area-0.0.0.0]network 100.0.123.1 0.0.0.0 [AR1-ospf-1-area-0.0.0.0]network 10.0.1.1 0.0.0.0 # 为了安全性,进行MD5验证方式 [AR1-ospf-1-area-0.0.0.0]authentication-mode md5 1 cipher 123456 [AR1-ospf-1-area-0.0.0.0]q [AR1-ospf-1]q # AR2配置和AR3配置跟AR1的是大致相同的,这里就不再废话了
AR2和AR3也是同样的操作,这里就只展示AR1
展开代码[AR1]display ospf peer OSPF Process 1 with Router ID 10.0.1.1 Neighbors Area 0.0.0.0 interface 100.0.123.1(GigabitEthernet0/0/0)'s neighbors Router ID: 10.0.2.2 Address: 100.0.123.2 State: Full Mode:Nbr is Master Priority: 1 DR: 100.0.123.1 BDR: 100.0.123.2 MTU: 0 Dead timer due in 40 sec Retrans timer interval: 5 Neighbor is up for 00:01:07 Authentication Sequence: [ 779] Router ID: 10.0.3.3 Address: 100.0.123.3 State: Full Mode:Nbr is Master Priority: 1 DR: 100.0.123.1 BDR: 100.0.123.2 MTU: 0 Dead timer due in 38 sec Retrans timer interval: 5 Neighbor is up for 00:00:03 Authentication Sequence: [ 782] # 从这里就可以看出AR1和AR2、AR3已经建立了OSPF的邻居关系 [AR1]display ospf routing OSPF Process 1 with Router ID 10.0.1.1 Routing Tables Routing for Network Destination Cost Type NextHop AdvRouter Area 10.0.1.1/32 0 Stub 10.0.1.1 10.0.1.1 0.0.0.0 100.0.123.0/24 1 Transit 100.0.123.1 10.0.1.1 0.0.0.0 10.0.2.2/32 1 Stub 100.0.123.2 10.0.2.2 0.0.0.0 10.0.3.3/32 1 Stub 100.0.123.3 10.0.3.3 0.0.0.0 Total Nets: 4 Intra Area: 4 Inter Area: 0 ASE: 0 NSSA: 0 # 这里也可以看到AR1已经学到了AR2、AR3的LoopBack接口路由
也可以检查环回接口之间的连通性(以AR1的LoopBack接口地址为例,pingAR2的环回接口)

展开代码[AR1]display ospf lsdb

展开代码[AR2]display ospf lsdb router self-originate

展开代码[AR2]display ospf lsdb network self-originate

如果你之前没有重启设备,一直连续做到这里的话,你就会发现DR是10.0.1.1,跟DR选举原则进行预测的结果并不一样。OSPF的DR的选举跟IS-IS的选举方式不同,是非抢占式的,就是存在DR和BDR的时候,新进入网络的路由器不会被选举成DR或者是BDR。所以现在10.0.1.1成为DR是因为我们对设备的配置顺序存在前后差异,所以就存在选举出的DR是最先配置启动的设备
所以这里我们要关闭AR1、AR2、AR3的互联接口,并观察OSPF的邻居关系建立的具体过程,之后再重新打开AR1、AR2、AR3的接口,通过debug的输出信息查看DR、BDR的选举过程
展开代码# 这里只展示AR1的命令,相同的 [AR1]interface GigabitEthernet 0/0/0 [AR1-GigabitEthernet0/0/0]shutdown
展开代码# 同样的,这里也只展示AR1的命令配置 <AR1>terminal debugging Info: Current terminal debugging is on. <AR1>terminal monitor Info: Current terminal monitor is on. <AR1>debugging ospf 1 event
展开代码# 重复的操作,以AR1为例 [AR1]interface GigabitEthernet 0/0/0 [AR1-GigabitEthernet0/0/0]undo shutdown

现在AR3成为了DR
展开代码<AR1>display ospf routing 10.0.2.2

这里LoopBack0接口路由的掩码是32位,而不是实际上我们配置的24位
展开代码<AR2>display ospf lsdb router 10.0.2.2

这里表明的掩码也是32位,OSPF将LoopBack接口视为一个末梢网络,且该网络中只有一个节点,所以无论这个接口实际配置的网络掩码是多少位,OSPF在描述这个接口的 时候,都会使用主机(32位掩码)的形式进行通告
展开代码[AR2]interface LoopBack 0 [AR2-LoopBack0]ospf network-type broadcast
将LoopBack接口的网络类型修改为Broadcast,OSPF在发布这个接口的网络信息时,会使用接口真实掩码发布
展开代码<AR1>display ospf routing 10.0.2.2

展开代码<AR1>display ospf routing 10.0.3.3

AR3的Cost值为1
展开代码# 以AR1为例 [AR1]interface GigabitEthernet 0/0/0 [AR1-GigabitEthernet0/0/0]ospf cost 20
展开代码<AR1>display ospf routing 10.0.2.2

展开代码<AR3>display ospf routing 10.0.1.1

展开代码[AR1]ospf 1 [AR1-ospf-1]silent-interface GigabitEthernet 0/0/0
展开代码<AR1>display ospf peer

配置互联接口为Silent-literface后,将不会在从该接口发送、接受hello报文,所以已建立的邻居会消失
展开代码<AR1>display ospf interface GigabitEthernet 0/0/0

虽然我英语不好,但这个意思,大家应该都懂吧
本文作者:zzz
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!