三个最常见OSPF故障的实操检测步骤

news2024/11/20 2:25:56

大家好,我是小咖老师。

OSPF排错咱们已经讲过几期了,有同学反馈说看不懂,内容太多也不好记,今天咱就挑最常见的三个,给大家分析讲解一下。

1、OSPF邻居建立不成功

2、OSPF不能发现其他区域的路由

3、CPU过高问题

OSPF邻居建立不成功

故障现象要点

建立邻接关系,过程如下:

a. 本端设备通过接口向外发送Hello报文与对端设备建立邻居关系。

b. 两端设备进行主/从关系协商和DD报文交换。

c. 两端设备通过更新LSA完成链路数据库LSDB的同步。

此时,邻接关系建立成功。

检测操作步骤

· 1  检查邻居两端的接口物理和协议状态是否UP,状态是否稳定,接口是否有丢包,两边互ping大包是否能通。

若物理接口不Up或是不稳定(有振荡现象),请排查物理链路和链路层协议,确保物理和协议状态都是Up,并且接口无错误计数。

可以通过ping测试,长ping测试是否存在丢包现象,ping大包(1500字节以上)测试是否存在大包不通的现象。若存在,请检查数据包传送路径上各设备接口的MTU值设置是否合理。

· 2  检查链路两端OSPF进程的Router ID是否一致。

分别在链路两端的设备上执行命令display ospf [ process-id ] brief ,查看OSPF进程的Router ID。

Router ID要保证全网唯一,否则会导致邻居不能正常建立、路由信息不正确的问题。建议在设备上单独为每个OSPF进程配置全网唯一的Router ID。

如果链路两端OSPF进程的Router ID一致,请在系统视图下执行命令 ospf [ process-id ] router-id router-id,修改OSPF进程的Router ID以保证不冲突。

修改OSPF进程的Router ID之后,必须在用户视图下执行命令reset ospf [ process-id ] process后,新配置的Router ID才会生效。

· 3  检查链路两端OSPF区域ID是否一致。

分别在链路两端的设备上执行命令display ospf [ process-id ] brief,查看OSPF的区域ID。

如果链路两端的OSPF区域ID不一致,请在OSPF视图下执行命令area area-id,修改OSPF区域ID以保证一致。

ospf排错

· 4  检查链接两端OSPF接口的网络类型是否一致。

如果链路两端OSPF接口的网络类型都是NBMA,则必须在OSPF视图下执行命令peer ip-address [ dr-priority priority ],配置NBMA网络的OSPF邻居。

先分别在链路两端的设备上执行命令display ospf [ process-id ] interface,查看OSPF接口的接口类型。

一般情况下,链路两端的OSPF接口的网络类型必须一致,否则双方不能正常建立起OSPF邻居关系。

如果OSPF接口的网络类型不一致,请在运行OSPF协议的接口视图下执行命令ospf network-type {broadcast|nbma|p2mp|p2p },修改OSPF接口的网络类型以保证一致。

· 5  检查链路两端OSPF接口的IP地址的掩码是否一致。

分别在链路两端的设备上执行命令display current-configuration interface interface-type interface-number,查看OSPF接口的IP地址。

一般情况下,链路两端的OSPF接口的IP地址的掩码必须一致,否则双方不能正常建立OSPF邻居关系。但在P2MP网络中,可以通过在运行OSPF协议的接口视图下配置命令ospf p2mp-mask-ignore来使设备忽略对网络掩码的检查,从而正常建立OSPF邻居关系。

如果OSPF接口的IP地址的掩码不一致,请在运行OSPF协议的接口视图下执行命令ip address ip-address { mask | mask-length },修改OSPF接口的IP地址以保证掩码一致。

· 6  检查链路两端OSPF接口的IP地址所在网段是否包含在区域内配置的network内。

分别在链路两端的设备上执行命令display current-configuration interface interface-type interface-number,查看OSPF接口的IP地址;执行命令display current-configuration configuration ospf,查看OSPF进程的配置。

满足下面两个条件,OSPF协议才能在接口上运行:

  • 接口的IP地址掩码长度≥network 命令中的掩码长度。OSPF使用反掩码,例如0.0.0.255表示掩码长度24位。
  • 接口的主IP地址必须在network 命令指定的网段范围之内。

如果检查发现接口IP地址与配置的network不满足上述条件,请在运行OSPF协议的接口视图下执行命令ip address ip-address { mask | mask-length },修改接口的IP地址;或者在OSPF进程对应的区域视图下执行命令network,修改配置的网段,保证满足上述条件。

