我有一台运行CentOS 7的
Linux服务器,而且我一直面临着RX丢弃数据包数不断增加的问题.我相信它可能是由网络中的电缆/连接器故障引起的;但是,我无法检查每个连接以找到问题.有没有办法看到丢弃的数据包来自哪个IP?
解决方法
使用
nmap,您可以获得有关您的网络的各种信息,包括,它对跟踪数据包丢失非常有用. –packet-trace选项可用于跟踪所有数据包.虽然有大量的在线使用nmap的示例和指南,但启动的简单方法如下:
nmap -sP --packet-trace 192.168.1.0/24
将扫描网络中的主机并在超时的情况下跟踪数据包我在本地网络上得到类似的内容
nsock_read(): Read request from IOD #1 [192.168.1.42:53] (timeout: -1ms) EID 66
可以通过各种方式自定义和编写nmap调用,以获取有关网络的更多信息,并尝试清除错误的连接.
除了nmap之外,还有一个名为wireshark的图形工具,可用于整个网络分析任务,包括查找丢失数据包的坏链接/来源.
根据所使用的交换机和网络硬件以及访问级别,您可以使用环境中交换机上的内置管理接口来查找丢弃数据包异常高的物理端口.对于某些品牌的可管理交换机,这类任务甚至可能是脚本化/自动化的;这种操作的确切语义将取决于特定的网络硬件和配置.在使用Simple Network Management Protocol(SNMP)的正确类型的环境中,可能是一种新颖的方式来从您的网络收集所有这些信息(丢弃在物理交换机端口上的数据包等),而无需太多工作.
编辑:
在上面的示例EID is a DNS Resource Record(RR)中,它是Endpoint IDentifier(EID)的缩写.