在Linux中,dumpcap 是一個命令行工具,用于捕獲網絡接口上的數據包。如果你想要篩選數據包,可以使用 -w 選項將捕獲的數據包寫入文件,然后使用 wireshark 或 tshark 等工具進行篩選和分析。
以下是一些使用 dumpcap 和 tshark 篩選數據包的方法:
sudo dumpcap -i eth0 -w output.pcap
這將捕獲 eth0 接口上的所有數據包,并將它們保存到名為 output.pcap 的文件中。
tshark 是 Wireshark 的命令行版本,它提供了許多與 Wireshark 相同的功能,包括篩選數據包。
tshark -r output.pcap -Y "http"
這將顯示 output.pcap 文件中所有 HTTP 協議的數據包。
tshark -r output.pcap -Y "ip.src == 192.168.1.1"
這將顯示 output.pcap 文件中所有源 IP 地址為 192.168.1.1 的數據包。
tshark -r output.pcap -Y "ip.dst == 192.168.1.1"
這將顯示 output.pcap 文件中所有目標 IP 地址為 192.168.1.1 的數據包。
tshark -r output.pcap -Y "tcp.port == 80"
這將顯示 output.pcap 文件中所有目標端口為 80 的 TCP 數據包。
tshark 支持使用過濾器表達式來篩選數據包。過濾器表達式的語法類似于 Wireshark 的顯示過濾器。
例如,要篩選源 IP 地址為 192.168.1.1 且目標端口為 80 的 TCP 數據包,可以使用以下命令:
tshark -r output.pcap -Y "ip.src == 192.168.1.1 && tcp.port == 80"
更多關于 tshark 和過濾器表達式的信息,請參閱 Wireshark 文檔。