Dumpcap 是 Wireshark 的命令行版本,用于捕获、存储和分析网络流量。在 Debian 系统中,Dumpcap 提供了多种命令行参数以灵活地控制其捕获行为。以下是一些常用的命令行参数及其功能:
-i <interface>
:指定要捕获数据包的网络接口。-w <file>
:将捕获的数据包写入指定的文件。-c <count>
:设置捕获数据包的最大数量,达到指定数量后自动停止捕获。-s <snaplen>
:设置捕获数据包的最大长度(以字节为单位)。-C <size>
:设置每个捕获文件的最大大小(以MB为单位)。-G <seconds>
:设置捕获文件的轮转间隔(以秒为单位)。-W <files>
:设置最大保留的捕获文件数量。-f <filter expression>
:使用 BPF(Berkeley Packet Filter)语法指定过滤表达式,只捕获符合条件的数据包。-R <file>
:从文件中读取过滤器表达式并应用。-n
:不将地址和端口转换为名称。-N
:不解析协议。-q
:安静模式,减少输出信息。-v
:增加详细程度。-vv
:更详细的输出。-vvv
:最详细的输出。-t <adns>
:启用或禁用DNS解析。-T <format>
:设置输出格式,如 pcap, json, csv 等。-e
:显示链路层头部信息。-E <key>=<value>
:设置捕获时的环境变量。-I
:在捕获开始时打印统计信息。-K
:启用内核级捕获。-l
:允许在捕获过程中使用 Ctrl+C 终止。-m <mapfile>
:使用映射文件来处理特殊字符。-M <mapfile>
:使用映射文件来处理以太网类型字段。-P <promiscuous mode>
:设置混杂模式。-r <file>
:读取已存在的 .pcap 文件进行分析。-U
:使用原始模式捕获数据包。-X
:以十六进制和ASCII格式显示数据包内容。# 捕获eth0接口上的所有数据包,并保存到capture.pcap文件中
sudo dumpcap -i eth0 -w capture.pcap
# 捕获eth0接口上TCP端口80的数据包,并保存到capture_tcp80.pcap文件中
sudo dumpcap -i eth0 -w capture_tcp80.pcap 'tcp port 80'
# 捕获eth0接口上的前100个数据包,并保存到capture_100.pcap文件中
sudo dumpcap -i eth0 -w capture_100.pcap -c 100
在使用 Dumpcap 时,请确保你有足够的权限,并且了解每个参数的作用,以避免不必要的错误或安全问题。