wireshark
是我们最常用的抓包和分析数据包的工具。但是在Linux服务器中,没有没有安装图形化界面。想用wireshark抓包就比较困难了。本文为大家介绍wireshark的命令行抓包工具Tshark
类似的命令行抓包工具还有tcpdump。用法都是大同小异。感兴趣的可以看看历史文章,前面都是讲过的。
在Linux中我们可以用apt
命令直接进行安装。
apt-get install tshark
kali中已默认安装
命令参数 | 说明 |
---|---|
-i | 设置抓包的网络接口,不设置则默认为第一个非自环接口 |
-f | 设定抓包过滤表达式,抓包过滤表达式的写法雷同于tcpdump |
-s | 设置每个抓包的大小,默认为65535 |
-a | 设置终止条件 |
-w | 设置raw数据的输出文件 |
-L | 列出本机支持的数据链路层协议 |
-x | 在解码输出结果中,每个packet后面以HEX dump的方式显示 |
抓取通过eth0网卡的实时数据包
tshark -i eth0
加上-V
之后会显示信息的数据包信息,效果如下图
获取22
端口的数据
tshark -f 'port 22' -i eth0
抓取来自10.1.1.1
的数据流
tshark -f 'src host 10.1.1.1' -i eth0
抓取发到02:0A:42:23:41:AC
的数据流
tshark -f 'ether dst 02:0A:42:23:41:AC' -i eth0
利用-w
将抓到的数据包保存为文件,借助wireshark
进行分析。
tshark -i eth0 -w test.pcap
利用-r
读取保存的抓包文件
tshark -r test.pcap