Linux tcpdump偵測封包
tcpdump -i ethX icmp and icmp[icmptype]=icmp-echo
查看 tcpdump 可以監聽的接口列表:
tcpdump -D
在接口 eth0 上監聽:
tcpdump -i eth0
監聽任何可用的接口(不能在混雜模式下完成。需要 Linux 內核 2.2 或更高版本):
tcpdump -i any
捕獲數據包時要詳細:
tcpdump -v
捕獲數據包時更詳細:
tcpdump -vv
捕獲數據包時要非常詳細:
tcpdump -vvv
詳細並以十六進制和 ASCII 格式打印每個數據包的數據,不包括鏈路級標頭:
tcpdump -v -X
詳細並以十六進制和 ASCII 格式打印每個數據包的數據,還包括鏈路級標頭:
tcpdump -v -XX
捕獲數據包時不那麼冗長(比默認設置):
tcpdump -q
將捕獲限制為 100 個數據包:
tcpdump -c 100
將數據包捕獲記錄到名為 capture.cap 的文件中:
tcpdump -w capture.cap
將數據包捕獲記錄到一個名為 capture.cap 的文件中,但會在屏幕上顯示實時捕獲了多少數據包:
tcpdump -v -w capture.cap
顯示一個名為 capture.cap 的文件的數據包:
tcpdump -r capture.cap
使用名為 capture.cap 的文件的最大詳細信息顯示數據包:
tcpdump -vvv -r capture.cap
捕獲數據包時顯示 IP 地址和端口號,而不是域名和服務名稱(注意:在某些系統上,您需要指定 -nn 來顯示端口號):
tcpdump -n
捕獲目標主機為 192.168.1.1 的任何數據包。顯示 IP 地址和端口號:
tcpdump -n dst host 192.168.1.1
捕獲源主機為 192.168.1.1 的任何數據包。顯示 IP 地址和端口號:
tcpdump -n src host 192.168.1.1
捕獲源或目標主機為 192.168.1.1 的任何數據包。顯示 IP 地址和端口號:
tcpdump -n host 192.168.1.1
捕獲目標網絡為 192.168.1.0/24 的任何數據包。顯示 IP 地址和端口號:
tcpdump -n dst net 192.168.1.0/24
捕獲源網絡為 192.168.1.0/24 的任何數據包。顯示 IP 地址和端口號:
tcpdump -n src net 192.168.1.0/24
捕獲源或目標網絡為 192.168.1.0/24 的任何數據包。顯示 IP 地址和端口號:
tcpdump -n net 192.168.1.0/24
捕獲目標端口為 23 的任何數據包。顯示 IP 地址和端口號:
tcpdump -n dst port 23
捕獲目標端口介於 1 和 1023(含)之間的任何數據包。顯示 IP 地址和端口號:
tcpdump -n dst portrange 1-1023
僅捕獲目標端口介於 1 和 1023(含)之間的 TCP 數據包。顯示 IP 地址和端口號:
tcpdump -n tcp dst portrange 1-1023
僅捕獲目標端口介於 1 和 1023(含)之間的 UDP 數據包。顯示 IP 地址和端口號:
tcpdump -n udp dst portrange 1-1023
捕獲目標 IP 為 192.168.1.1 和目標端口為 23 的任何數據包。顯示 IP 地址和端口號:
tcpdump -n “dst host 192.168.1.1 and dst port 23”
捕獲目標 IP 為 192.168.1.1 和目標端口為 80 或 443 的任何數據包。顯示 IP 地址和端口號:
tcpdump -n “dst host 192.168.1.1 and (dst port 80 and dst port 443)”
捕獲任何 ICMP 數據包:
tcpdump -v icmp
捕獲任何 ARP 數據包:
tcpdump -v arp
捕獲 ICMP 或 ARP 數據包:
tcpdump -v “icmp or arp”
捕獲任何廣播或多播的數據包:
tcpdump -n “broadcast or multicast”
為每個數據包捕獲 500 字節的數據,而不是默認的 68 字節:
tcpdump -s 500
捕獲數據包內的所有數據字節:
tcpdump -s 0
No comments to display
No comments to display