您当前的位置:首页 >> 互联网 >  >> 正文
关于在linux中使用tcpdump命令进行简单的抓包操作
来源: 博客园      时间:2023-04-26 22:27:03

如果需要在linux操作系统中对网络数据进行抓包,然后进行数据分析 ,一般使用最多的就是tcpdump命令了

这里笔者介绍一下,关于linux下tcpdump命令的简单使用方法,首先是需要在OS中安装tcpdump软件包的(最小化安装的系统中默认是没有tcpdump命令的)

[root@localhost qq-5201351]# yum install tcpdump -y

关于tcpdump命令,最简单的使用就是直接只执行 tcpdump命令, 可以不添加任何选项,


(相关资料图)

如果不添加任何选项,那么是抓取的那个网卡数据包呢,我们可以从帮助手册中看到,也会根据如下条件选择一个网络接口

If unspecified, tcpdump searches the system interface list

for the lowest numbered, configured up interface (exclud‐ing loopback), which may turn out to be, for example, ``eth0"".

因此我们最好还是指定网络接口,可以结果更加可靠严谨

tcpdump -i eth0 -vnn

说明:对于选项,其中-n代表以ip数字形式代替名称,再加上一个n,代表以数字形式代替端口协议名称

关于-v选项(最多可以指定-vvv):When parsing and printing, produce (slightly more) verbose output

# 抓取eth0网络接口上,包含主机1.1.1.1的所有数据包,另外,关于主机也可以使用域名的如tcpdump -i eth0 -vnn  host 1.1.1.1 # 指定源IP(使用src host), 如果是目标IP(使用dst host)tcpdump -i eth0-nn src host 2.2.2.2# 指定源端口Port(使用src port), 如果是目标IP(使用dst port), 也可以直接使用port同时表示源和目标tcpdump -i eth0 -nn dst port 443

多个条件的组合的使用,可以使用and, or 等关键词进行组合,如下,只抓取指定源IP并且包含指定端口数据包

tcpdump -i eth0 -nn src host 3.3.3.3 and dst port 443

另外,还有一些小技巧,可以将结果直接输出到文件(当然这里我们是否使用-vnn选项对于结果文件都没有影响的)

tcpdump -i eth0 -vnn host www.abc.com -wxxxxxx.dump

其中-n最多指定两个,-v最多可以指定三个,抓取后的文件格式为:

[root@localhost qq-5201351]# file xxxxxx.dumpxxxxxx.dump: tcpdump capture file (little-endian) - version 2.4 (Ethernet, capture length 262144)[root@localhost qq-5201351]# 

对于文件,也是可以通过tcpdump -r 进行读取的,笔者也将在另外的文章中单独说明

尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/17357444.html

标签:

X 关闭

X 关闭