推荐阅读:

过滤器

显示过滤器 和 捕获过滤器,俩者使用非常类似。

在Wireshark首页未选定接口前可以输入捕获规则。

多个过滤要求可以用连接词 &&


wireshark进行过滤时,按照过滤的语法可分为 协议过滤内容过滤

对标准协议,既支持粗粒度的过滤如HTTP,也支持细粒度的、依据协议属性值进行的过滤。

tcp.port==53、http.request.method=="GET"

对内容的过滤,既支持深度的字符串匹配过滤如 http contains "Server",也支持特定偏移处值的匹配过滤。

tcp[20:3] == 47:45:54

例子:

  • 过滤IP和MAC地址
//ip 改成 eth,就是过滤 mac 地址

ip.addr == 8.8.8.8
ip.src == 8.8.8.8
ip.dst == 8.8.8.8
ip.addr == 10.0.0.0/16
  • 过滤端口
//tcp 可以改成 udp

tcp.port == 9090
tcp.dstport == 9090
tcp.srcport == 9090
tcp.port >=1 and tcp.port <= 80
  • 根据长度过滤
tcp.len >= 7      (tcp data length)
ip.len == 88 (except fixed header length)
udp.length == 26 (fixed header length 8 and data length)
frame.len == 999 (all data packet length)
  • HTTP数据包过滤
http.host == xxx.com
// 过滤 host http.response == 1
// 过滤所有的 http 响应包 http.response.code == 302
// 过滤状态码 302 http.request.method==POST
// 过滤 POST 请求包 http.cookie contains xxx
// cookie 包含 xxx http.request.uri=="/robots.txt"
//过滤请求的uri,取值是域名后的部分 http.request.full_uri=="http://.com"
// 过滤含域名的整个url http.server contains "nginx"
//过滤http头中server字段含有nginx字符的数据包 http.content_type == "text/html"
//过滤content_type是text/html http.content_encoding == "gzip"
//过滤content_encoding是gzip的http包 http.transfer_encoding == "xx"
//根据transfer_encoding过滤 http.content_length == 279 http.content_length_header == "279"
//根据content_length的数值过滤 http.request.version == "HTTP/1.1"
//过滤HTTP/1.1版本的http包,包括请求和响应
  • 可用协议
tcp、udp、arp、icmp、http、smtp、ftp、dns、msnms、ip、ssl、oicq、bootp

数据包解析

Packet Details Pane(数据包详细信息), 在数据包列表中选择指定数据包,在数据包详细信息中会显示数据包的所有详细信息内容。

数据包详细信息面板是最重要的,用来查看协议中的每一个字段。各行信息分别为:

(1)Frame: 物理层的数据帧概况

(2)Ethernet II: 数据链路层以太网帧头部信息

(3)Internet Protocol Version 4: 互联网层IP包头部信息

(4)Transmission Control Protocol: 传输层T的数据段头部信息

(5)Hypertext Transfer Protocol: 应用层的信息


从下图可以看到Wireshark捕获到的数据包中的每个字段:

参考

