本文章转自:http://blog.51cto.com/houm01/1872652

几种条件操作符

==   eq    等于    ip.addr == 192.168.0.1   ip.addr eq 192.168.0.1

!=    ne    不等于  !ip.addr==192.168.0.1 ip.addr!= 192.168.0.1  ip.addr ne 192.168.0.1

>     gt    大于     frame.len>64   frame.len gt 64

<     lt    小于    frame.len<1500  frame.len le 1500

>=    ge    不大于  frame.len >= 64

<=    le    不小于  frame.len <= 1500

is present  符合某项参数,满足某个条件,或者出现某个现象  http.response

contains  包含某个字符串    http.host contains cisco

match    某串字符匹配某个条件  http.host matches www.cicso.com

逻辑关系操作符

&&   and   逻辑与   ip.src==10.0.0.1 and tcp.flags.syn=1

||   or   逻辑或  ip.addr==10.0.0.1 or ip.addr==10.0.0.2

!   not  逻辑非  not arp and not icmp 除了arp和icmp之外的包

ip.addr != 192.168.0.1 这样的表达式语法正确但是并不起作用,原因是每个IP数据包必定包含两个IP地址,wireshark执行上边的过滤功能时,只要发现源和目的IP有一不为192.168.0.1,就会判定条件为真,正确的应该是  !(ip.addr eq 192.168.0.1)

L2显示过滤器

  • eth.addr eq mac-address    #显示指定mac地址的数据帧

  • eth.src eq    eth.dst eq   #显示指定源和目的mac地址的数据帧

  • eth.type eq protocol type (十六进制数,格式为0xnnnn) #只显示特定以太网类型的流量

  • arp.opcode eq value   #只显示特定类型的arp帧,arp按其所含代码字段值,可分为arp应答帧,响应帧,rarp应答,响应帧   1=arp请求  2=arp应答  3=rarp请求  4=rarp应答

  • arp.src.hw_mac eq mac address    #显示指定mac地址的主机发出的arp帧

常用的ip显示过滤器

  • ip.addr eq ______  ip.src eq  ip.dst eq

  • ip.ttl eq value    只显示ip包头中ttl字段值为指定值的数据包

  • ip.len = value    #只显示指定长度的IP数据包

示例:

ip.dst eq 224.0.0.0/4   #可以加掩码

复杂的过滤器

  • ip.src eq 10.0.0.0/24 and http.host contains "souhu"  #显示10.0.0.0/24的主机,发往域名中包含指定字符串的所有ip流量。

  • ip.addr eq 10.0.0.0/24 and http.host matches "\.com$"  #显示以.com结尾的ip流量

  • ip.src eq 10.0.0.0/24 and eth.dst eq ff:ff:ff:ff:ff:ff

TCP/UDP过滤

  • tcp.port eq 或 udp.port eq

  • tcp.src/dst port  udp同理

  • tcp.analysis 可用该参数来分析重传,重复确认,窗口大小有关的网络问题的参照物

  • tcp.analysis.retransmission   #显示重传的数据包

  • tcp.analysis.duplicate_ack    #显示确认多次的tcp数据包

  • tcp.analysis.zero_window  #显示零窗口通告信息的tcp数据包(tcp会话一端的主机通过此类tcp数据包,向对端主机报告:本机tcp窗口为0,请对方停止通过该会话发送数据

  • tcp.flags.syn eq 1

  • tcp.flags.reset eq 1

  • tcp.flags.fin eq 1

  • tcp.window_size_value  #只显示tcp头部中窗口大小字段值低于指定值的数据包。可以排除与tcp窗口过小有关的性能问题,可以判定tcp参与tcp会话的网络设备反应过慢

  • tcp.dstport eq 80 #显示到http服务器的流量

  • ip.src eq 10.0.0.0/24 and tcp.srcport eq 80 #显示一个段的到http的流量

  • tcp.stream eq 16 && tcp.analysis.retransmission  #显示特定TCP连接(在抓包文件中编号16的连接)发生重传的所有tcp数据包。

追踪流功能可以显示某条tcp连接从建立到终止。

当分析重传,重复确认及其他影响网络性能的现象原因时,可以用tcp.analysis过滤参数及 follow tcp stream 把上述现象与具体的tcp连接建立起来。

  • ip.src eq 10.0.0.5 && udp.port eq 53  #只显示ip地址的主机访问dns服务器的流量

  • tcp contains "windows"  #只显示包含搜索关键字“windows”的tcp数据包,区分大小写。

  • tcp.stream eq 0 &&(tcp.analysis.window_full ||/or tcp.analysis.zero_window) #显示某条特定tcp连接中出现窗口问题的tcp数据包

  • ip.src eq 10.0.0.3 && (http.cookie||http.set_cookie)  #显示指定主机发送的包含http cookie 的所有数据包

http过滤

  • http.host eq "hostname"   #显示访问指定主机的http协议数据包

  • http.request.method eq "get"  #显示http  get方法的数据包

  • http.request.uri eq "xxxx.com"  #显示指定uri请求的包

  • http.request.uri contains "mail.google.com"  #显示包含字符串 mail.google.comd uri请求数据包

  • http.cookie  #显示包含cookie请求的数据包,cookie总是从http客户端发往http服务器

  • http.set_cookie  #显示传播的所有包含由http服务器发送给http客户端的cookie set命令的http包

  • http matches "\.zip" && http.request.method eq "get"  #显示包含zip文件的http数据包

