Redian新闻
>
Linux 之 tshark 抓包工具安装和使用

Linux 之 tshark 抓包工具安装和使用

公众号新闻

链接https://blog.csdn.net/carefree2005/article/details/122131633

一、tshark简介

 tshark是一个网络协议分析器。它允许您从实时网络捕获数据包数据,或者从以前保存的捕获文件读取数据包,或者将这些数据包的解码形式打印到标准输出,或者将数据包写入文件。TShark的本机捕获文件格式是pcapng格式,这也是Wireshark和其他各种工具使用的格式。如果不设置任何选项,TShark的工作方式将非常类似于tcpdump。它将使用pcap库捕获来自第一个可用网络接口的流量,并在每个接收到的数据包的标准输出上显示摘要行。

本文实验环境说明:

操作系统:ceontos7.6

wireshark:1.10.14

二、安装步骤

1、安装epel扩展源

[root@s145 yum.repos.d]# yum install -y epel-release

2、安装wireshark

#tshark是wireshark的一个工具,我们可以直接安装wireshark

[root@s145 yum.repos.d]# yum install -y wireshark

3、查看版本

[root@s145 yum.repos.d]# tshark -vTShark 1.10.14 (Git Rev Unknown from unknown)

三、使用示例

1、获取命令帮助

[root@s145 ~]# tshark --help

2、查看命令版本

[root@s145 ~]# tshark -v

3、eth0接口抓包

[root@s145 ~]# tshark -i eth0

4、抓取前10个包

[root@s145 ~]# tshark -i eth0 -c 10

5、抓包http包

[root@s145 ~]# tshark -i eth0 -f ‘tcp dst port 80’

6、抓取http请求包

[root@s145 ~]# tshark -i eth0 -f ‘tcp dst port 80’ -R “http.request”

7、抓取http包并打印指定字段

[root@s145 ~]# tshark -i eth0 -n -f ‘tcp dst port 80’ -R ‘http.host and http.request.uri’ -T fields -e http.host -e http.request.uri -l

8、抓包并过来指定IP地址的包

[root@s145 ~]# tshark -i eth0 -R “ip.addr == 47.103.25.27”

-R参数可以使用满足wireshark过滤规则的包,过滤规则可以参考博文:

抓包工具之wireshark常用过滤表达式

四、命令参数说明

  此处参数说明仅介绍部分常用参数,参数详细说明见官网文档:https://www.wireshark.org/docs/man-pages/tshark.html

1、捕获接口参数

参数参数说明

-i <interface>接口名或网卡编号 (默认: 第一个非环回接口)

-f <capture filter>使用libpcap过滤表达式进行包过滤

-s <snaplen>设置每个抓包的大小,默认为262144。

-p不使用混杂模式抓捕报文(即只抓取与本机有关的流量)

-I如果支持则启用镜像模式

-B <buffer size>内核缓存大小 (默认4MB)

-y <link type>链路层类型 (默认为找到的第一个协议)

-D列出所有接口并退出

-L列出所有接口链路层类型并退出(供-y参数使用)

2、捕获终止条件参数

参数  参数说明-c <packet count>  捕获到n个包时停止 (默认不限,持续捕获)-a <autostop cond.> … duration:NUM  捕获进行NUM后停止-a <autostop cond.> … filesize:NUM  输出文件大于NUM KB后停止-a <autostop cond.> … files:NUM  输出超过NUM个文件后停止

3、捕获输出参数

参数  参数说明-b <ringbuffer opt.> … duration:NUM  在NUM秒后写入下一个文件(文件名由-w参数决定)-b <ringbuffer opt.> … interval:NUM  创建时间间隔NUM秒-b <ringbuffer opt.> … filesize:NUM  在文件大于NUM KB后写入下一个文件-b <ringbuffer opt.> … files:NUM  循环缓存: 在NUM个文件后替换早前的

4、读取文件参数

参数  参数说明-r <infile>  设置需要读取的文件名及路径

5、分析处理参数

参数  参数说明-2  执行两次分析-R <read filter>  包的读取过滤器,可以在wireshark的filter语法上查看;在wireshark的视图->过滤器视图,在这一栏点击表达式,就会列出来对所有协议的支持。-Y <display filter>  使用读取过滤器的语法,在单次分析中可以代替-R选项;-n:  禁止所有地址名字解析(默认为允许所有)-N <name resolve flags> :  启用某一层的地址名字解析。“m”代表MAC层,“n”代表网络层,“t”代表传输层,“C”代表当前异步DNS查找。如果-n和-N参数同时存在,-n将被忽略。如果-n和-N参数都不写,则默认打开所有地址名字解析。-d <layer_type>==,<decode_as_protocol> …  将指定的数据按有关协议解包输出,如要将tcp 8888端口的流量按http解包,应该写为“-d tcp.port==8888,http”;tshark -d. 可以列出所有支持的有效选择器。

