插件窝 干货文章 dumpcap在Linux中如何使用

dumpcap在Linux中如何使用

捕获 Wireshark dumpcap 流量 379    来源:    2025-05-09

dumpcap 是 Wireshark 套件中的一款命令行抓包工具,专为高效捕获网络流量而设计(比 tshark 更轻量)。以下是其在 Linux 中的详细使用方法:


1. 安装 dumpcap

若未安装,可通过以下命令安装 Wireshark 套件:

# Debian/Ubuntu
sudo apt update && sudo apt install wireshark

# RHEL/CentOS
sudo yum install wireshark

# 安装后需将用户加入wireshark组(避免sudo)
sudo usermod -aG wireshark $USER
newgrp wireshark  # 立即生效组权限

2. 基本用法

查看可用网卡

dumpcap -D

输出示例:

1. eth0
2. any (All interfaces)
3. lo

捕获数据包

dumpcap -i eth0 -w output.pcap
  • -i eth0:指定网卡(用 any 抓所有流量)
  • -w output.pcap:保存到文件(默认格式为PCAP)

3. 常用参数

参数 说明
-c <count> 捕获指定数量的包后停止
-a <autostop> 按条件停止(如 -a duration:60 捕获60秒)
-b <ringbuffer> 环形缓冲(如 -b files:5 -b filesize:100000 保留5个100KB文件)
-f <capture filter> 设置捕获过滤器(如 -f "tcp port 80"
-s <snaplen> 设置快照长度(截断包大小)
-q 安静模式(减少输出)
-B <buffer size> 设置内核缓冲区大小(MB)

4. 高级示例

捕获HTTP流量到循环文件

dumpcap -i eth0 -f "tcp port 80" -w http.pcap -b files:10 -b filesize:100000
  • 保存10个轮转文件,每个最大100MB。

后台捕获并记录时间

dumpcap -i any -w /tmp/trace.pcap -b duration:3600 -q &
  • 每小时生成一个新文件,静默运行在后台。

5. 注意事项

  • 权限问题:若报错 You don't have permission...,确保用户属于 wireshark 组或使用 sudo
  • 过滤语法:捕获过滤器(-f)语法与 tcpdump 一致,显示过滤器需用 tshark 或 Wireshark 分析。
  • 性能调优:大流量场景下,增加 -B 缓冲区大小或降低 -s 快照长度。

6. 结果分析

捕获的 .pcap 文件可用 Wireshark 或 tshark 分析:

wireshark output.pcap          # 图形化分析
tshark -r output.pcap -Y "http" # 命令行过滤HTTP流量

通过灵活组合参数,dumpcap 可适应从简单调试到长期流量监控的各种场景。