交换机ARP学习异常,看网工大佬是如何处理的?

2024-02-04 22:36

本文主要是介绍交换机ARP学习异常,看网工大佬是如何处理的?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

晚上好,我的网工朋友。

在复杂多变的网络环境中,网工就没有不遇到问题的,习惯了,兵来将挡水来土掩。

ARP异常你遇到过吗?ARP作为网络中的基础协议之一,它的稳定性对整个网络的性能和可靠性至关重要。

比如说,交换机上遇到了大量的不完整ARP表项导致用户终端的ARP缓存不稳定,这个情况,怎么自查,怎么解决?

问题的关键点是STP配置不当还是拓扑变化频繁?又或是其他原因。

假如你也遇上了这样的问题,怎么分析,怎么解决,怎么确保网络业务连续性,可以参考一下这篇方案。

今日文章阅读福利:《 Netdiscover-ARP侦查工具 》

既然说到ARP,今天就给你分享个网络扫描工具Netdiscover,通过ARP扫描发现活动主机,可以通过主动和被动两种模式进行ARP扫描。通过主动发送ARP请求检查网络ARP流量,通过自动扫描模式扫描网络地址。

私信我,发送暗号“Netdiscover”(建议复制一下直接发),获取资料。

01 组网情况

这次详解,涉及产品和版本是S交换机所有产品和版本。

如图1所示,Switch-A和Switch-B通过Eth-Trunk链路直连,配置VRRP协议,Switch-A为VRRP主设备,Switch-B为VRRP备设备。

Switch-A和Switch-B做三层网关,下挂多台接入交换机做二层,均使能了STP协议进行破环。二层交换机与接入用户相连。

02 现象描述

Switch-A交换机上ARP学习异常,有很多Incomplete的ARP表项,下面用户终端的ARP时有时无,业务不稳定。

03 原因分析

Switch下挂的二层交换机上,STP域的边缘端口均没有配置stp edged-port enable;

这些端口状态发生变化时会发送TC报文,Switch收到后进行STP收敛处理,立即清除ARP表项或进行老化探测处理Switch上。

因为ARP数量比较多,发送大量ARP请求报文进行探测,收到用户的ARP应答报文比较多,超过了cpcar值,部分ARP应答报文丢弃,这些ARP将被老化删除,对应用户业务不能使用。

Switch频繁收到这样的TC报文,业务更加不稳定。

04 操作步骤

登录设备进行观察,查看VLANIF27接口下的ARP。该VLANIF接口接入的是经常在线的用户的服务器

长时间观察,发现接口下的ARP总数有时在50个左右,有时在20个左右,数量不稳定。同时还有Incomplete状态的ARP,IP地址也不固定。学习到的ARP表项的老化时间有时都为0。

从现象看,Switch应该是收到了TC报文,进行了老化ARP的操作

通过display stp tc命令也可以看到端口收到的TC报文情况:

分析日志,日志中也显示收到TC报文、进行ARP表项老化处理的记录:

同时有arp-reply报文的cpcar丢弃记录:

Apr 19 2011 09:28:13 DCN_S9306_A %%01QOSE/4/CPCAR_DROP_LPU(l): Some packets are dropped by cpcar on the LPU in slot 1. (Protocol=arp-reply, Drop-Count=061)

基于上面的信息,分析得出:

Switch频繁收到TC报文,进行老化ARP表项的操作。

设备需要发送大量ARP探测报文,用户终端回应arp-reply报文的数量也很多,超过了cpcar的car值,部分应答报文丢弃,ARP表项就会老化删除,影响到业务应用。

Switch收到的TC报文是下面的接入交换机发送的。接入交换机直接连接PC,端口使能了STP,但是没有配置stp edged-port enable。

PC在开机和关机时,很多边缘端口UP、DOWN,交换机就会反复发送TC报文。

将这些边缘端口配置stp edged-port enable后,经过几天的观察,没有再出现问题了,用户的业务运行正常。

05 建议与总结

类似的问题出现过很多次,交换机做网关,下挂二层交换机接入用户,网络中使用STP协议破环。

通常,二层交换机上的STP边缘端口都没有配置stp edged-port enable。用户PC上线、下线,端口就会反复UP/DOWN,设备向STP根节点发送TC报文。

网关设备频繁进行STP收敛,清除ARP,导致ARP学习异常。

这种应用场景下,推荐配置:

交换机上配置stp converge normal,这样交换机收到TC报文,不会立即清除ARP,而是发起ARP探测,探测失败才会删除ARP,对流量转发不会造成很大的影响;

二层交换机的STP边缘端口上配置stp edged-port enable,这样边缘端口的状态变化不会引起网络反复进行STP收敛。

整理:老杨丨10年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部

这篇关于交换机ARP学习异常,看网工大佬是如何处理的?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/678998

相关文章

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Java捕获ThreadPoolExecutor内部线程异常的四种方法

《Java捕获ThreadPoolExecutor内部线程异常的四种方法》这篇文章主要为大家详细介绍了Java捕获ThreadPoolExecutor内部线程异常的四种方法,文中的示例代码讲解详细,感... 目录方案 1方案 2方案 3方案 4结论方案 1使用 execute + try-catch 记录

Gin框架中的GET和POST表单处理的实现

《Gin框架中的GET和POST表单处理的实现》Gin框架提供了简单而强大的机制来处理GET和POST表单提交的数据,通过c.Query、c.PostForm、c.Bind和c.Request.For... 目录一、GET表单处理二、POST表单处理1. 使用c.PostForm获取表单字段:2. 绑定到结

mysql8.0无备份通过idb文件恢复数据的方法、idb文件修复和tablespace id不一致处理

《mysql8.0无备份通过idb文件恢复数据的方法、idb文件修复和tablespaceid不一致处理》文章描述了公司服务器断电后数据库故障的过程,作者通过查看错误日志、重新初始化数据目录、恢复备... 周末突然接到一位一年多没联系的妹妹打来电话,“刘哥,快来救救我”,我脑海瞬间冒出妙瓦底,电信火苲马扁.

解决java.lang.NullPointerException问题(空指针异常)

《解决java.lang.NullPointerException问题(空指针异常)》本文详细介绍了Java中的NullPointerException异常及其常见原因,包括对象引用为null、数组元... 目录Java.lang.NullPointerException(空指针异常)NullPointer

Python自动化处理手机验证码

《Python自动化处理手机验证码》手机验证码是一种常见的身份验证手段,广泛应用于用户注册、登录、交易确认等场景,下面我们来看看如何使用Python自动化处理手机验证码吧... 目录一、获取手机验证码1.1 通过短信接收验证码1.2 使用第三方短信接收服务1.3 使用ADB读取手机短信1.4 通过API获取

Python自动化Office文档处理全攻略

《Python自动化Office文档处理全攻略》在日常办公中,处理Word、Excel和PDF等Office文档是再常见不过的任务,手动操作这些文档不仅耗时耗力,还容易出错,幸运的是,Python提供... 目录一、自动化处理Word文档1. 安装python-docx库2. 读取Word文档内容3. 修改

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

使用C++将处理后的信号保存为PNG和TIFF格式

《使用C++将处理后的信号保存为PNG和TIFF格式》在信号处理领域,我们常常需要将处理结果以图像的形式保存下来,方便后续分析和展示,C++提供了多种库来处理图像数据,本文将介绍如何使用stb_ima... 目录1. PNG格式保存使用stb_imagephp_write库1.1 安装和包含库1.2 代码解

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep