OSPF邻居关系故障-现象与排除

一、OSPF邻居关系故障-现象与排除

1、OSPF建立邻居关系时,将检验hello报文中的Area ID 、Autype、Authentication、network mask、hello interval、router dead interval字段以及可选项的值是否和接收接口上配置的对应值匹配,如果它们不匹配,那么该数据包将被丢弃,而且邻接关系也无法建立。

2、OSPF邻居关系故障的常见现象为:

1)、OSPF邻居表为空

2)、OSPF邻居停滞于INIT状态

3)、OSPF邻居停滞于2-way状态

4)、OSPF邻居停滞于EXstart/Exchange状态。

3、邻居关系故障的排障思路

如果一个邻居停滞于以下某个状态并且持续很长时间,就代表着OSPF的邻居关系可能出现了故障,那么各个状态正是的排障思路如下:

3.1、down:

这是邻居的初始状态,表示路由器还没有从邻居收到任何信息,停滞于此状态表明路由器没有从邻居收到hello报文

3.2、atttempt

此状态只在NBMA网络上存在,表示路由器没有收到邻居的任何信息,但是已经周期性地向邻居发送了hello报文;如果在route dead interval 的时间间隔内未收到邻居的hello报文,则转为down状态

3.3、init

表示路由器已经从邻居收到了hello报文,但是自己不在所收到的hello报文的邻居列表中,这说明自己尚未与邻居建立双向通信关系,停滞于此状态表明路由器收到了邻居的hello报文,但hello报文中没有包含接收路由器的OSPF RID(route ID)

3.4、2-way

表示路由器与邻居的双向通信关系已经建立,(即已经建立起了邻居关系)。但尚未建立起邻接关系。停滞于此状态表明路由器彼此都收到了对方的hello报文,并且都从hello报文中发现了自己的OSPF RID。对于以太网链路上的非DR/BDR路由器来说,这种状态是可以接受的。

3.5、Exstart

邻居状态变成此状态后,路由器开始向邻居发送DD报文,Master/Slave关系是在此状态下形成的,初始DD序列号也是在此状态下确定的,在此状态下发送的DD报文不包含链路状态描述。停滞于些状态表明邻居路由之间的MTU不匹配或OSPF RID重复

3.6、exchange

在此状态下,路由器与邻居之间相互包含链路状态信息摘要的DD报文,停滞于此状态表明邻居路由器之间的MTU不匹配

3.7、loading

在此状态下,路由器与邻居之间相互发送LSR报文,LSU报文,LSACK报文停滞于此状态表明可能存在硬件故障或MTU不匹配

3.8、full

表示LSDB同步过程完成,路由器与邻居之间形成了完全的邻接关系

4、OSPF邻居关系故障-排障流程

if 【 OSPPF邻接关系异常 】;then

  查看当前邻居状态,display ospf peer brief

    if [ 能显示邻居状态 display ospf brief display ospf interface 】;then

        case $邻居状态 in

        "停滞在down")

            执行display interface 命令查看接口物理层状态

            如果接口物理状态是UP,执行display ospf interface 查看接口在ospf协议状态下状态是否为UP;;

        "停滞在init")

             如果OSPF下使能的接口配置的dr-priority是0且state为DRother,则说明他们都不是DR或BDR,两者之间不需要交换LSA,-way为正常状态,无需处理

        "停滞在Exstart")

              如果查看邻居状态一直是Exstart,表示设备一直在进行协商,但无法进行DD同步出现该情况有两种可能性;;

              超大报文包无法正常收发,可以通过执行命令ping -s  neighbor-address 查看超大报文收发情况,如果无法Ping 通,需先解决链路问题

              OSPF MTU 值配置不同,如果OSPF接口下配置了OSPF mtu-enable,检查两端的ospf mtu 值是否相等,如果不相等则修改接口下mtu值;;

        "停滞在exchange")

              如果查看邻居状态一直是exchange,表示设备在进行DD交换,通过单播交换DD报文,此时需要排查链路和对端设备是否故障;;

        *)

              如果故障无法排除,收集如下信息,联系上级支持工程师;;
        esac else   无法显示ospf邻居状态   执行display interface 命令查看接口物理层状态,检查设备链路是否故障(包括传输设备故障)
  
  如果接口连接的是广播网络或NBMA网络,检查两端IP地址是否在同一个网段   如果在接口上使能了ospf mtu-enable,则要求接口的mtu一致,否则ospf邻居无法协商成功。在接口视图下执行 mtu mtu命令,修改链路两端的mtu值为一致   对于broadcast和NBMAS类型的网段,各接口的优先级,至少有一个是非零的,以确保能够正确的选举出DR ,否则两边的邻居状态只能达到2-way,查看接口优先级   检查OSPF的配置是否有错误:   如果故障仍然无法排除,寻求上级技术支持 fi

