在Wireshark中使用过滤器——显示过滤器
在Wireshark运行过程中选择搜索(Ctrl-F),第一个默认的搜索选项就是显示过滤器。
显示过滤器用于捕获文件,用来告诉Wireshark只显示那些符合过滤条件的数据包。
显示过滤器比捕获过滤器更加常用,是因为它可以让你对数据包进行过滤,却并不省略掉捕获文件中的其他数据。也就是说如果你想回到原先的捕获文件,你仅仅需要清空显示过滤表达式。
你可能需要使用显示过滤器,来清理过滤文件中不相关的广播流量,比如清理掉Packet List面板中与当前的分析问题无关的ARP广播,但是那些ARP广播之后可能会有用,所以最好暂时把他们过滤掉,而不是删除他们。
如果想要过滤掉不惑窗口中所有的ARP数据包,将你的鼠标放到Packet List面板上方的Filter文本框中,然后输入“!ARP”,就可以从Packet List面板中去掉所有的ARP数据包了,如下图。
过滤器表达式语法结构
你会经常用到捕获或者显示过滤器来对某一个协议进行过滤。举例来说,如果你在解决一个TCP问题,那么你就只希望看到捕获文件中的TCP流量。一个简单的tcp过滤器就可以解决这个问题。
加入为了解决你的TCP问题,你使用了恨过ping功能,所以也就产生了很多ICMP流量,你可以通过“!icmp”这个过滤器表达式,将你捕获文件中的ICMP流量屏蔽掉。
比较操作符可以让你进行值的比较。举例来说,当你检查一个TCP/IP网络中的问题时,你可能经常需要检查和某一个IP地址相关的数据包。等于操作符可以让你创建一个只显示192.168.0.1这个IP地址相关数据包的过滤器。
ip.addr==192.168.0.1
现在假设你只需要查看哪些长度小于128字节的数据包,你可以使用“小于或等于”操作符,来完成这个要求,其过滤器表达式如下。
frame.len<=128
Wireshark过滤器表达式的比较操作符
操作符 | 说明 |
---|---|
== | 等于 |
!= | 不等于 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
逻辑运算符可以让你将多个过滤器表达式合并到一个语句中,从而极大提高过滤器的效率。举例来说,如果我们只想显示两个IP地址上的数据包,我们可以使用or操作符来创建一个表达式,只显示这两个IP地址的数据包,如下所示。
ip.addr==192.168.0.1 or ip.addr==192.168.0.2
Wireshark的逻辑操作符
操作符 | 说明 |
---|---|
and | 两个条件需同时满足 |
or | 其中一个条件被满足 |
xor | 有且仅有一个条件被满足 |
not | 没有条件被满足 |
显示过滤器表达式实例
常用显示过滤器
过滤器 | 说明 |
---|---|
!tcp.port==3389 | 排除RDP流量 |
tcp.flag.syn==1 | 具有SYN标志位的TCP数据包 |
tcp.flag.rst==1 | 具有RST标志位的TCP数据包 |
!arp | 排除ARP流量 |
http | 所有HTTP流量 |
tcp.port23 || tcp.port21 | 文本管理流量(Telnet或FTP) |
smtp || pop || imap | 文本email流量(SMTP、POP或IMAP) |
在Wireshark中使用过滤器——显示过滤器的更多相关文章
- wireshark中的抓包过滤器和显示过滤器
一 抓包过滤器 语法说明:BPF语法(Berkeley Packet Filter) 类型Tpye:host,net,port 方向Dir:src,dst 协议Proto:ether,ip,tcp, ...
- Wireshark网络抓包(二)——过滤器
一.捕获过滤器 选中捕获选项后,就会弹出下面这个框,在红色输入框中就可以编写过滤规则. 1)捕获单个IP地址 2)捕获IP地址范围 3)捕获广播或多播地址 4)捕获MAC地址 5)捕获所有端口号 6) ...
- wireshark捕获/显示过滤器表达式书写规律说明
一.说明 1.1 背景说明 对于大多数刚开始接触wireshark的使用者而言,经常是开始的时候时候看到wireshark能把所有数据包都拦截下来觉得强无敌,但是面对一大堆的数据包要问有什么用或者说想 ...
- wireshark显示过滤器的几种用法(转自他人博客)
本文章转自:http://blog.51cto.com/houm01/1872652 几种条件操作符 == eq 等于 ip.addr == 192.168.0.1 ip.addr ...
- 一站式学习Wireshark(十):应用Wireshark显示过滤器分析特定数据流(下)
介绍 掌握显示过滤器对于网络分析者来说是一项必备的技能.这是一项大海捞针的技巧.学会构建,编辑,保存关键的显示过滤器能够节省数小时的时间. 与捕捉过滤器使用的BPF语法不同,显示过滤器使用的是Wire ...
- 一站式学习Wireshark(九):应用Wireshark显示过滤器分析特定数据流(上)
介绍 掌握显示过滤器对于网络分析者来说是一项必备的技能.这是一项大海捞针的技巧.学会构建,编辑,保存关键的显示过滤器能够节省数小时的时间. 与捕捉过滤器使用的BPF语法不同,显示过滤器使用的是Wire ...
- 捕捉过滤器(CaptureFilters)和显示过滤器(DisplayFilters)--Wireshark
Wireshark的基本使用——过滤器 前言 网络上关于Wireshark的教程已有不少,博主就简单介绍一下Wireshark分析数据包时最重要的技巧之一的过滤器..一次性嗅探到的数据包有很多,想要高 ...
- Wireshark中的一些SNMP相关的过滤器
Wireshark中的一些SNMP相关的过滤器 转自 http://linmingren2003.blog.163.com/blog/static/567510032011419825097/ 由 ...
- 在Wireshrak中使用过滤器——捕获过滤器
过滤器可以让你找出你所希望进行分析的数据包.简单来说,一个过滤器就是定义了一定条件,用来包含或者排除数据包的表达式.如果你不希望看到一些数据包,你可以写一恶搞过滤器来屏蔽它们.如果你希望只看到某些数据 ...
随机推荐
- 自己动手写Vector【Cherno C++教程】
动手写一个Vector 本文是对<最好的C++教程>的动手写数据结构部分的一个整理,主要包含91p动手写Array数组和92p动手写Vector数组的内容. 自己动手来写这些数据结构是学习 ...
- [C++]C风格、C++风格和C++11特性的线程池
线程池概念 假设完成一项任务需要的时间=创建线程时间T1+线程执行任务时间T2+销毁线程时间T3,如果T1+T3的时间远大于T2,通常就可以考虑采取线程池来提高服务器的性能 thread pool就是 ...
- 逆置单链表(基于c语言)
直接插入全部代码:(reverseLinklist函数是逆置操作) #include <stdio.h> #include <stdlib.h> #include <as ...
- Java 代码注意细节
代码优化的目标是: 1.减小代码的体积 2.提高代码运行的效率 代码优化细节 1.尽量指定类.方法的final修饰符 带有final修饰符的类是不可派生的.在Java核心API中,有许多应用final ...
- 74CMS 3.0 SQL注入漏洞后台
代码审计工具:seay CMS:74CMS3.0 一. 启动环境 1.双击运行桌面phpstudy.exe软件 2.点击启动按钮,启动服务器环境 二.代码审计 1.双击启动桌面Seay源代码审计系统软 ...
- knife4j只用此插件的最简洁开发方式
一.POM添加 在pom文件里添加包 1 <!--引入knife4j以来--> 2 <dependency> 3 <groupId>com.github.xiaoy ...
- Java并发编程虚假唤醒问题(生产者和消费者关系)
何为虚假唤醒: 当一个条件满足时,很多线程都被唤醒了,但是只有其中部分是有用的唤醒,其它的唤醒都是无用功:比如买货:如果商品本来没有货物,突然进了一件商品,这是所有的线程都被唤醒了,但是只能一个人买, ...
- CF1504X Codeforces Round #712
CF1504D Flip the Cards(找规律+贪心) 题目大意:给你n张牌,正反面都有数字,保证所有牌上的数字在$[1,2n]$内且互不相同.你可以翻转任意张牌,接下来需要把牌按正面的数字从小 ...
- var、let和const区别
var.let和const区别 变量提升问题 var声明的变量存在变量提升,而let与const声明的变量不存在变量提升,但存在暂时性死区 即在预编译阶段,js引擎扫描代码时,遇到变量声明,会把var ...
- 学习廖雪峰的git教程6--版本控制
1git log 查看提交的版本 2git reset --hard HEAD^回退到上一个版本 3git reset --hard 版本号 回到某一个版本