· 7  检查链路两端OSPF接口的DR优先级是否非零。

分别在链路两端的设备上执行命令display ospf [ process-id ] interface,查看OSPF接口的DR优先级。

对于广播和NBMA类型网络,链路中至少要有一个OSPF接口的DR优先级不为0,这样才能正常选举出DR。否则两边的邻居状态只能达到2-Way

如果链路两端OSPF接口的DR优先级都为0,请在运行OSPF协议的接口视图下执行命令ospf dr-priority priority,修改OSPF接口的DR优先级以保证至少有一个接口的DR优先级不为0。

总结如下图

OSPF不能发现其他区域的路由

故障现象要点

在上述邻居状态机的变化中,有两处决定是否建立邻接关系:

当与邻居的双向通讯初次建立时。

当网段中的DR和BDR发生变化时。

OSPF在不同网络类型中,OSPF邻接关系建立的过程不同,分为广播网络,NBMA网络,点到点/点到多点网络。

在链路正常的情况下,OSPF不能发现其他区域的路由。

检测操作步骤

· 1  检查设备所在区域是否与骨干区域相连。

在设备所在区域的ABR上执行命令display ospf [ process-id ] brief,查看ABR的区域配置信息。

OSPF规定所有非骨干区域必须与骨干区域保持连通

如果ABR上没有配置骨干区域的信息,请在OSPF视图下执行命令area area-id,修改OSPF区域信息以保证ABR上至少有一个接口运行在骨干区域。

如果因实际组网限制,无法满足所有非骨干区域与骨干区域保持连通的要求,可以通过配置虚连接来满足需求。

· 2  检查设备所在区域是否为Totally Stub区域。

在设备上执行命令display current-configuration configuration ospf [ process-id ],查看OSPF进程的配置信息。

配置非骨干区域为Stub区域时,如果在ABR上配置时加上了参数no-summary (即OSPF区域视图下执行stub no-summary命令),则将该区域配置成了Totally Stub区域。

Totally Stub区域,不允许发布自治系统外部路由和区域间的路由,只允许发布区域内路由。

如果设备所在区域被配置为Totally Stub区域,请在确认需要修改的情况下,根据需求选择如下配置:

如果要将该Totally Stub区域恢复为普通区域,则需要在该区域的所有设备的OSPF区域视图下执行命令undo stub

如果仅仅是需要将Totally Stub区域改成Stub区域,则需要在该区域的ABR的OSPF区域视图下先执行命令undo stub,然后再执行命令stub

· 3  检查设备所在区域是否为Totally NSSA区域。

在设备上执行命令display current-configuration configuration ospf [ process-id ],查看OSPF进程的配置信息。

配置非骨干区域为NSSA区域时,如果在ABR上配置时加上了参数no-summary (即在OSPF区域视图下执行nssa no-summary命令),则将该区域配置成了Totally NSSA区域。

Totally NSSA区域不允许发布自治系统外部路由和区域间的路由,只允许发布区域内路由。

如果设备所在区域被配置为Totally NSSA区域,请在确认需要修改的情况下,根据需求选择如下配置:

如果要将该Totally NSSA区域恢复为普通区域,则需要在该区域的所有设备的OSPF区域视图下执行命令undo nssa

如果仅仅是需要将Totally NSSA区域改成NSSA区域,则需要在该区域的ABR的OSPF区域视图下先执行命令undo nssa,然后再执行命令nssa

CPU过高

故障现象要点

大规格OSPF邻居状态震荡造成设备

检测操作步骤

通过执行命令ospf suppress-flapping peer hold-down配置震荡抑制模式为Hold-down模式,在一段时间内禁止该邻居重新建立,避免频繁的数据库同步和大量的报文交互,缓解CPU压力。

通过执行命令ospf suppress-flapping peer修改指定接口的OSPF邻居震荡抑制的检测参数。

缺省情况下,指定接口的OSPF邻居震荡抑制的震荡检测门限为60秒,震荡抑制门限为10,震荡检测恢复门限为120秒,可以尝试将震荡抑制门限调小从而触发抑制机制,防止接口状态造成ospf邻居反复震荡造成大量协议报文交互。

例如执行:ospf suppress-flapping peer detecting-interval 60 threshold 3 resume-interval 120

通过执行命令retransmission-limit命令使能OSPF重传限制功能,避免在邻居收不到报文的情况下,一直重传消耗CPU和造成死循环。

例如执行:retransmission-limit 5

2个提示

(1)清除OSPF

