在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一致。

来自:https://www.centos.bz/2014/07/linux-commandline-capture-packets-tshark-wireshark/

Linux命令行抓包及包解析工具tshark(wireshark)使用实例解析的更多相关文章

  1. linux命令行抓取网页快照

    linux命令行抓取网页快照-(xvfb+CutyCapt)   目的: 在一台没有安装X-server的Debian服务器上实现命令行抓取网页快照 软件: xvfb(在命令行下实现对X-server ...

  2. 7个基于Linux命令行的文件下载和网站浏览工具

    7个基于Linux命令行的文件下载和网站浏览工具 时间:2015-06-01 09:36来源:linux.cn 编辑:linux.cn 点击: 2282 次 Linux命令行是GNU/Linux中最神 ...

  3. linux命令行抓取网页快照-(xvfb+CutyCapt)

    目的: 在一台没有安装X-server的Debian服务器上实现命令行抓取网页快照 软件: xvfb(在命令行下实现对X-server的模拟,渲染图形进行缓存)-在没有安装X-Server的环境下提供 ...

  4. 5个基于Linux命令行的文件下载和网站浏览工具

    导读 命令行是GNU/Linux中最神奇迷人的部分,它是非常强大的工具;命令行本身功能多样,多种内建或者第三方的命令行应用使得Linux变得更加健壮和强大.Linux Shell支持多种不同类型的网络 ...

  5. 第1章 Linux命令行简介

    1.1 Linux命令行概述 1.2 在Linux命令行下查看命令帮助 1.3 Linux关机.重启.注销命令 1.4 老男孩的运维思想 1.1 Linux命令行概述 1.1.1 Linux命令行的作 ...

  6. 命令行下打WAR包

    命令行下打WAR包: jar -cvf TestMem.war *

  7. mac命令行对复杂ipa包重新签名

    最近在做ios的自动化平台,需要通过命令行安装卸载ipa包 好了问题来,别人上传的ipa包,很可能是开发签名了只能在特定手机上安装的测试ipa包,那我们如何将其安装在我们的自动化的iphone上呢? ...

  8. 利用命令行引用外部jar包以使程序正常执行的4种方法

    声明:本博客为原创博客.未经同意.不得转载!原文链接为http://blog.csdn.net/bettarwang/article/details/30976069 平时写一些小的Java Demo ...

  9. 你可能不知道的 Linux 命令行网络监控工具

    http://developer.51cto.com/art/201505/476651_2.htm 对任何规模的业务来说,网络监控工具都 是一个重要的功能.网络监控的目标可能千差万别.比如,监控活动 ...

随机推荐

  1. a标签跳页传参,以及截取URL参数

    <a href="dd.index?aa=1&&bb=2"></a> //截取URL参数 // console.log(window.loc ...

  2. C#利用Vini.cs操作INI文件

    VClassLib-CS项目Github地址:https://github.com/velscode/VClassLib-CS VINI文档地址:https://github.com/velscode ...

  3. [转] 常用Loss函数

    好文mark 转自机器之心 :https://www.jiqizhixin.com/articles/2018-06-21-3 “损失函数”是机器学习优化中至关重要的一部分.L1.L2损失函数相信大多 ...

  4. unicode & utf-8

    简单来说: Unicode 是「字符集」 UTF-8 是「编码规则」 其中: 字符集:为每一个「字符」分配一个唯一的 ID(学名为码位 / 码点 / Code Point) 编码规则:将「码位」转换为 ...

  5. RTF文件格式

    文档地址 首先给出一个生成最简单的RTF文件的脚本 f=open('hello_world.rtf','w') padding='{\\rtf1\\ansi' padding+=' Hello Wor ...

  6. English 动词篇

    动词后加to do 和 doing的记忆口诀 一.只能用动名词(ing)作宾语 [口诀] 考虑建议盼原谅,承认推迟没得想. 避免错过继续练,否定完成停欣赏. 禁止想象才冒险,不禁介意弃逃亡. cons ...

  7. 【原创】大叔问题定位分享(12)Spark保存文本类型文件(text、csv、json等)到hdfs时为什么是压缩格式的

    问题重现 rdd.repartition(1).write.csv(outPath) 写文件之后发现文件是压缩过的 write时首先会获取hadoopConf,然后从中获取是否压缩以及压缩格式 org ...

  8. RDay2-Problem 2 B

    题目描述 小明家有n个信箱,前前后后来送信和取信的总次数为q,称为q次访问,其中这q次访问分成三种类型. 1:邮递员送来了一封信,放在了x号信箱. 2:小明取走了x号信箱的所有信(x信箱可能已经没有信 ...

  9. js中循环对比(for循环,foreach,for in,for of ,map)

    对空位的处理 for循环(不会忽略空位,标记undefined) var arr =[1,2,undefined,3,null,,7] for (let i=0;i<arr.length;i++ ...

  10. mybatis 查询单个对象,结果集类型一定要明确

    简单介绍:用ssm框架已经有很长时间了,但是似乎从来都没有对于查询单个对象,存在问题的,好像也就是那回事,写完sql就查出来了,也从来都没有认真的想过,为什么会这样,为什么要设置结果集类型 代码: / ...