首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >OSPF邻居down故障定位

OSPF邻居down故障定位

作者头像
网络工程师笔记
发布于 2021-05-17 07:29:31
发布于 2021-05-17 07:29:31
2.4K00
代码可运行
举报
运行总次数:0
代码可运行

一 OSPF邻居down故障原因

本类故障的常见原因主要包括:

  • BFD故障;
  • 对端设备故障;
  • CPU利用率过高;
  • 链路故障;
  • 接口没有Up;
  • 两端IP地址不在同一网段;
  • RouterID配置冲突;
  • 两端区域类型配置不一致;
  • 两端OSPF参数配置不一致;

二 故障定位步骤

1、通过日志查看OSPF邻居Down的原因

执行display logbuffer size buffersize命令,查看如下日志信息。

如果日志信息如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
CE12800 %%01 ospfv2comm/6/NBR_CHANGE(l):VS=0-CID=[UINT];
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Neighbor changes event:neighbor status changed.
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 (ProcessId=[UINT], NbrIpAddr=[IPADDR], NbrEvent=[UINT],
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
NbrPreviousState=[UINT], NbrCurrentState=[UINT])
代码语言:javascript
代码运行次数:0
运行
复制

说明是邻居状态改变导致,重点关注关键字NbrEvent,此关键字记录的是OSPF邻居Down的原因。

OSPF邻居Down的原因一般会有以下几种:

  • Inactivity(NbrEvent=7) 发生邻居状态机InactivityTimer事件,表示在deadtime时间内没有收到Hello报文导致OSPF邻居Down,出现这种情况请执行步骤2。
  • LLDown(NbrEvent=6) 发生邻居状态机LLDown事件,表示由下层协议通知邻居不可达到,出现这种情况请执行步骤2。
  • 1-Way Received(NbrEvent=4) 发生邻居状态机1-Way Received事件,表示因为对端OSPF状态首先变成Down,从而向本端发送1-Way hello,导致本端OSPF状态也变成Down,出现这种情况请排查对端设备的故障。
  • Kill Neighbor(NbrEvent=5) 表示接口Down或BFD Down。此时,可以执行display interface [ interface-type [ interface-number ] ]命令查看接口状态,排查接口故障。

如果日志信息如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
CE12800 %%01 ospfv2comm/6/OSPF_RESET(l):
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
VS=%u-CID=[UINT];
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
OSPF process or area reset.
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(CompCID=[UINT], Parameter=[UINT],
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 ResetReason=[UINT])

表示执行了reset ospf process的操作,可以获取操作记录或查看日志中是否有此操作。

2、检查链路是否故障

请执行ping命令和在接口视图下执行display this interface命令,检查设备链路是否故障(包括传输设备故障)。如果链路正常,请执行步骤3。

3、检查CPU利用率是否过高

请执行display cpu命令检查故障设备的CPU利用率是否过高。如果CPU利用率过高会导致OSPF无法正常收发协议报文从而导致邻居振荡。

如果CPU利用率过高则先解决此问题,关闭一些不必要的功能,否则执行步骤4。

4、检查接口状态是否为Up

请执行display interface [ interface-type [ interface-number ] ]命令查看接口物理层状态,如果接口物理层状态为Down请先处理接口故障问题。

(1)如果接口物理层状态是Up,请执行display ospf interface查看接口在OSPF协议下状态是否为正常状态(即接口状态为DR、BDR、DROther或P2P等正常状态)。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<HUAWEI> display ospf interface
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
          OSPF Process 1 with Router ID 10.1.1.1
                  Interfaces

 Area: 0.0.0.0          (MPLS TE not enabled)
 Interface          IP Address      Type       State    Cost    Pri
 Vlanif50           192.168.1.1       Broadcast  DR       1       1
代码语言:javascript
代码运行次数:0
运行
复制

(2)如果OSPF下的接口为Down,请执行命令display ospf cumulative检查OSPF进程下使能的接口数是否超出了当前版本OSPF的规格,如果超出规格则减少OSPF使能的接口数。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<HUAWEI> display ospf cumulative
          OSPF Process 1 with Router ID 10.1.1.1
                  Cumulations
  IO Statistics
             Type        Input     Output
            Hello            0         86
   DB Description            0          0
   Link-State Req            0          0