DNS

  • dns.flags.response eq 0  #DNS查询

  • dns.flags.response eq 1  #dns响应

  • dns.count.answers >= 4  #显示所有anser count字段值大于或等于4的dns响应数据包

wireshark显示过滤器的几种用法(转自他人博客)的更多相关文章

  1. 一站式学习Wireshark(十):应用Wireshark显示过滤器分析特定数据流(下)

    介绍 掌握显示过滤器对于网络分析者来说是一项必备的技能.这是一项大海捞针的技巧.学会构建,编辑,保存关键的显示过滤器能够节省数小时的时间. 与捕捉过滤器使用的BPF语法不同,显示过滤器使用的是Wire ...

  2. 一站式学习Wireshark(九):应用Wireshark显示过滤器分析特定数据流(上)

    介绍 掌握显示过滤器对于网络分析者来说是一项必备的技能.这是一项大海捞针的技巧.学会构建,编辑,保存关键的显示过滤器能够节省数小时的时间. 与捕捉过滤器使用的BPF语法不同,显示过滤器使用的是Wire ...

  3. 26种基于PHP的开源博客系统

    26种基于PHP的开源博客系统 来源:本站原创 PHP学习笔记 以下列举的PHP开源Blog系统中,除了我们熟知的WordPress之外,大多都没有使用过,其中一些已经被淘汰,或者有人还在使用.除了做 ...

  4. C# DataTable的詳細用法 - hcw_peter的专栏 - 博客频道 - CSDN

    C# DataTable的詳細用法 - hcw_peter的专栏 - 博客频道 - CSDN.NET 在项目中经常用到DataTable,如果DataTable使用得当,不仅能使程序简洁实用,而且能够 ...

  5. Golang拼接字符串的5种方法及其效率_Chrispink-CSDN博客_golang 字符串拼接效率 https://blog.csdn.net/m0_37422289/article/details/103362740

    Different ways to concatenate two strings in Golang - GeeksforGeeks https://www.geeksforgeeks.org/di ...

  6. 使用tensorflow.data.Dataset构造batch数据集(具体用法在下一篇博客介绍)

    import tensorflow as tf import numpy as np def _parse_function(x): num_list = np.arange(10) return n ...

  7. 一步步开发自己的博客 .NET版(1、基本显示)

    前言 我们每个猿都有一个搭建自己独立博客的梦,我也不例外.以前想 现在想 以后也想.之所以一直迟迟没有着手,是因为难以跨出第一步.每次心里想着,等我以后技术好了再说,然后就没有然后了.以前用过word ...

  8. wireshark捕获/显示过滤器表达式书写规律说明

    一.说明 1.1 背景说明 对于大多数刚开始接触wireshark的使用者而言,经常是开始的时候时候看到wireshark能把所有数据包都拦截下来觉得强无敌,但是面对一大堆的数据包要问有什么用或者说想 ...

  9. 捕捉过滤器(CaptureFilters)和显示过滤器(DisplayFilters)--Wireshark

    Wireshark的基本使用——过滤器 前言 网络上关于Wireshark的教程已有不少,博主就简单介绍一下Wireshark分析数据包时最重要的技巧之一的过滤器..一次性嗅探到的数据包有很多,想要高 ...

随机推荐

  1. 【Crash】C++程序崩溃排查方法

    windows下C++程序release版本崩溃错误排查方法. 一个你精心设计的24小时不间断运行,多线程的程序,突然运行了几个月后崩了,此问题是非常难以排查的,也是很头疼的问题. 现利用Google ...

  2. 容错机制和熔断(Hystrix)

    雪崩效应 在微服务架构中,由于服务众多,通常会涉及多个服务层级的调用,而一旦基础服务发生故障,很可能会导致级联故障,进而造成整个系统不可用,这种现象被称为服务雪崩效应.服务雪崩效应是一种因“服务提供者 ...

  3. Unity中Text中首行缩进两个字符和换行的代码

    1.首行缩进两个字符 txt.text=“\u3000\u3000” + str: 2.首行缩进两个字符 将输入法换成全角的,在Text属性面板中添加空格即可. 3.换行    “\n” 补充 Uni ...

  4. js中字符串转数字的方法

    1.当字符串中是纯数字 例如:var s = '234'; /********** 字符串在运算操作中会被当做数字类型来处理 ***************/ s *= 1; /******* str ...

  5. nginx+vue刷新404

    问题原因:刷新页面时访问的资源在服务端找不到,因为vue-router设置的路径不是真实存在的路径.如上的404现象,是因为在nginx配置的根目录/Data/app/xqsj_wx/dist下面压根 ...

  6. Python的网络编程--思维导图

    Python的网络编程--思维导图

  7. [整理]Kadane算法

    仅能操作一次时,需每次观察是否有为负情况置零.多次操作时,仅需判断是否后者大于前者. leetcode 53.121.122 [代码] class Solution { public int maxS ...

  8. mybatis学习(五)----实现关联表查询

    一.一对一的表查询 查询班级表中班级号为1的对应的记录(包括教师的具体信息) 1.首先建立数据表 数据表class和techear,class表中只有一个外键techear_id,sql脚本如下: C ...

  9. 【转】CEF3加载网页---多字节字符集和UNICODE字符集

    static char* MBSCToCEF(const char* mbcsStr) { wchar_t* wideStr; char* utf8Str; int charLen; charLen ...

  10. ios读取plist文件:

    @property (nonatomic,strong) NSArray *imageData;//定义一个数组 //懒加载数据 -(NSArray *)imageDate { if(_imageDa ...