iptrace可以发现、定位相当一部分网络IO问题,其作用不可忽视。
1、iptrace抓取
举例说明
开启监控:startsrc -s iptrace "-a -s 目标机IP -b -S 1500 -L 1073741824 /var/trace/iptrace.out"
该命令的含义是:iptrace记录本机与目标机双向传输的信息,抓取的数据包最大限制为1500字节,日志记录最大为1073741824字节(1G大小)。
关闭监控:stopsrc -s iptrace
2、通过wireshark工具进行分析
Wireshark是windows平台用于查看网口数据包的工具。核心功能是快速筛选自己需要的信息然后快速定位问题。使用Wireshark打开iptrace.out文件
可以按照需求筛选显示网络包列表,常用筛选条件如下:
1 按消息包长度筛选frame.len== (Length的值)
2 按数据源ip 筛选 ip.src eq 10.x.x.x
3 同时筛选源IP 以及协议类型ip.src eq 10.x.x.x && mq
4 按需求的协议类型筛选 mq && tcp
wireshark打开trace之后,有问题的部分,wireshark会自动标记为黑色条带,常见的问题有
1. tcp keep-alive ack/ tcp keep-alive
2. RST ACK
3. Retransmission
4. Previous segment uncaptured
5. ACKed Unseen segment
6. Dup ack
7. Destination unreachable
如果需要定位原因,只需要网上搜一搜每个问题对应的含义,问题根因估计马上可以水落石出。
另外,我有一篇文章专门举例介绍iptrace的查看和初步诊断,有兴趣可以看看