服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|

Linux下Wireshark的网络抓包使用方法

2019-07-11 17:22微微一笑很倾城fdhfghfghb Linux

这篇文章主要介绍了Linux下Wireshark的网络抓包使用方法,针对其的tshark命令给简单讲解,需要的朋友可以参考下

Wireshark是世界上最流行的网络分析工具。这个强大的工具可以捕捉网络中的数据,并为用户提供关于网络和上层协议的各种信息。
与很多其他网络工具一样,Wireshark也使用pcap network library来进行封包捕捉。

Wireshark的优势:

- 安装方便。

- 简单易用的界面。

- 提供丰富的功能。

Wireshark的原名是Ethereal,新名字是2006年起用的。当时Ethereal的主要开发者决定离开他原来供职的公司,并继续开发这个软件。但由于Ethereal这个名称的使用权已经被原来那个公司注册,Wireshark这个新名字也就应运而生了。

Wireshark目前世界上最受欢迎的协议分析软件,利用它可将捕获到的各种各样协议的网络二进制数据流翻译为人们容易读懂和理解的文字和图表等形式,极大地方便了对网络活动的监测分析和教学实验。它有十分丰富和强大的统计分析功能,可在Windows,Linux 和UNIX等系统上运行。此软件于1998年由美国Gerald Combs首创研发,原名Ethereal,至今世界各国已有100多位网络专家和软件人员正在共同参与此软件的升级完善和维护。它的名称于2006年5月由原Ethereal改为Wireshark。至今它的更新升级速度大约每2~3个月推出一个新的版本,2007年9月时的版本号为0.99.6。但是升级后软件的主要功能和使用方法保持不变。它是一个开源代码的免费软件,任何人都可自由下载,也可参与共同开发。

    Wireshark网络协议分析软件可以十分方便直观地应用于计算机网络原理和网络安全的教学实验,网络的日常安全监测,网络性能参数测试,网络恶意代码的捕获分析,网络用户的行为监测,黑客活动的追踪等。因此它在世界范围的网络管理专家,信息安全专家,软件和硬件开发人员中,以及美国的一些知名大学的网络原理和信息安全技术的教学、科研和实验工作中得到广泛的应用。

    在安装新旧版本软件包和使用中,Ethereal与Wireshark的一些细微区别如下:

  (1)Ethereal软件安装包中包含的网络数据采集软件是winpcap 3.0的版本,保存捕获数据时只能用英文的文件名,文件名默认后缀为 .cap

  (2)Wireshark软件安装包中,目前包含的网络数据采集软件是winpcap 4.0版本,保存捕获数据时可以用中文的文件名,文件名默认后缀为 .pcap。另外,Wireshark可以翻译解释更多的网络通信协议数据,对网络数据流具有更好的统计分析功能,在网络安全教学和日常网络监管工作中使用更方便,而基本使用方法仍然与Ethereal相同。

winpcap(windows packet capture)是windows平台下一个免费,公共的网络访问系统。开发winpcap这个项目的目的在于为win32应用程序提供访问网络底层的能力。

在Linux下,当我们需要抓取网络数据包分析时,通常是使用tcpdump抓取网络raw数据包存到一个文件,然后下载到本地使用wireshark界面网络分析工具进行网络包分析。
最近才发现,原来wireshark也提供有Linux命令行工具-tshark。tshark不仅有抓包的功能,还带了解析各种协议的能力。下面我们以两个实例来介绍tshark工具。
1、安装方法
CentOS:

复制代码

代码如下:

yum install -y wireshark


Ubuntu:

复制代码

代码如下:

apt-get install -y tshark


2、实时打印当前http请求的url(包括域名)

复制代码

代码如下:


tshark -s 512 -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 | tr -d '\t'


下面介绍参数含义:
-s 512 :只抓取前512个字节数据
-i eth0 :捕获eth0网卡
-n :禁止网络对象名称解析
-f ‘tcp dst port 80′ :只捕捉协议为tcp,目的端口为80的数据包
-R ‘http.host and http.request.uri’ :过滤出http.host和http.request.uri
-T fields -e http.host -e http.request.uri :打印http.host和http.request.uri
-l :输出到标准输出
3、实时打印当前mysql查询语句

