dumpcap
是 Wireshark 套件中的一个命令行工具,用于捕获网络数据包。以下是一些常用的 dumpcap
命令行参数:
-i <interface>
: 指定要捕获数据包的网络接口。-w <file>
: 将捕获的数据包写入指定的文件。-C <size>
: 设置每个捕获文件的最大大小(以 MB 为单位)。-G <seconds>
: 设置捕获文件的轮转时间间隔(以秒为单位)。-W <files>
: 设置最大保留的捕获文件数量。-b <snaplen>
: 设置捕获数据包的最大长度(以字节为单位)。-s <snaplen>
: 同上,设置捕获数据包的最大长度(以字节为单位),但仅在较新版本的 dumpcap
中可用。-e
: 在每个捕获的数据包中包含链路层头部信息。-E <field>=<value>
: 设置捕获过滤器。-f <expression>
: 使用 BPF(Berkeley Packet Filter)语法指定捕获过滤器。-n
: 不将地址和端口号转换为名称。-N
: 不解析协议名称。-q
: 安静模式,减少输出信息。-r <file>
: 读取并显示指定文件中的捕获数据包。-t <ad-dec|ascii|ebcdic|ibm943|iso-8859-1|iso-8859-2|iso-8859-3|iso-8859-4|iso-8859-5|iso-8859-6|iso-8859-7|iso-8859-8|iso-8859-9|iso-8859-10|iso-8859-11|iso-8859-13|iso-8859-14|iso-8859-15|iso-8859-16|koi8-r|koi8-u|mac|windows-1250|windows-1251|windows-1252|windows-1253|windows-1254|windows-1255|windows-1256|windows-1257|windows-1258>
: 设置时间戳格式。-T <type>
: 设置输出格式(例如 pcap
, json
, csv
等)。捕获所有接口上的数据包并保存到文件:
dumpcap -i any -w capture.pcap
捕获特定接口上的数据包并设置最大文件大小:
dumpcap -i eth0 -w capture.pcap -C 100
使用 BPF 过滤器捕获特定类型的数据包:
dumpcap -i eth0 -w capture.pcap -f "tcp port 80"
读取并显示已保存的捕获文件:
dumpcap -r capture.pcap
设置捕获数据包的最大长度并输出为 JSON 格式:
dumpcap -i eth0 -w capture.pcap -b 65535 -T json
请注意,dumpcap
的参数可能会因版本不同而有所变化。建议查阅你所使用的 dumpcap
版本的手册页(通过 man dumpcap
)以获取最准确的信息。