Wireshark-过滤器-数据包解析的更多相关文章

  1. IM通信协议逆向分析、Wireshark自定义数据包格式解析插件编程学习

    相关学习资料 http://hi.baidu.com/hucyuansheng/item/bf2bfddefd1ee70ad68ed04d http://en.wikipedia.org/wiki/I ...

  2. GPS数据包格式及数据包解析

    GPS数据包解析 GPS数据包解析 目的 GPS数据类型及格式 数据格式 数据解释 解析代码 结构体定义 GPRMC解析函数 GPGGA解析函数 测试样例输出 gps数据包格式 gps数据解析 车联网 ...

  3. 一个C++版的网络数据包解析策略

    C++版的网络数据包解析策略(升级版) 一.数据包格式形如下图 二.代码 int ReceiveFromRemoteEndPoint() { int nPackageDataLength = ; ch ...

  4. 【九度OJ】题目1475:IP数据包解析 解题报告

    [九度OJ]题目1475:IP数据包解析 解题报告 标签(空格分隔): 九度OJ http://ac.jobdu.com/problem.php?pid=1475 题目描述: 我们都学习过计算机网络, ...

  5. Wireshark wireshake数据包分割及捕包过滤器介绍

    wireshake数据包分割及捕包过滤器介绍 by:授客 QQ:1033553122 wireshake自带工具editcap分割数据包 操作: 进入到目录,然后 editcap.exe -c < ...

  6. http数据包解析碰到gzip压缩格式的解压

    其中在做http数据包临控时碰到gzip压缩格式,在网友发布的一些技术文章基础上,经过一段时间的研究.调试,终于解析成功.现将核心代码公布于此,希望能够和大家一起共同学习交流.注:以下代码需要依赖zl ...

  7. C++版的网络数据包解析策略(升级版)

    初版:http://www.cnblogs.com/wjshan0808/p/6580638.html 说明:在实现了对应的接口后该策略可以适合绝大多数的网络数据包结构 首先,是三个接口 IProdu ...

  8. 九度oj 题目1475:IP数据包解析

    题目描述: 我们都学习过计算机网络,知道网络层IP协议数据包的头部格式如下: 其中IHL表示IP头的长度,单位是4字节:总长表示整个数据包的长度,单位是1字节. 传输层的TCP协议数据段的头部格式如下 ...

  9. GPS通讯 数据包解析

    全球时区的划分: 每个时区跨15°经度.以0°经线为界向东向西各划出7.5°经度,作为0时区.即0时区的经度范围是7.5°W——7.5°E.从7.5°E与7.5°W分别向东.向西每15°经度划分为一个 ...

随机推荐

  1. Haproxy之负载均衡功能、基于cookie的session持久、haproxy自带的健康页面及其动静分离的实现

    实验前提: 1.本次实验是在Centos 7.4(64bit)系统上完成的.2.实验前确保每台服务器时间同步3.本次实验有3台主机,其中haproxy作为反向代理地址为192.168.31.43,后面 ...

  2. linux 查看命令

    linux查找命令 ls查看文件信息 ​ 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录.文件夹.文件权限)查看目录信息等等 ​ 常用参数搭 ...

  3. python 实现批量md转word

    # qianxiao996精心制作 #博客地址:https://blog.csdn.net/qq_36374896 #md批量转word import os def auto_md_to_docx(f ...

  4. .Net core Api后台获取数据,异步方法中,数据需采用Linq分页

    .net core api using System.Collections.Generic; using System.Linq; using System.Text.RegularExpressi ...

  5. python的内存回收机制

          变量相当于门牌号,当门牌没有了,即函数的引用都没有调用了,内存的数据就会被清除掉. python内有个定时器,定期的会刷新,如果发现内存中数据被引用了,就会被回收,这个就是内存的回收机制 ...

  6. 07模块化设计之top_down

    一设计功能:(一)用两个分频模块,实现16分频,且让输入a 和b在16个系统时钟内,相与一次. (二)模块化设计思想(结构化思维) 拆分,即把一个系统划分成多个功能模块,控制模块,组合模块.然后从功能 ...

  7. BLHeli/ BLHeli_S开源无刷电调学习记录

    BLHeli的历史轨迹:BLHeli -> BLHeli_S -> BLHeli_32,我们重点学习BLHeli_S版本. 该代码支持常规的1-2ms脉冲宽度输入,以及Oneshot125 ...

  8. 为什么JVM要用到压缩指针?Java对象要求8字节的整数倍?

    前言 前两天在一个帖子中看到一道面试题: 堆内存超过32G时,为什么压缩指针失效? 之前没有了解过这方面的知识,于是开始google起来,但当我翻看了不下一页的帖子,我都仍然没有搞懂,因为好多答案给我 ...

  9. KestrelServer详解[3]: 自定义一个迷你版的KestrelServer

    和所有的服务器一样,KestrelServer最终需要解决的是网络传输的问题.在<网络连接的创建>,我们介绍了KestrelServer如何利用连接接听器的建立网络连接,并再次基础上演示了 ...

  10. Oracle入门基础(十三)一一java调用oracle存储过程

    package demo; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultS ...