Linux抓包工具tcpdump

一、介绍

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

三、wireshark打开cap文件

1、抓包保存到文件中
tcpdump -i eno1 tcp -w /tmp/slice1.cap
2、下载/tmp/slice1.cap到安装了wireshark电脑中。
3、使用wireshark打开/tmp/slice1.cap

参考资料:

wireshark 导出特定分组
wireshark提取视频数据之RTP包中提取H264和H265

你可能感兴趣的:(网络编程,linux,tcpdump,网络)