tcpdump是一款很好的linux抓包分析数据包的软件,下面讲解一下如何通过tcpdump进行抓取数据包,分析数据包的过程.
- 设置所抓取的网卡,用参数-i
首先我们在命令行中输入ifconfig,查看自己的所分配的ip 地址的网卡信息
可能是eth0 或者ens0,当然有很多种,这里只需输入你所想要在那个网卡上抓取就行了
tcpdump -i ens3 //在网卡ens3上进行数据包的抓取
- 设置所抓取数据包的源,目的地址,参数 src ip/dst ip
tcpdump host 119.63.197.151//这个ip地址是百度的一个地址,所以小编这
里抓取的是流往百度的流量,当然tcpdump比较好的地方是也可以抓取所去
往的域名.因此,我们也可以用下面这种形式.
tcpdump host www.baidu.com//域名的方法,更加形象
tcpdump src 119.63.197.151//检测来自百度的包
tcpdump dst 119.63.197.151//检测去百度的包
- 设置在那个端口进行刷取 port
tcpdump port 23 //设置对端口23进行抓取,23 是telnet默认的端口形式,因
此如果你在用远程连接的话,下面就会出现相应的数据包
- 对协议进行抓取,直接加上协议名子即可
tcpdump能够实现直接对网络协议进行抓取.因此,如果我们知道想要的数据包是什么协议的话,可以直接对这个协议进行抓取
tcpdump tcp//对tcp协议进行抓取
tcpdump udp//对udp协议进行抓取
还能对其他的一些协议抓取,如arp(地址解析),icmp
- 实现逻辑组合功能
tcpdump能够实现多个组合参数,可以用逻辑语法and , not, or
tcpdump -i eth0 tcp and not port 22//在网卡eth0上检测不是22端口的tcp包
等等,可以自己根据需要进行组合
- 其他一些常用参数
-w<数据包文件>:把数据包数据写入指定的文件。
-c<数据包数目>:收到指定的数据包数目后,就停止进行倾倒操作;