OSPF直连邻居状态Full,且有路由,不通!怎么回事?

简介: OSPF直连邻居状态Full,且有路由,不通!怎么回事?

1 问题描述

最近,有同学私信,他遇到一个问题,想不明白,于是来私信了:


他遇到情况,网络环境,我简化了一下,如下:一、拓扑图:


二、描述

1、R1和R2 以太网直连,分别故意配成不同网段:37.1.1.1/24和38.1.1.1/242、R1和R2的OSPF 网络类型均修改为p2p3、R1何R2的G0/0/0均宣告到OSPF进程中。

R1的配置:

#
interface GigabitEthernet0/0/0
 ip address 37.1.1.1 255.255.255.0 
 ospf network-type p2p
 ospf timer hello 3
#
return
#
ospf 1 
 area 0.0.0.0 
  network 37.1.1.1 0.0.0.0 
#


R2的配置:

#
interface GigabitEthernet0/0/0
 ip address 38.1.1.1 255.255.255.0 
 ospf network-type p2p
 ospf timer hello 3
#
ospf 1 
 area 0.0.0.0 
  network 38.1.1.1 0.0.0.0 
#


三、现象:

a、查看OSPF邻居状态,为Full,建议邻接关系。


b、查看R1的路由表,也有对端的路由:



疑问:OSPF邻居正常,路由表也有路由,为啥ping不通呢?


2 分析


从上面,我们可以知道两端p2p,不同网段,建立邻居,OSPF在计算路由,拓扑,是没有问题的。通过LSDB也可以画出有向图:





(P2P 有向图)


都没问题,那该怎么分析呢?或者该用哪个理论知识来说明这个现象呢?

答案是抓包!于是,龙哥就抓了个包。


然后在R1开始ping对端 R2的38.1.1.1:


抓包发现,R1是有发了arp广播报文,但是R2一直没有响应,导致R1学习不到R2的MAC地址,也就无法封装二层,所以才无法ping通。


到这里,我又搭了一个环境,不修改接口OSPF的网络类型p2p:



除了网络类型,其他配置跟上述一样。

我在R5上去ping R6的38.1.1.1,抓包发现,压根没有抓到ARP广播报文:



所以,我的理解是:在接口广播类型的情况下,ARP请求广播报文,会检查目的ip与我本地接口ip是否同网段?是同网段的话,我就发ARP请求广播报文,不同网段,压根不会发请求广播报文。如果接口的OSPF网络类型是p2p,底层是以太网,不管同不同网段,ARP请求广播报文都会发送,但是接收端的话,会检查请求报文里的IP与我本接口的ip是不是同网段的,是同网段的才会响应,不同网段的,不会响应。


同网段,对端就会响应ARP报文:



那有人肯定就会问了,那为啥底层是ppp时,不同网段的IP,直连就可以通呢?

且听我下面的分析:


R3配置:

#
interface Serial4/0/0
 link-protocol ppp
 ip address 37.1.1.1 255.255.255.0 
#
return
#
ospf 1 
 area 0.0.0.0 
  network 37.1.1.1 0.0.0.0 
#
return


R4配置:

#
interface Serial4/0/0
 link-protocol ppp
 ip address 38.1.1.1 255.255.255.0 
#
return
#
ospf 1 
 area 0.0.0.0 
  network 38.1.1.1 0.0.0.0 
#
return



状态:



现在,我们在R3ping  R4之前,先开启抓包:





从抓包,我们就可以知道了,PPP链路没有使用ARP。

因为在底层封装PPP协议,在这种链路上,设备认为对端就是直连一台设备而已,所以不需要ARP的,直接用ppp封装,所以能成功发送给对端,对端也能响应,所以PPP不同网段可以通。

相关文章
|
前端开发 JavaScript 定位技术
路由器和路由到底啥区别?
路由器和路由到底啥区别?
|
网络架构
交换机与路由器技术-27-OSPF路由重分发
交换机与路由器技术-27-OSPF路由重分发
55 0
交换机与路由器技术-27-OSPF路由重分发
|
网络架构
交换机与路由器技术-23-OSPF链路状态信息同步过程
交换机与路由器技术-23-OSPF链路状态信息同步过程
64 0
|
负载均衡 网络协议 算法
ospf路由器连接物理网络的方式 以及ospf与IGRP对比(补充)
ospf路由器连接物理网络的方式 以及ospf与IGRP对比(补充)
176 0
|
网络协议 算法 数据库
链路状态路由协议OSPF——理解OSPF多区域原理
上几章学习了OSPF路由协议的基本概念、工作过程及单域的配置,但是在使用OSPF构建大型网络时,仅有单域是远远不够的。在大型网络中,网络结构的变化是时常发生的,而且随着多条网络路径的增加,路由表将变得越来越庞大。为了解决这个问题,OSPF允许把大型区域划分成多个更易管理的小型区域。本章主要介绍OSPF多区域的原理及配置。
420 0
链路状态路由协议OSPF——理解OSPF多区域原理
|
网络协议 数据库 网络架构
|
网络协议 网络架构