dumpcap
是 Wireshark 套件中的一個命令行工具,用于捕獲網絡上的數據包。雖然 dumpcap
本身沒有像 Wireshark 那樣的圖形界面來設置復雜的過濾器,但它支持使用 BPF(Berkeley Packet Filter)語法進行數據包捕獲過濾。
要在 dumpcap
中使用數據包過濾,你需要在啟動 dumpcap
命令時添加 -f
或 --filter
參數,后跟你的 BPF 過濾表達式。以下是一些基本步驟和示例:
打開命令行界面: 打開你的命令行工具(如終端、命令提示符或 PowerShell)。
運行 dumpcap 并添加過濾器:
使用以下格式的命令來啟動 dumpcap
并應用過濾器:
dumpcap -i <interface> -w <output_file> -f "<filter_expression>"
其中 <interface>
是你想捕獲數據包的網絡接口(例如 eth0
、wlan0
等),<output_file>
是你想要保存捕獲數據包的文件名(通常是 .pcap
或 .pcapng
格式),<filter_expression>
是你的 BPF 過濾表達式。
BPF 過濾表達式示例:
tcp.port == 80
ip.addr == 192.168.1.100
ip.addr == 192.168.1.100 and tcp.port == 80
udp
ip.src == 192.168.1.100
ip.dst == 192.168.1.100
開始捕獲:
輸入命令后,按下 Enter 鍵開始捕獲數據包。dumpcap
將會根據你提供的過濾器表達式捕獲數據包,并將它們保存到指定的輸出文件中。
停止捕獲:
要停止捕獲,你可以使用 Ctrl+C 組合鍵,或者在另一個命令行窗口中發送 SIGINT 信號給 dumpcap
進程。
請注意,捕獲網絡數據包可能需要管理員權限,因此在某些操作系統上,你可能需要使用 sudo
(在 Linux 或 macOS 上)或以管理員身份運行命令提示符(在 Windows 上)來執行 dumpcap
。
此外,確保你的網絡接口處于混雜模式,這樣它才能捕獲所有經過的數據包,而不僅僅是發給它的數據包。在某些系統上,這可能需要額外的配置或權限。