IEEP部署企业级网络工程-OSPF邻居关系故障排除的更多相关文章

  1. IEEP部署企业级网络工程-网络故障-环路故障

    网络故障 1.环路故障 概念 1).以太网是一个支持广播的网络, 在没有环路的环境中,广播报文在网络中以泛洪的形式被送达到网络的第一个角落,以保证每个设备都能够接受到它.每台二层设备在接收到广播报文以 ...

  2. OSPF的特征、术语、包类型、邻居关系的建立、RID的选择、DR和BDR的选举、度量值的计算、默认路由、验证

    链路状态路由协议OSPF的特征.术语.包类型.邻居关系的建立.RID的选择.DR和BDR的选举.度量值的计算.默认路由.验证等. 文章目录 [*1*].链路状态路由协议概述 工作过程 优缺点 [*2* ...

  3. 网络:OSPF理解

    OSPF(开放最短路径优先)协议使用Dijkstra算法,常见的版本有:OSPFv2.OSPFv3等.以下主要介绍OSPFv2,OSPFv3是面向IPv6的且不兼容IPv4. 1.工作过程: 1)每台 ...

  4. OSPF邻居状态机

    当OSPF邻居建立的过程之中,路由器在和邻居达到完全邻接关系之前,要经过几个状态.这些状态在OSPF RFC2328有相关的定义,这些状态分别是Down, Attempt, Init, 2-Way, ...

  5. 路由软件quagga和bird日志配置打印ospf邻居变化

    背景: 网络侧反馈偶尔会出现ospf邻居状态变化:full-> other status -> full.历史原因,线上运行的路由软件有quagga和bird两种.两种路由软件的日志级别配 ...

  6. ospf邻居建立过程

    1. hello报文的作用 邻居发现:自动发现邻居路由器. 邻居建立:完成Hello报文中的参数协商,建立邻居关系. 邻居保持:通过Keepalive机制,检测邻居运行状态. hello报文的发送时间 ...

  7. 在 FR 网络配置 OSPF

    一.环境准备 1. 软件:GNS3 2. 路由:c7200 二.实验操作 实验要求: 1.掌握配置帧中继的基本方法. 2.掌握在路由器中模拟帧中继交换机的方法. 3.掌握 NBMA 网络中 OSPF  ...

  8. 部署React+webpack工程的步骤

    # 部署React+webpack工程的步骤ps:以Mac os系统做开发环境.因为npm现在使用灰常的慢,所以我使用淘宝境像cnpm. 1,准备工作: 先确保存已经安装了node.js: 2,文件部 ...

  9. Linux shell编写脚本部署pxe网络装机

    Linux shell编写脚本部署pxe网络装机 人工安装配置,Linux PXE无人值守网络装机  https://www.cnblogs.com/yuzly/p/10582254.html 脚本实 ...

随机推荐

  1. Ubuntu 16.04安装SecureCRT替代XShell

    XShell应该是最强大的,在Ubuntu下只有SecureCRT能实现跨平台(Linux/Windows/Mac),并且可以实现Tab的功能等.当然,还有其它的类似PuTTY这些.Windows下建 ...

  2. sencha touch overlay 里使用 list

    1 sencha touch 中 list 如果不设置一个固定高度或 flex : 1,  list 的内容就不会显示出来. 主要是因为 list 是可滚动的,你不设置高度 ,list 的高度默认就是 ...

  3. java中多线程中测试某个条件的变化用 if 还是用 while?

    最近在研究wait和notify方法,发现有个地方要注意,但是网上又说得不是很明白的地方,就是经典的生产者和消费模式,使用wait和notify实现,判断list是否为空的这个为什么要用while而不 ...

  4. MySQL函数库

    MySQL函数库,这个函数库是一个外部函数库!这个函数提供了对于MySQL数据库进行操作的常用函数,如连接MySQL服务器.打开数据库.执行SQL语句等.所以这个函数库的功能对于我们来说是非常重要的! ...

  5. spring中增加自定义配置支持

    spring.schemas 在使用spring时,我们会首先编写spring的配置文件,在配置文件中,我们除了使用基本的命名空间http://www.springframework.org/sche ...

  6. .net面试题升级版

    1.列举ASP.NET页面之间传值的几种方式. 答:使用QueryString,如.../id=1;response.Redirect() 使用Session 使用Server.Transfer 使用 ...

  7. 生成自签名证书-开启https

    1.生成CA证书 # 生成 CA 私钥 openssl genrsa -out ca.key 2048 # X.509 Certificate Signing Request (CSR) Manage ...

  8. 一、快速构建Springboot应用

    1.基本概念 Spring的出现对于企业级应用来说是一个福音,它让企业级应用开发更加地简单.但是随着Spring的不断发展,它也慢慢变得越来越重.即使apache出品的maven工具能够使得项目创建. ...

  9. 前端小结(3)---- 添加遮罩层,并弹出div

    有如下div: <div id='pop-div' class="pop-box"> <div class="input-group has-info& ...

  10. 十 DatagramChannel

    DatagramChannel是一个能收发UDP包的通道.因为UDP是无连接的网络协议,所以不能像其它通道那样读取和写入.它发送和接收的是数据包. 打开 DatagramChannel 下面是 Dat ...