C/C++教程

TCPDUMP——抓包、筛选、高级筛选

本文主要是介绍TCPDUMP——抓包、筛选、高级筛选,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

https://wiki.wireshark.org/SampleCaptures/ 下载各种网络包的示例

TCPDUMP——抓包
抓包 
 默认之抓包68个字节  
 tcpdump -i eth0 -s 0 -w file.pcap
 Tcpdump -i eth0 port 22

读取抓包文件
 Tcpdump -r file.pcap

 实际操作:
查看参数:tcpdump -h
 常用: tcpdump -i eth0 -s 0 -w a.acp
 -i eth0: 用eth0 接口进行抓包; -s 0:表示包有多大,抓取的数据多大; -w a.cap 表示存取到 a.cap 文件中

 接着Ping 8.8.8.8 然后停止抓包 可以看到抓了12057个包

接着使用tcpdump -r a.acp 查看抓包的内容

-r 只是显示摘要信息,如果想要看详细信息可以使用 tcpdump -A -r a.acp  使用Ascll显示

 也可以使用 tcpdump -X -r a.acp 使用十六进制显示

如果想要抓某一端口的包可以使用  Tcpdump -i eth0 port <端口号>

TCPDUMP——筛选
tcpdump -n -r http.cap | wak'{print$3}'|sort -u
tcpdump -n src host 145.254.160.237 -r http.cap
tcpdump -n dst host 145.254.160.237 -r http.cap
tcpdump -n port 53 -r http.cap
tcpdump -n  -X  port 80 -r http.cap
 以 http.cap为例 (实验文件可以在文章开头的链接下载)

首先使用tcpdump -n -r  http.cap  抓取所有的

然后抓取 http.cap 第三列的信息 tcpdump -n -r http.cap | awk '{print $3}'

 

 里面显示的信息有重复的Ip 以及端口号,可以添加 sort -u

其实 tcpdump 提供了显示筛选功能
比如 tcpdump -n src host 145.254.160.237 -r http.cap  只显示源IP:145.254.160.237

 以及只显示 目标IP为 145.254.160.237

查看 53端口 tcpdump -n port 53 -r http.cap 
或者查看 udp 53 端口  tcpdump -n udp port 53 -r http.cap 

以十六进制的显示 tcpdump -n -X port 53 -r http.cap

左边为十六进制  右边为 Ascll编码
tips: tcpdump -n -X port 80 -r http.cap    小写的 x 不显示 Ascll编码

TCPDUMP——高级筛选
tcpdump -A -n 'tcp[13]=24' -r http.cap
 显示tcp 13号字节,第14个字节换算成十进制为24 的包 显示出来

第一个包

 

第二个包

基于特性可以筛选包中任何位置 任何数值的包
————————————————
版权声明:本文为CSDN博主「阿粒」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/suiyideAli/article/details/93935877

这篇关于TCPDUMP——抓包、筛选、高级筛选的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!