6、输出参数

参数  参数说明-w <outfile|->  使用pcapng格式将报文写入"outfile"文件 (或’-'表示标准输出,直接显示在终端)-C <config profile>  启动时使用指定的配置文件-F <output file type>  设置输出文件格式类型, 默认为pcapng格式 "-F"留空则列出所有的文件类型-V  输出中增加报文层次树(包详细信息)-O <protocols>  仅显示以下协议的详细信息,逗号分割-P  每写入一个文件后进行包情况汇总-S <separator>  数据包之间的行分割符-x  输出中增加16进制和ascii字符信息(报文按字节显示)-T pdml|ps|psml|json|jsonraw|ek|tabs|text|fields|?  文本输出格式 (默认文本:text)-j <protocolfilter>  当-T ek|pdml|json 设置时协议层过滤 (例:“ip ip.flags text”, 过滤不展开的所有字节点,除非过滤中有指定的子节点)-J <protocolfilter>  当 -T ek|pdml|json 选项设置时进行顶层协议过滤, (例: “http tcp”, 过滤展开的所有字节点)-e <field>  当 -T fields 设置时打印字段 (如tcp.port,_ws.col.Info) 此选项可以多个用于打印多个字段-E<fieldsoption>=  当-Tfields选项启用时用于输出配置:

7、其他

参数  参数说明-h  显示帮助-v  显示版本-o <name>: …  覆盖配置项-K <keytab>  使用keytab文件用于解密kerberos-G [report]  生成一份或多份报告,默认report=“fields”,使用"-G help"获取更多信息

五、QA

1、yum安装tshark提示No package tshark available

原因:确实没有tshark包,tshark是wireshark的一个工具

解决方案:安装wireshark

[root@s145 yum.repos.d]# yum provides tshark

END

官方站点:www.linuxprobe.com

Linux命令大全:www.linuxcool.com

刘遄老师QQ:5604215

Linux技术交流群:3861509

(新群,火热加群中……)

想要学习Linux系统的读者可以点击"阅读原文"按钮来了解书籍《Linux就该这么学》,同时也非常适合专业的运维人员阅读,成为辅助您工作的高价值工具书!


微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
使用 Kubespray 安装 Kubernetes 集群 | Linux 中国长篇小说《如絮》第一百零三章 哈尔滨-1952-1953年 2 任务在 Ubuntu 上安装和使用 Qemu | Linux 中国如何入门 Linux Shell 脚本编写 | Linux 中国为什么程序员喜欢为 Linux 打包 | Linux 中国如何安装和使用 GNOME Boxes 来创建虚拟机 | Linux 中国使用 Linux 让旧电脑焕发新颜 | Linux 中国Fedora 工作站 39 可能会默认使用 Anaconda Web UI 安装程序 | Linux 中国Linux之tshark抓包工具安装和使用超越 Bash: 9 个不太知名的 Linux Shell 及其功能 | Linux 中国九剑一魂 - 第23回 太子遇害 贾后伏诛(九)爱晒衣服的日本人DBA抓包神器tshark测评如何在 Rocky Linux 9 / AlmaLinux 9 上安装 KVM | Linux 中国risiOS:一个易于使用的基于 Fedora 的 Linux 发行版 | Linux 中国斜风细雨不须归8 款最佳的 Linux 远程桌面工具 | Linux 中国意外地好!!!!!Microsoft 必应图像创建者如何在 Linux 系统中使用 Ventoy 创建多重引导的 U 盘 | Linux 中国SparkyLinux 7 “Orion Belt” 评测:稳定性与新鲜感的结合 | Linux 中国使用开源的思维导图工具 | Linux 中国Bash 基础知识系列 #1:创建并运行你的第一个 Bash Shell 脚本 | Linux 中国Agustín Hernández:中美洲建筑背景下的未来主义巨构Linux 版 WhatsApp | Linux 中国在 Linux 中使用 cd 命令 | Linux 中国如何安装和使用 Neovim | Linux 中国使用 ChatGPT AI 从英文文本生成 Linux 命令 | Linux 中国使用 Docsify-This 从 Markdown 文件生成网页 | Linux 中国如何在 Linux 中使用旧相机作为网络摄像头 | Linux 中国TUXEDO Stellaris 16(Gen5)是目前所能找到的终极 Linux 笔记本电脑 | Linux 中国使用这些 Python 工具可视化地探索数据 | Linux 中国如何在 Ubuntu 22.04 中安装和使用 Wireshark | Linux 中国Linux 上 5 款最好的 EPUB 阅读器 | Linux 中国Sniffnet:任何人都可以使用的有趣的开源网络监控工具 | Linux 中国为什么黑客更喜欢使用 Kali Linux? | Linux 中国
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。