tcpdump是一个抓包工具,用于实时捕获和分析网络流量。它通常在unix和linux操作系统上使用。tcpdump能够捕获流经网络接口的数据包,并显示或保存它们以供进一步分析。它提供有关每个数据包的详细信息,包括源IP地址、目标IP地址、使用的协议、数据包时间戳、数据包大小等等。
1、显示所有可用的网络接口 -D
tcpdump -D
2、查下看系统网卡信息
ifconfig
3、tcpdump过滤器格式:tcpdmp [options] [not] proto dir type
options:可选 -nn/-vvv/-XX/-i/-c/-e
proto:ip, arp, rarp, tcp, udp, icmp, ether等
dir:src, dst, src or dst, src and dst,默认为 src or dst
type:有 host, net, port, portrange(端口范围,比如 21-42)
4、抓取某主机的数据包
tcpdump host 172.18.1.100
5、抓取任务网卡数据包
tcpdump -i any
6、抓取某网卡数据包
tcpdump -i eno1
7、抓取网络tcp数据包
tcpdump -i eno1 tcp
8、抓取某端口数据包
tcpdump -i eno1 tcp port 18001
9、监听主机192.168.1.100和192.168.1.101之间ip协议的80端口的且排除www.baidu.com通信的所有数据包:
tcpdump ip dst 192.168.1.100 and src 192.168.1.101 and port 80 and host not baidu.com
10、抓包保存到文件中
tcpdump -i eno1 tcp -w /tmp/slice1.cap
tcpdump -i eno1 tcp src port 18001 -XX -Xs 0 -w /tmp/slice2.cap
参数说明
-i: 指定网卡
tcp:协议
src: 指明包的来源
port: 指明端口号
-XX: 指抓到的包以16进制显示
-X: 指以ASCII码显示
-s 0: 指明抓整个包
-w: 写到文件中
11、读取捕获的数据包文件
要读取和分析捕获的数据包0001.pcap文件,请使用带有“-r”选项的命令,如下所示。
tcpdump -r /tmp/slice1.cap
1、抓包保存到文件中
tcpdump -i eno1 tcp -w /tmp/slice1.cap
2、下载/tmp/slice1.cap到安装了wireshark电脑中。
3、使用wireshark打开/tmp/slice1.cap
参考资料: