tcpdump常用用法+wireshark分析cap包

本文介绍了tcpdump的常用命令,如指定网口、过滤IP与端口、限制抓包数量及保存数据包到文件。同时,探讨了Wireshark如何分析网络报文,包括不同颜色的含义以及报文详细信息的查看,帮助理解网络通信过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

工作中的常用用法
一、tcpdump常用用法:

1,-i 指定网口 -vnn 常用选项,显示详细信息并且不解析IP,端口 ;
抓取某个网口上发往或来自某个IP的报文
tcpdump -i ethX host 192.168.1.100 -vnn

2,可以用or 或者and 连接多个过滤条件,port前的tcp表示tcp协议,也可为udp;
抓取某个网口上发往或来自某个IP、并且指定端口的报文
tcpdump -i ethX host 192.168.1.100 and tcp port 22(端口号) -vnn

3, -c 指定抓取报文的数量, 用 -w 把抓取的数据包写入文件;
抓取某网口50个包并写入dump.cap(为什么是 .cap?因为wireshark识别此扩展名)文件:
tcpdump -i ethX -c 50 -w /root/dump.cap

4,可以用关键字 src 或者 dst 表示 源 或者 目的;
抓取源端口号为22(tcp协议)的报文
tcpdump -i ethX tcp src port 22(端口号) -vnn

以上为常用用法,可以根据实际情况灵活组合。

二、wireshark分析报文:

1,淡紫色数据包为正常数据包,包括数据包和ACK包

2,黑色为异常包,包括丢包ACK、重传等

    2.1 Packet Size limited during capture
   这个标志说明数据包并没被完全抓到,而只是抓到了一部分。这种情况多数是由于抓包方式引起,在某些系统中tcpdump只抓每个帧的前96个字节。我们可以”-s”参数来指定想要的字节数。

   2.2 TCP previous segment not captured
   TCP传输过程中同一台主机发出的数据应该是连续的,即
<think>我们正在处理用户关于使用Wireshark分析tcpdump数据的问题。根据引用内容,我们知道tcpdump后通常保存为文件(如.cap或.pcap),然后在Wireshark中打开分析。 步骤: 1. 使用tcpdump并保存为文件(如dump.cap或socket_test.pcap)。命令示例:`tcpdump -i eth0 -c 50 -w dump.cap`(抓取eth0网卡的50个,保存为dump.cap)。 2. 将保存的文件传输到安装有Wireshark的Windows系统(如果抓是在Linux上进行的)。 3. 在Wireshark中打开该文件进行分析。 现在,我们需要详细说明Wireshark如何分析这些文件Wireshark分析步骤: - 打开Wireshark,选择“File” -> “Open”,然后选择tcpdump保存的文件。 - 打开后,Wireshark会显示捕获的数据列表,每个数据含时间、源地址、目的地址、协议等信息。 - 用户可以点击任意数据查看详细解析(各层协议头和数据)。 - 使用过滤功能(在过滤栏输入过滤条件)可以快速定位感兴趣的数据(如按IP、端口、协议等过滤)。 - 还可以使用统计功能(如“Statistics”菜单)进行流量分析、端点统计等。 注意:tcpdump保存的文件格式通常是pcap格式,Wireshark可以直接读取。 根据引用[2]和[3],我们注意到保存的文件扩展名可以是.cap或.pcapWireshark都能识别。 因此,回答应该括: 1. 抓步骤(参考引用中的tcpdump命令)。 2. 文件传输(如果需要)。 3. Wireshark打开文件分析的基本操作。 同时,按照要求生成相关问题。 回答结构: 1. 简要说明过程。 2. 详细步骤。 3. 示例(可选)。 4. 相关问题。</think>### Wireshark分析tcpdump数据的步骤 1. **抓取数据并保存文件** 在Linux终端使用tcpdump,通过`-w`参数保存为.pcap/.cap格式文件Wireshark可识别该格式): ```bash tcpdump -i eth0 -c 100 -w /path/to/dump.pcap # 抓取eth0网卡的100个 ``` - `-i`:指定网卡(如`eth0`、`lo`回环接口) - `-c`:限制抓数量 - `-w`:输出文件名(推荐.pcap扩展名)[^2][^3] 2. **传输文件Wireshark环境** 若抓在远程服务器执行,需将文件传输到本地: ```bash scp user@server:/path/to/dump.pcap ~/Desktop/ # 通过SCP传输 ``` 3. **Wireshark分析操作** - **打开文件**:启动Wireshark → `File` → `Open` → 选择.pcap文件 - **核心功能区域**: - **数据列表**(顶部):显示时间戳、源/目的IP、协议等摘要 - **协议解析树**(中部):分层展示帧头、IP头、TCP/UDP头、应用层数据 - **原始字节流**(底部):十六进制与ASCII格式原始数据 - **关键操作**: - **过滤**:在过滤栏输入表达式(如`tcp.port==80`过滤HTTP流量) - **追踪流**:右键数据 → `Follow` → `TCP Stream`查看完整会话 - **统计分析**:`Statistics`菜单下的`Protocol Hierarchy`(协议分布)、`Endpoints`(端点通信统计) 4. **典型分析场景示例** - **定位网络延迟**: 1. 过滤目标IP:`ip.addr == 192.168.1.100` 2. 检查TCP握手时序:SYN/SYN-ACK的Time Delta - **诊断HTTP错误**: 1. 过滤HTTP状态码:`http.response.code >= 400` 2. 右键异常响应 → `Follow HTTP Stream`查看完整请求 > ⚠️ **注意事项** > - 抓时建议用`-s`参数指定快照长度(如`-s 1500`捕获完整MTU)避免截断 > - 复杂分析可结合显示过滤器语法:`(tcp.flags.syn==1) && !(ip.dst==127.0.0.1)` --- ### 相关问题 1. 如何用tcpdump只抓取特定协议的数据(如HTTP/ICMP)? 2. Wireshark中如何通过IO图形化工具分析网络延迟问题? 3. tcpdump保存的.pcap文件Wireshark的.pcapng格式有何区别? [^1]: [转载]聊聊tcpdumpWireshark分析 [^2]: tcpdump常用用法+wireshark分析cap [^3]: tcpdump简单抓分析
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值