操作说明

在确认需要清除OSPF的运行信息后,请在用户视图下执行以下命令,清除OSPF的信息后,以前的信息将无法恢复,务必仔细确认。

操作步骤

1  执行reset ospf [ process-id ] counters [neighbor[interface-type interface-number] [router-id] ]命令清除OSPF计数器。

🔹counters表示用来将OSPF计数器清零。

🔹neighbor表示指定接口上邻居的信息。

2  执行reset ospf [process-id] redistribution命令重新引入路由。

3  执行reset gtsm statistics all命令清除设备上的GTSM统计信息。

(2)复位OSPF

操作说明

如果需要复位OSPF连接,可在用户视图下选择执行以下命令。复位OSPF连接(执行reset ospf命令)会导致交换机之间的OSPF邻接关系中断。务必仔细确认是否必须执行复位OSPF连接的操作。

操作步骤

在用户视图下执行

reset ospf [process-id] process [flush-waiting-timer time|graceful-restart] 命令重启OSPF进程

懂知识就是有福气!关注我分享更多网络实用操作!感谢帮忙点赞分享,您的支持是我们最大的动力!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/10927.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

-1- threejs 场景常见的方法和属性

场景常见的方法和属性场景的作用场景的坐标系常用的属性常用的方法场景的作用 场景(THREE.Scene)用于存储物体、光源、摄像机及其渲染所需要的其他的对象集合。THREE.Scene 对象又是被称为场景图,它不仅仅是一个对象数组,还包含了整个场景图树形结构中的…

Android API—序列化与反序列化学习+案例

概述 序列化是指将对象的状态信息转换为可以存储或传输形式的过程.在序列化期间,对象将其当前状态写入到临时或持久性存储区.以后可以通过从存储区中读取或者反序列化对象的状态,重新创建该对象. 序列化:利用ObjectOutputStream,把对象的信息,按照固定的格式转成一串字节值输…

论文笔记: 数据驱动的地震波形反演--健壮性与泛化性研究

摘要: 分享对论文的理解, 原文见 Zhongping Zhang and Youzuo Lin, Data-driven seismic waveform inversion: A study on the robustness and generalization. 1. 论文贡献 提供实时预测的 VelocityGAN与其他基于编码器-解码器的数据驱动地震波形反演方法不同, VelocityGAN …

c++ - 第11节 - stack和queue类

1.标准库中的stack类 1.1.stack类 stack类的文档介绍:https://cplusplus.com/reference/stack/stack/?kwstack 注: 1. stack是一种容器适配器,专门用在具有后进先出操作的上下文环境中,其删除只能从容器的一端进行元素的插入与提…

深度学习项目:男女性别识别【附完整源码】

性别分类对于人机交互应用和计算机辅助生理或心理分析等商业领域的许多应用至关重要,因为它包含有关男女特征差异的广泛信息。 本次案例收集了接近二十万的男女数据集图片。 文章目录性别分类简介使用 Python 进行性别分类的机器学习项目导入相关库和数据模型搭建…

Chapter3 Pytorch与机器学习有关函数(一)

