首页 > 其他分享 >网络问题定位工具记录

网络问题定位工具记录

时间:2023-03-03 10:35:47浏览次数:38  
标签:定位 记录 0.0 网络 TCP IP 工具 ngrep 数据包

网络问题定位工具记录

老王内网发了一篇使用各种工具定位网络丢包问题的文章。

里面的工具我发现都没用过。。。惭愧。。。赶紧补充linux命令知识。

linux的nstat命令是做什么的?输出格式是什么意思?

nstat是一个Linux命令行工具,用于显示网络接口的统计信息,包括TCP、UDP、IP和ICMP协议的数据。

该命令的输出格式如下:

[root@wemeet-wemeet-together-service-stke-formal-0 /app]# nstat
#kernel
IpInReceives                    551070             0.0
IpInDelivers                    551006             0.0
IpOutRequests                   296793             0.0
IpReasmReqds                    82                 0.0
IpReasmOKs                      18                 0.0
IcmpInMsgs                      170                0.0
IcmpInEchos                     170                0.0
IcmpOutMsgs                     170                0.0
IcmpOutEchoReps                 170                0.0

其中,每个字段的含义如下:

  • IpInReceives:接收到的IP数据包数量
  • IpInDelivers:已成功交付的IP数据包数量
  • IpOutRequests:发送的IP数据包数量
  • TcpActiveOpens:主动打开的TCP连接数量
  • TcpPassiveOpens:被动打开的TCP连接数量
  • TcpCurrEstab:当前建立的TCP连接数量
  • UdpInDatagrams:接收到的UDP数据包数量
  • UdpOutDatagrams:发送的UDP数据包数量
  • UdpNoPorts:无法处理的UDP数据包数量(即找不到对应的进程)。

这些统计信息对于网络性能分析和故障排除非常有用。

所以文章中第一个命令

shell> watch -d -n1 "nstat -a | grep -i -E  'drop|error|fail|loss|overflow'"

意思就是获取所有的异常连接。

[root@wemeet-wemeet-together-service-stke-formal-0 /app]# nstat -a | grep -i -E  'drop|error|fail|loss|overflow'
IcmpInErrors                    5                  0.0
TcpAttemptFails                 2311127            0.0
TcpExtTCPLossUndo               15515              0.0
TcpExtTCPSackFailures           1164               0.0
TcpExtTCPLossFailures           2204               0.0
TcpExtTCPLossProbes             6558920            0.0
TcpExtTCPLossProbeRecovery      28662              0.0
TcpExtTCPSackRecoveryFail       78405              0.0

这几个网络接口数据信息是什么意思?

  • IcmpInErrors:接收到的ICMP错误报文数量。
  • TcpAttemptFails:TCP连接尝试失败的次数,通常由于目标端口未打开或网络拥塞等原因。
  • TcpExtTCPLossUndo:TCP重传数据包成功到达目标端口,但之前已经由于超时或拥塞丢失,因此被视为“撤销”丢失的数据包数量。
  • TcpExtTCPSackFailures:TCP SACK(选择性确认)失败的次数,SACK是一种用于减少丢包的技术。
  • TcpExtTCPLossFailures:TCP重传数据包失败的次数,这通常是由于网络延迟或拥塞导致的。
  • TcpExtTCPLossProbes:TCP检测到丢失的数据包数量,通常用于检测网络拥塞或丢包。
  • TcpExtTCPLossProbeRecovery:TCP检测到丢失的数据包恢复的次数。
  • TcpExtTCPSackRecoveryFail:TCP SACK恢复失败的次数。

在文章中,通过这个工具看出,服务器的 TcpExtTCPLossProbes 指标比较大。

TcpExtTCPLossProbes 是 Linux 内核中的一个 TCP 相关指标,用于记录 TCP 发送方因为丢包而触发的重传次数。如果一个服务器上的 TcpExtTCPLossProbes 指标比较大,说明该服务器上的 TCP 连接存在丢包现象,TCP 发送方为了保证数据可靠性会不断进行重传,从而导致了该指标的增加。

TCP 丢包可能由多种原因引起,例如网络拥塞、链路故障、数据包篡改等。在排查该问题时,可以通过检查服务器上的系统日志或 TCP 报文捕获数据包进行进一步分析,以确定具体的原因,并采取相应的措施进行修复。例如,可以尝试优化网络拓扑、调整 TCP 参数等方式来缓解该问题。

文章的中间是使用bcc工具来分析重试的端口,最终确认是80端口。

然后用ngrep工具来抓取某个ip的所有请求

