wireshark显示过滤器的几种用法

几种条件操作符

==   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响应数据包
时间: 2024-10-15 02:04:38

wireshark显示过滤器的几种用法的相关文章

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

介绍 掌握显示过滤器对于网络分析者来说是一项必备的技能.这是一项大海捞针的技巧.学会构建,编辑,保存关键的显示过滤器能够节省数小时的时间. 与捕捉过滤器使用的BPF语法不同,显示过滤器使用的是Wireshark特定的格式.除了某些特例之外,Wireshark显示过滤器和捕捉过滤器有很大的区别. 更多信息 过滤HTTP数据流: 在排查网页浏览器会话或检查网速过慢问题时,对浏览器会话进行过滤就显得尤为重要.过滤HTTP数据流有两种方式: http tcp.port==xx(xx表示所使用的HTTP端

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

介绍 掌握显示过滤器对于网络分析者来说是一项必备的技能.这是一项大海捞针的技巧.学会构建,编辑,保存关键的显示过滤器能够节省数小时的时间. 与捕捉过滤器使用的BPF语法不同,显示过滤器使用的是Wireshark特定的格式.除了某些特例之外,Wireshark显示过滤器和捕捉过滤器有很大的区别. 更多信息 最简单的过滤器语法: 最简单的显示过滤器可基于协议,应用,域名,或字符,对大小写敏感.绝大多数简单的显示过滤器由小写字母组成. 协议过滤器: arp:显示所有包括ARP请求和回复在内的所有ARP

Wireshark网络分析实战笔记(二)显示过滤器

显示过滤器 显示过滤表达式中操作符: == eq 等于 != ne 不等于 > gt 高于 < lt 低于 >= ge 不高于 <= le 不低于   contains 包含某个字符   match 某串字符匹配某个条件 && and 逻辑与 || or 逻辑或 ! not 逻辑非 如何设置显示过滤器: 在显示过滤器工具条Filter输入框内直接输入显示过滤语句 如何将数据包的某个属性指定为过滤条件: 右键数据包的某个属性选择apply as filter(直接作为

JSP中的include的两种用法

1.两种用法 <@inlcude file ="header.jsp"/> 此时引入的是静态的jsp文件,它将引入的jsp中的源代码原封不动地附加到当前文件中,所以在jsp程序中使用这个指令的时候file里面的值(即要导入的文件)不能带多余的标签或是与当前jsp文件重复的东西.例如里面不要包含<html><body>这样的标签,因为是把源代码原封不动的附加过来,所以会与当前的jsp中的这样的标签重复导致出错. <jsp:include page

js中继承的几种用法总结(apply,call,prototype)

本篇文章主要介绍了js中继承的几种用法总结(apply,call,prototype) 需要的朋友可以过来参考下,希望对大家有所帮助 一,js中对象继承 js中有三种继承方式 1.js原型(prototype)实现继承 <SPAN style="<SPAN style="FONT-SIZE: 18px"><html>   <body>  <script type="text/javascript"> 

cocos2d 中加入显示文字的三种方式(CCLabelTTF 、CCLabelBMFont 和CCLabelAtlas)

在 cocos2d 中有三个类能够在层或精灵中加入文字: CCLabelTTF CCLabelBMFont CCLabelAtlas      CCLabelTTF CCLabelTTF 每次调用 setString (即改变文字)的时候,一个新的OPENGL 纹理将会被创建..这意味着setString 和创建一个新的标签一样慢. 所以,当你须要频繁的更新它们的时候,尽可能的不用去使用标签对象.  而应该使用CCLabelAtlas或者是CCLabelBMFont. OK, 看下它的用法 CC

wireshark 的使用(filter的用法)

转自:http://blog.csdn.net/hanyuxinting/article/details/5558095 过滤器语法------------------------------------------------------------- 最简单的过滤允许你检查一个协议或者字段的存在: 如果你想查看所有的使用IP协议的数据包,过滤器为“ip”(不带引号): 想看所有包含Token-ring RIF字段的数据包,使用“tr.rif”: 可以使用“exist”操作符来看一个协议或者字

Wix 安装部署教程(十五) --CustomAction的七种用法

在WIX中,CustomAction用来在安装过程中执行自定义行为.比如注册.修改文件.触发其他可执行文件等.这一节主要是介绍一下CustomAction的7种用法. 在此之前要了解InstallExecuteSequence,它是一个Action的执行序列. Installer会按照默认顺序来执行这些Action.通过字面意思也大概知道这些Action的目的.这些方法不是每次一都执行,分安装和卸载.如果CustomAction没有指定,很可能会安装卸载的时候都会执行一次. • AppSearc

DOS/BAT批处理if exist else 语句的几种用法

在DOS批处理命令中常常会通过if语句来进行判断来执行下面的命令, 那么批处理if语句怎么用呢,下面学无忧小编就来说说有关批处理if以及if exist else语句的相关内容.一.批处理if书写格式if 条件表达式 (语句1) else (语句2),它的含义是:如果条件表达式成立,那么,就执行语句1,否则,将执行语句2.二.四种批处理if的用法1.判断驱动器.文件或文件夹是否存在,用 if exist 语句例如:if exist c:\xue51com.txt (echo c盘下有xue51c