在Debian系统中,dumpcap 是一个用于捕获网络数据包的命令行工具,它是Wireshark套件的一部分。以下是一些常用的 dumpcap 命令行参数:
-i <interface>: 指定要捕获数据包的网络接口。-w <file>: 将捕获的数据包写入指定的文件。-C <size>: 设置每个捕获文件的最大大小(以MB为单位)。-G <seconds>: 设置捕获文件的轮转间隔(以秒为单位)。-W <files>: 设置最大保留的捕获文件数量。-f <filter expression>: 使用BPF(Berkeley Packet Filter)语法指定过滤表达式,只捕获符合条件的数据包。-R <file>: 从文件中读取过滤器表达式并应用。-s <snaplen>: 设置捕获数据包的最大长度(以字节为单位)。默认值通常是65535字节。-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
请注意,某些参数可能需要root权限才能正常工作。在使用 dumpcap 时,请确保你有足够的权限,并且了解每个参数的作用,以避免不必要的错误或安全问题。