ngrep工具是用来做什么的?

ngrep 是一种网络分析工具,用于捕获和分析网络数据包。它可以通过指定匹配规则来筛选和捕获特定的数据包,以便于对网络流量进行监控和分析。ngrep 支持的匹配规则包括基于字符串、正则表达式、16进制值等多种方式。同时,ngrep 还提供了许多选项和过滤器,可以用于控制输出、限制捕获数据包的数量、过滤掉不感兴趣的数据包等。

ngrep 工具常用于网络故障排查、安全监控、流量分析、协议分析等场景。例如,可以使用 ngrep 来捕获某个应用程序所发送和接收的数据包,以便于了解应用程序的行为和性能瓶颈;也可以使用 ngrep 来检测和分析网络攻击行为,例如检测恶意软件的行为、分析网络钓鱼攻击等。

ngrep 抓取目标ip为1.2.3.4的所有http请求,如何写命令行?

可以使用如下命令行来抓取目标 IP 为 1.2.3.4 的所有 HTTP 请求:

ngrep -q -W byline 'Host: ' 'tcp and dst host 1.2.3.4 and tcp dst port 80'

这个命令使用了 -q 参数来关闭详细输出,并使用了 -W byline 参数将每个匹配的行分开显示。它还使用了两个过滤器来捕获目标 IP 为 1.2.3.4 的所有 TCP 流量,并匹配所有包含 Host: 的 HTTP 请求头部。要注意的是,此命令假定 HTTP 请求是通过 TCP 端口 80 进行传输的,如果要捕获其他端口的 HTTP 请求,请相应地修改命令。

标签:定位,记录,0.0,网络,TCP,IP,工具,ngrep,数据包
From: https://www.cnblogs.com/yjf512/p/17174669.html

相关文章

  • Coatnet网络code
      CoAt=Convolution+ Attention将conv与transformer以一种最优的方式结合:在基础的计算块中,如果合并卷积与自注意力操作。如何组织不同的计算模块来构建整个网络。......
  • 记录一个移动端图片预览(支持旋转),使用css强制旋转的坑
    注:我并没有解决只是换了一个插件,记录一下问题1、需求要支持图片预览和旋转,<1>我选择是vant组件自带的ImagePreview图片预览,用的css强制实现旋转,<2>出现的问题是样......
  • 吴恩达卷积神经网络——目标检测
    1.目标定位定位分类问题不仅要求判断出图片中物体的种类,还要在图片中标记出它的具体位置,用边框(BoundingBox,或者称包围盒)把物体圈起来。一般来说,定位分类问题通常只......
  • OpenCloudOS 如何以最小成本,高效定位内存泄露路径?
    导读|遭受内存泄露往往是令开发者头疼的问题,传统分析工具gdb、Valgrind在解决内存泄露问题上效率较低。本文特别邀请到了OpenCloudOS社区Contributor、腾讯后台开发工程......
  • 每日记录(十)2022.03.02
    今天学了很多,主要有网页的制作,但是不太熟练,明天继续    今天吃了铁板炒饭,味道还行,,我觉得那个鸡蛋还可以加点味道,不然不太好吃。晚上吃了麻辣烫,我发现学二食堂的麻......
  • 系统切换故障记录
    故障一:POS端查询当天报表时,出现GiftVoucherIssued故障时间:2023年3月1日11:43故障店铺:WinnieLui 故障原因:  故障二: ......
  • 微软出品自动化神器【Playwright+Java】系列(十)元素定位详解
    一、写在前面又有很久没更文了,真的是被催婚搞的整个人情绪特别不好,如果硬要形容的话,那就是没法跟人正常沟通,一点就着,做什么都没耐心,看什么都烦,简直没救了...也是偶然发现......
  • 网络基础
    网络基础通信-安全的基础网络通信--搭建一个安全的公司局域网通信设备厂商:思科华为华三锐捷主讲华为目前中国市场占有率,60~70%四个阶段计网介绍路由技术交......
  • HBase存储空间撑爆导致拒绝服务的问题解决思路与操作方法记录
    时间:2022年3月29日;问题:tmss数据源切换完成后,源表数据将HBase集群内节点的存储空间撑爆,导致HBase集群内节点拒绝服务;修复:查询HDFS占用空间情况:hdfsdfs-df-h;确认是否......
  • c语言学习记录 冒泡排序
    #include<stdio.h>#include<string.h>#define_CRT_SECURE_NO_WARNINGS1voidbubble_sort(intarr[],intsz){ inti=0; //排序次数 for(i=0;i<sz-1;i+......