复制代码

代码如下:


tshark -s 512 -i eth0 -n -f 'tcp dst port 3306' -R 'mysql.query' -T fields -e mysql.query


下面介绍参数含义:
-s 512 :只抓取前512个字节数据
-i eth0 :捕获eth0网卡
-n :禁止网络对象名称解析
-f ‘tcp dst port 3306′ :只捕捉协议为tcp,目的端口为3306的数据包
-R ‘mysql.query’ :过滤出mysql.query
-T fields -e mysql.query :打印mysql查询语句
tshark使用-f来指定捕捉包过滤规则,规则与tcpdump一样,可以通过命令man pcap-filter来查得。
tshark使用-R来过滤已捕捉到的包,与界面版wireshark的左上角Filter一致。

延伸 · 阅读

精彩推荐
  • LinuxLinux中stat命令显示文件的基本使用教程

    Linux中stat命令显示文件的基本使用教程

    这篇文章主要介绍了Linux中stat命令显示文件的基本使用教程,用户还能够通过stat查看文件系统的状态,需要的朋友可以参考下...

    FATE SKY3222019-06-18
  • LinuxLinux就该这么学 高清晰PDF

    Linux就该这么学 高清晰PDF

    《Linux就该这么学》 一书源自日均阅读量近万次火爆的线上同名课程,口碑与影响力俱佳,旨在打造简单易学且实用性强的轻量级 Linux 入门教程。 本书基于红帽 RHEL 系统编写,且内容通用于...

    Linux公社2562019-06-07
  • Linux最牛技术 1秒启动Linux的窍门

    最牛技术 1秒启动Linux的窍门

    1秒启动Linux可以实现吗?我们知道Linux系统开机并不算快,最少也需要11秒,但是,现在有一个技巧,可以1秒打开linux系统,到底是什么技术这么牛?请看下文详细介绍...

    服务器之家4542019-07-01
  • Linuxlinux 查看文件内容具体的某一行数据

    linux 查看文件内容具体的某一行数据

    通过head和tail指令搭配,head指令查看前面多少行,tail指令查看后面多少行,举例:某log日志有很多很多行,我们获取他的第40行的数据,思路就是先用head获取前40行,然后tail获取最后一行,这样我们得到的就是第40行的数据了...

    脚本之家5082019-05-26
  • LinuxRedHat Linux 5无法使用ifconfig的解决方法

    RedHat Linux 5无法使用ifconfig的解决方法

    最近一些朋友问小编RedHat Linux 5无法使用ifconfig怎么办?今天小编就为大家分享RedHat Linux 5无法使用ifconfig的解决方法,有需要的朋友可以参考...

    Linux之家4972019-05-31
  • Linux谈谈Linux运维人员是否需要掌握一门编程语言

    谈谈Linux运维人员是否需要掌握一门编程语言

    最近经常有同行的朋友或者 Linux 初学者问我: 运维 人员是否需要学一门语言,那么该学哪种语言呢? 对于这个问题,我分两个方面回答: 首选,在大数据、云计算发展迅猛的今天,系统运维人员如果不懂一点开发语言的话,确实...

    服务器之家4882019-05-23
  • LinuxLinux系统下安装ccze小工具美化系统日志

    Linux系统下安装ccze小工具美化系统日志

    这篇文章主要介绍了Linux系统下安装ccze小工具美化系统日志的方法,使其达到vim那样的配色显示效果,需要的朋友可以参考下...

    开源中文社区1712019-07-09
  • Linux详解Linux中基本的文件和目录命令file与mkdir

    详解Linux中基本的文件和目录命令file与mkdir

    这篇文章主要介绍了Linux中基本的文件和目录命令file与mkdir,file一般用于确定文件类型二mkdir一般用于创建目录,需要的朋友可以参考下...

    Linux命令手册4892019-06-25