tcpdump工具的使用方法与常见选项

tcpdump可以将网路中传送的数据包的“头”完全截获下来提供分析。支持对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来去掉无用的信息。

不带参数的tcpdump会收集网络中所有的信息报头,数据量巨大,所以,必须过滤。

常用选项 具体含义
-i 指定监听的网络接口。
-nn IP和端口均以数字形式显示。
-c 在收到指定的数据分组后,tcpdump停止,如果没有这个参数,会持续不断的监听用户,直到输入[Ctrl]+C为止。
-t 再输入的每一行不打印时间戳。
-q 只输出较少的协议信息,仅输出协议名称,不输出封包标记信息。
-w FILE直接将分组写入文件中,而不是到stdout。
-r FILE从后面接的文件将数据包数据读出来。
-s 设置数据包抓取长度为len,如果不设置默认为65535字节。
-D 列出可用于抓包的接口。列出接口的数值编号和接口名。可用于-i后。
-L 列出网络接口的已知数据链路。
-F 从文件中读取抓包的过滤表达式,若使用该选项,则命令行中给定的其他表达式都将失效。
-A 数据包的内容以ASCLL显示,通常用来捕捉www的网页数据包资料
-X 数据包内容以十六进制和ASCLL显示。
-XX 比-X输出更详细。

tcpdump使用常用的实例

1.针对指定网口抓包(-i)

当我们不加任何选项执行tcpdump时,tcpdump将会抓取通过所有的网口的包。使用-i选项,可以在某个指定的网口抓包。
例子:tcpdump抓取所有通过eth0的包。
命令:tcpdump -i eth0
这里写图片描述

2.抓取指定数目的包(-c选项)

例子:只针对eth0网口抓2个包。
命令:tcpdump -c 2 -i eth0
这里写图片描述

3.将抓到的包写入文件中(-w选项)

例子:将抓包记录到一个指定的文件中,以供后续分析
命令:tcpdump -w 2018530.pcap -i eth0
这里写图片描述

4.读取tcpdump保存文件(-r选项)

对于保存的抓包文件,可以使用-r选项进行读取。
命令:tcpdump -r 2018530.pcap
这里写图片描述

5.抓包时不进行域名解析(-n选项)

默认情况下,tcpdump抓包结果中将进行域名解析,显示的是域名地址,而不是IP地址,使用-n选项,可以指定显示IP地址。
这里写图片描述

6.增加抓包时间戳(-tttt选项)

使用-tttt选项,抓包结果将包含抓包日期。
命令:tcpdump -n -tttt -i eth0
这里写图片描述

7.指定抓包协议类型

tcpdump支持指定协议类型有:ip,ip6,arp,tcp,udp,wlan等。
例子:抓取arp协议的包。
命令:tcpdump -i eth0 arp
这里写图片描述

8.指定抓包端口

命令:tcpdump -i eth0 port 22

9.抓取特定目标IP和端口的包

网络中的包内容中,包含了源IP地址、源端口、目的IP地址、目的端口,我们可以根据目的IP和端口过滤tcpdump抓包结果。
命令:tcpdump -i eth0 dst 10.70.121.92 and port 22

猜你喜欢

转载自blog.csdn.net/zwe7616175/article/details/80514351