tcpdump 抓包工具 使用详解

介绍

tcpdump 是一个运行在命令行下的抓包工具。它允许用户拦截和显示发送或收到过网络连接到该计算机的TCP/IP和其他数据包。

参数详解

-A     以ASCII的形式显示抓包的内容
-c   在收到指定的包的数目后,tcpdump就会停止;
-F   从指定的文件中读取表达式,忽略其它的表达式;
-i   指定监听的网络接口;
-r   从指定的文件中读取包(这些包一般通过-w选项产生)-w   直接将包写入文件中,并不分析和打印出来;
-s    snaplen表示从一个包中截取的字节数。0表示包不截断,抓完整的数据包。默认的话 tcpdump 只显示部分数据包,默认68字节。
-T   将监听到的包直接解释为指定的类型的报文,常见的类型有rpc (远程过程调用)和snmp(简单网络管理协议;)
-X    把协议头和包内容都原原本本的显示出来(tcpdump会以16进制和ASCII的形式显示),这在进行协议分析时是绝对的利器。
-n    不把IP地址解析成域名。

实例练习

抓取和读取文件

抓取网卡ens32的数据包,数据包不截断,并把抓取的数据包保存到a.cap文件中

tcpdump -i ens32 -s 0 -w a.cap

读取a.cap文件中的内容

tcpdump -r a.cap

以ASCII的形式读取a.cap文件中的内容

tcpdump -A -r a.cap

以16进制的形式读取a.cap文件中的内容

tcpdump -X -r a.cap 

抓取网卡ens32上22端口的TCP数据包

tcpdump -i ens32 tcp port 22

抓取网卡ens32上80端口的TCP数据包

tcpdump -i ens32 tcp port 80

抓取网卡ens32上53端口的UDP数据包

tcpdump -i ens32 udp port 53

tcpdump筛选

指定列筛选

tcpdump -n -r HTTP.cap | awk '{print $3}'|sort -u

指定源IP地址筛选

tcpdump -n src host 174.143.213.184 -r HTTP.cap 

指定目的IP地址筛选

tcpdump -n dst host 174.143.213.184 -r HTTP.cap

指定端口号筛选

tcpdump -n port 80 -r HTTP.cap

指定协议端口号筛选

tcpdump -n tcp port 80 -r HTTP.cap

指定13号字节为24筛选

tcpdump -A -n 'tcp[13] = 24' -r HTTP.cap

猜你喜欢

转载自blog.csdn.net/m0_46674735/article/details/113794758
今日推荐