dumpcap 是 Wireshark 套件中的一个命令行工具,用于捕获网络数据包。以下是一些常用的 dumpcap 命令行参数:
-i <interface>: 指定要捕获数据包的网络接口。-w <file>: 将捕获的数据包写入指定的文件。-r <file>: 读取已保存的捕获文件。-c <count>: 捕获指定数量的数据包后停止。-G <seconds>: 设置捕获文件的轮转时间间隔(秒)。-W <files>: 设置最大捕获文件数量。-C <size>: 设置每个捕获文件的最大大小(MB)。-K: 在捕获过程中实时解密 SSL/TLS 流量。-n: 不解析主机名和端口名,只显示 IP 地址和端口号。-N: 不解析协议名称,只显示协议号。-q: 安静模式,减少输出信息。-v: 详细模式,增加输出信息。-vv: 更详细的模式。-vvv: 最详细的模式。-B <size>: 设置缓冲区大小(KB)。-D: 列出所有可用的网络接口。-e: 显示链路层头部信息。-E <cipher>[:<password>]: 设置解密密码(用于 SSL/TLS)。-f <display filter>: 应用显示过滤器。-h: 显示帮助信息。-I: 以混杂模式运行接口。-k <snaplen>: 设置最大捕获长度(字节)。-l: 在每次写入文件后刷新缓冲区。-m <mapfile>: 使用地址映射文件。-M <mtu>: 设置接口的最大传输单元(MTU)。-n <promisc_mode>: 设置接口的混杂模式。-O: 启用原始模式,捕获所有数据包,包括损坏的包。-P <promisc_mode>: 设置接口的混杂模式(与 -n 类似,但更详细)。-Q <inactivity_timeout>: 设置无活动超时时间(秒)。-R <record_length>: 设置记录长度(字节)。-s <snapshot_length>: 设置快照长度(字节),即捕获的最大数据包长度。-t <ad uplift>: 设置时间戳偏移量(秒)。-T <format>: 设置输出文件格式(如 pcap, json, csv 等)。-U <username>: 设置捕获文件的用户名。-V <version>: 设置捕获文件的版本。-w <file>: 将捕获的数据包写入指定的文件。-x: 以十六进制和 ASCII 格式显示数据包内容。# 捕获 eth0 接口上的前 100 个数据包,并保存到 capture.pcap 文件中
dumpcap -i eth0 -c 100 -w capture.pcap
# 捕获 eth0 接口上的所有数据包,并实时解密 SSL/TLS 流量
dumpcap -i eth0 -K -w capture.pcap
# 捕获 eth0 接口上的数据包,并应用显示过滤器 "tcp.port == 80"
dumpcap -i eth0 -f "tcp.port == 80" -w capture.pcap
这些参数可以帮助你根据需要灵活地配置 dumpcap 的行为。更多详细信息和选项,可以参考 dumpcap 的手册页(通过 man dumpcap 查看)。