在Ubuntu下,dumpcap
是 Wireshark 套件中的一个命令行工具,用于捕获网络数据包。以下是一些常用的 dumpcap
命令及其选项:
捕获所有接口的数据包
sudo dumpcap -i any
捕获特定接口的数据包
sudo dumpcap -i eth0
将捕获的数据包保存到文件
sudo dumpcap -i any -w capture.pcap
限制捕获的数据包数量
sudo dumpcap -i any -c 100 -w capture.pcap
设置捕获的数据包大小限制
sudo dumpcap -i any -s 65535 -w capture.pcap
设置捕获过滤器
sudo dumpcap -i any -f "port 80" -w capture.pcap
设置时间戳精度
sudo dumpcap -i any -t ad -w capture.pcap
使用混杂模式
sudo dumpcap -i any -p -w capture.pcap
捕获特定协议的数据包
sudo dumpcap -i any -Y "tcp port 80 or udp port 53" -w capture.pcap
实时显示捕获的数据包
sudo dumpcap -i any -l -w - | tcpdump -r -
使用BPF(Berkeley Packet Filter)进行高级过滤
sudo dumpcap -i any -B 1000000 -w capture.pcap
-n
:不解析主机名和端口名,直接显示IP地址和端口号。-r
:读取已保存的捕获文件。-R
:读取并应用过滤器表达式。-q
:安静模式,减少输出信息。-v
:详细模式,增加输出信息。dumpcap
需要root权限才能捕获数据包,因此通常需要使用 sudo
。通过这些选项,你可以灵活地控制 dumpcap
的行为,以满足不同的捕获需求。