Link-State Update            0          0
   Link-State Ack            0          0
  ASE: (Disabled)
  LSAs originated by this router
  Router: 1
  Network: 0
  Sum-Net: 0
  Sum-Asbr: 0
  External: 0
  NSSA: 0
  Opq-Link: 0
  Opq-Area: 0
  Opq-As: 0
  LSAs Originated: 1  LSAs Received: 0
  Routing Table:
    Intra Area: 1  Inter Area: 0  ASE: 0
  Up Interface Cumulate: 1
         Neighbor Cumulate:
  =======================================================
      Neighbor cumulative data. (Process 1)
  -------------------------------------------------------
  Down:       0 Init:        0 Attempt:    0 2-Way:    0
  Exstart:    0 Exchange:    0 Loading:    0 Full:     1
  Retransmit Count:1

      Neighbor cumulative data. (Total)
  -------------------------------------------------------
  Down:       0 Init:        0 Attempt:    0 2-Way:    0
  Exstart:    0 Exchange:    0 Loading:    0 Full:     1
  Retransmit Count:1

如果OSPF下的接口状态正常,即接口状态为DR、BDR、DROther或P2P等正常状态时,请执行步骤5。

5、检查两端IP地址是否在同一网段

请执行display interface interface-type [ interface-number ]命令查看两端接口的IP地址。

  • 如果IP地址不在同一网段,请执行ip address命令修改两端的IP地址,使其在同一网段。
  • 如果IP地址处于同一网段,请执行步骤6。

6、检查各接口的MTU是否一致

如果在接口上使能了ospf mtu-enable,则要求接口的MTU一致,否则OSPF邻居无法协商成功。请接口视图下执行display this interface命令查看接口MTU信息。

  • 如果接口的MTU值配置不一致,请在接口视图下执行mtu mtu,修改链路两端的MTU值为一致。
  • 如果接口的MTU值配置一致,请执行步骤7。

7、检查各接口的优先级是否非零

对于Broadcast和NBMA类型的网段,各接口的优先级至少有一个是非零的,以确保能够正确的选举出DR,否则两边的邻居状态只能达到2-Way。

执行命令display ospf interface,查看接口的优先级。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<HUAWEI> display ospf interface
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
          OSPF Process 1 with Router ID 10.1.1.1
                  Interfaces

 Area: 0.0.0.0          (MPLS TE not enabled)
 Interface          IP Address      Type         State    Cost    Pri
 Vlanif50           192.168.1.1       Broadcast    P-2-P    1       1

8、检查两端OSPF的配置是否有错误

a、检查两端OSPF RouterID配置是否冲突

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<HUAWEI> display ospf brief
          OSPF Process 1 with Router ID 10.1.1.1
                  OSPF Protocol Information

如果冲突则修改配置,否则继续执行以下检查。

b、检查两端OSPF Area配置是否一致

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<HUAWEI> display ospf interface
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
          OSPF Process 1 with Router ID 10.1.1.1
                  Interfaces

 Area: 0.0.0.0          (MPLS TE not enabled)
 Interface          IP Address      Type         State    Cost    Pri
 Vlanif50           192.168.1.1       Broadcast    BDR      1       1

c、检查两端OSPF的其他配置是否一致

每10秒钟执行一次命令display ospf error,持续5分钟。

<HUAWEI> display ospf error

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
          OSPF Process 1 with Router ID 10.1.1.1
                  OSPF error statistics 
General packet errors:
 0     : IP: received my own packet     0     : Bad packet
 0     : Bad version                  0     : Bad checksum
 0     : Bad area id                   0     : Drop on unnumbered interface
 0     : Bad virtual link               0     : Bad authentication type
 0     : Bad authentication key         0     : Packet too small
 0     : Packet size > ip length         0     : Transmit error
 0     : Interface down                0     : Unknown neighbor
HELLO packet errors:
 0     : Netmask mismatch              0     : Hello timer mismatch
 0     : Dead timer mismatch           0     : Extern option mismatch
 0     : Router id confusion            0     : Virtual neighbor unknown
 0     : NBMA neighbor unknown          0     : Invalid Source Address

