linux抓包命令详解
时间: 2023-10-23 14:31:00 浏览: 111
Linux下的抓包命令主要有tcpdump和wireshark两种,下面分别介绍它们的用法。
1. tcpdump命令
tcpdump是Linux下的一个命令行抓包工具,可以用来捕获网络数据包并进行分析。
语法:tcpdump [选项] [过滤条件]
常用选项:
-i:指定监控的网络接口,如-i eth0。
-n:不进行域名解析,直接显示IP地址。
-t:不显示时间戳。
-X:以十六进制和ASCII码形式显示数据包。
常用过滤条件:
host:指定目标主机,如host 192.168.1.1。
port:指定目标端口,如port 80。
src:指定源主机,如src 192.168.1.2。
dst:指定目标主机,如dst 192.168.1.1。
tcp:只显示TCP协议的数据包,如tcp。
udp:只显示UDP协议的数据包,如udp。
icmp:只显示ICMP协议的数据包,如icmp。
示例:
抓取eth0接口上所有的TCP数据包:tcpdump -i eth0 tcp
抓取源地址为192.168.1.2的所有数据包:tcpdump src 192.168.1.2
抓取目标端口为80的所有数据包:tcpdump port 80
2. wireshark命令
wireshark是一款图形化的网络抓包分析工具,可以在Linux下使用。
语法:wireshark [选项] [过滤条件]
常用选项:
-i:指定监控的网络接口,如-i eth0。
-f:指定捕获过滤器,如-f "tcp port 80"。
-r:读取指定的抓包文件,如-r file.pcap。
常用过滤条件:
ip.addr:指定IP地址,如ip.addr == 192.168.1.1。
tcp.port:指定TCP端口,如tcp.port == 80。
udp.port:指定UDP端口,如udp.port == 53。
示例:
抓取eth0接口上所有的数据包:wireshark -i eth0
抓取目标IP地址为192.168.1.1的所有数据包:wireshark ip.addr == 192.168.1.1
抓取目标端口为80的所有TCP数据包:wireshark tcp.port == 80
阅读全文