3.1 Tensor中统计学有关的函数 3.1.1 平均值、总和 、累积 1.测试结果1 import torcha torch.rand(2, 2)print(a) print(torch.mean(a,)) print(torch.sum(a)) print(torch.prod(a)) 2.测试结果2:数组对第1维操作 import torcha torch.tensor([[1.0,2.0,3.0],[4.…

【毕业设计】酒店评价情感倾向分析系统 - python 深度学习

文章目录0 前言1 概述2 项目所需模块3 数据3.1 数据说明3.1.1 字段说明3.2 数据处理3.2.1 分词处理3.2.3 停用词处理3.2.4 样本均衡3.2.5 建立多层感知机分类模型3.2.6 训练模型3.2.7 网络检测率以及检测结果4 最后0 前言 🔥 Hi,大家好,这里…

回归模型介绍

Datawhale开源学习,机器学习课程,项目地址:https://github.com/datawhalechina/leeml-notes 首先讲机器学习中的:回归,回归Regression可以做哪些东西呢? 股票预测 输入为以往股票走势,预测未来…

HTML标签(下)

一、表格标签 1. 表格的主要作用 表格主要用于显示、展示数据。可以让数据规整、有可读性、有条理。 2. 表格的基本语法 <table><tr><td>单元格内的文字</td>...</tr>... </table><table> </table>是用于定义表格的标签 …

nodejs+vue+elementui零食食品o2o商城系统

目 录 摘 要 1 Abstract 1 1 系统概述 4 1.1 概述 4 1.2课题意义 4 1.3 主要内容 4 2 系统开发环境 5 3 需求分析 7 3.1技术可行性&#xff1a;技术背景 7 3.2经济可行性 7 3.3操作可行性&#xff1a; 8 3.4系统设计规则 8 3.5…

对pure pursuit算法的理解和改进

算法实现 purepursuit的核心其实是一个曲率半径的几何计算。 (x, y)是转换到机器人坐标系上的路径点。L是lookahead distance。r是形成的圆弧半径。D是r和x之间的差值。 根据上面的图形&#xff0c;可以发现有下面的几何关系&#xff1a; 同时通过 y2D2r2y^2 D^2 r^2 y2D2r…

java项目-第134期ssm社团管理系统-java毕业设计

java项目-第134期ssm社团管理系统-毕业设计 【源码请到资源专栏下载】 今天分享的项目是《社团管理系统》 该项目分为前台和后台。主要分成两个角色&#xff1a;普通用户、管理员角色。 普通用户登录前台&#xff0c;看到社团官网发布的一些信息。 比如&#xff1a;首页、新闻…

如何在 .NET MAUI 中加载 json 文件?

引言: 按core传统方式添加 AddJsonFile(“appsettings.json”) 在windows平台和ssr工作正常,但是在 ios 和 android 无法用这种方式,因为资源生成方式不一样. 使用内置资源方式不够灵活而且 ios 平台会提示不能复制 json 文件到目录,于是进行了几天的研究,终于能正确使用了. 资…

1-STM32之GPIO点亮LED

我们在基础部分讲了有关GPIO的方面&#xff0c;从这章开始我们进入模块的讲解&#xff0c;从最开始的LED灯到各种传感器模块进行。专栏预计25个章节。后续可能会不定时的增加。 本专栏芯片为STM32F429 对于工程的移植和新建这里不做讲解&#xff0c;对工程建立不懂得&#xff0…

Vue3 - watch 侦听器(超详细使用教程)

前言 它之所以叫侦听器呢&#xff0c;是因为它可以侦听一个或多个响应式数据源&#xff0c;并在数据源变化时调用所给的回调函数。 大白话说呢&#xff0c;就是你传给 watch 侦听器一个响应式变量&#xff0c;然后当这个变量变化时&#xff0c;自动触发一个你定义的函数&#x…

超实用Word小技巧,常用但很少有人记得住

我们在日常工作中经常使用 Word 进行办公。以下常用Word提示可以为您的工作节省时间和精力&#xff0c;让我们来看看。 技巧一&#xff1a;如何纵向复制文本我们一般水平选择文本&#xff0c;你有没有想过垂直选择文本&#xff1f;先按住【Alt】键&#xff0c;然后拖动鼠标左键…

【Python百日进阶-WEB开发】Day179 - Django案例:11短信验证码

文章目录九、短信验证码9.1 短信验证码逻辑分析9.2 容联云通讯短信平台9.2.1 容联云通讯短信平台介绍9.2.2 容联云通讯短信SDK测试9.2.2.1 美多商城meiduo_mall.apps.verifications.libs中新建yuntongxun包&#xff0c;结构如下&#xff1a;9.2.2.2 ccp_sms.py代码9.2.2.3 CCPR…

一起来庆祝属于GISer的节日GIS DAY!

01 概述 作为一名GISer的你&#xff0c;有没有想过其实我们GISer也有自己的节日&#xff1f;这个节日便是GIS DAY&#xff0c;今年的GIS DAY恰在今天&#xff08;2022年11月16日&#xff09;。究竟什么是GIS DAY&#xff1f;这里为大家介绍一下这个节日。 02 什么是GIS DAY …

vue的移动端项目打包成手机的app软件apk格式

目录 前提准备&#xff1a; 1、vue项目npm run build打包成dist文件夹 2、注册hbuilderx账号&#xff0c;获取appid 步骤 一、创建h5app空模版 二、 将打包完成生成dist文件目录复制到新建的项目里 三、检测打包的index.html是否白屏 四、 配置manifest.js应用入口页面…

作为项目经理必须具备的能力

作为项目管理者&#xff0c;每天都要应对项目中的所有问题&#xff0c;安排任务&#xff0c;还要照顾下属的情绪。管理者应该怎么做。 1、计划制定 项目经理作为项目管理者&#xff0c;需要制定计划&#xff0c;合理化分配任务。 项目经理可以使用甘特图制定项目计划&#xf…