扫描二维码

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 网络工程师笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
53. 最大子序和
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
Michel_Rolle
2021/02/20
3.1K0
最大子序和
大家好,我是来自「华为」的「小熊」。端午假期马上就要结束了,小熊给大家带来一道笔试和面试中与「动态规划」相关的常考的简单题,这道题被字节、微软、亚马逊和苹果等各大互联网大厂作为笔试题。
程序员小熊
2021/06/21
2910
最大子序和
漫画:动态规划系列 第二讲
在上一篇文章中,我们讲解了DP的概念并且通过示例了解了什么是动态规划。本篇中,我们将继续通过1道简单题型,进一步学习动态规划的思想。
程序员小浩
2020/03/31
3380
动态规划入门看这篇就够了,万字长文!
今天是小浩算法 “365刷题计划” 动态规划 - 整合篇。大家应该期待已久了吧!奥利给!
程序员小浩
2020/05/08
1.7K0
动态规划入门看这篇就够了,万字长文!
​LeetCode刷题实战53:最大子序和
https://leetcode-cn.com/problems/maximum-subarray/
程序员小猿
2021/01/20
3260
干货:图解算法——动态规划系列
讲解动态规划的资料很多,官方的定义是指把多阶段过程转化为一系列单阶段问题,利用各阶段之间的关系,逐个求解。概念中的各阶段之间的关系,其实指的就是状态转移方程。很多人觉得DP难(下文统称动态规划为DP),根本原因是因为DP区别于一些固定形式的算法(比如DFS、二分法、KMP),没有实际的步骤规定第一步第二步来做什么,所以准确的说,DP其实是一种解决问题的思想。
宜信技术学院
2020/03/06
8360
Leetcode#53.Maximum Subarray(最大子序和)
题目描述 给定一个序列(至少含有 1 个数),从该序列中寻找一个连续的子序列,使得子序列的和最大。 例如,给定序列 [-2,1,-3,4,-1,2,1,-5,4], 连续子序列 [4,-1,2,1] 的和最大,为 6。 扩展练习: 若你已实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。 思路 思路一: maxSum 必然是以numsi结尾的某段构成的,也就是说maxSum的candidate必然是以nums[i]结果的。如果遍历每个candidate,然后进行比较,那么就能找到最大的max
武培轩
2018/04/18
8490
LeetCode 0053. 最大子序和[动态规划详解]
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
Yano_nankai
2021/03/04
2970
LeetCode 0053. 最大子序和[动态规划详解]
Leetcode No.53 最大子序和
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
week
2022/01/07
3050
剑指Offer题解 - Day19
输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。
chuckQu
2022/08/19
1450
最大子序和,又贪心又DP
力扣题目链接:https://leetcode-cn.com/problems/maximum-subarray
代码随想录
2021/11/16
3510
图解LeetCode——53. 最大子数组和
给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
爪哇缪斯
2023/05/07
3021
图解LeetCode——53. 最大子数组和
Python 刷题笔记:一道简单级的动态规划题
今天翻看了关于时间复杂度、空间复杂度的文章和视频,对其认知加深了些,之后也要养成分析复杂度的习惯,顺手添加,大家如果看到我写错的还望予以纠正。
TTTEED
2020/07/08
1.2K0
动态规划:最大子序和
题目地址:https://leetcode-cn.com/problems/maximum-subarray/
代码随想录
2021/04/07
4450
动态规划:最大子序和
贪心算法:最大子序和
题目地址:https://leetcode-cn.com/problems/maximum-subarray/
代码随想录
2020/12/14
8810
贪心算法:最大子序和
LeetCode-53-最大子序和
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
benym
2022/07/14
1830
画解算法:53. 最大子序和
https://leetcode-cn.com/problems/maximum-subarray/
灵魂画师牧码
2019/06/27
6100
画解算法:53. 最大子序和
leetcode题解-53.最大子序和
Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.
编程珠玑
2019/09/02
5120
☆打卡算法☆LeetCode 53、最大子序和 算法解析
链接:53. 最大子序和 - 力扣(LeetCode) (leetcode-cn.com)
恬静的小魔龙
2022/08/07
3270
☆打卡算法☆LeetCode 53、最大子序和  算法解析
07— 最大子数组和【LeetCode 53】
给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
吃猫的鱼Code
2023/07/24
2430
07— 最大子数组和【LeetCode 53】
相关推荐
53. 最大子序和
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档