wireshark显示过滤器是用来将已经捕获的数据包进行过滤,只显示符合过滤条件的数据包。显示过滤器通常比捕获过滤器更加的常用,通常在抓包的过程中不加限定条件,任何包都抓取,然后通过显示过滤器来分析特定的数据包。
显示过滤器有两种方法,分别是:
- 对话框方式
- 文字表达式方式
对话框方式显示器
该方法非常的简答,只需要动动鼠标就可以选择自己需要的过滤规则。依次点击分析——>Display Filter Expression
左边的框是所有可用的协议域。选择一个过滤协议域,然后选择关系,最后填上值,一个显示过滤就完成了。
文字表达式的显示过滤器
对话框方式适合新手,但玩过一段时间wireshark后,熟悉它的显示过滤器规则后,就可使用文字表达式方式来操作。下面演示一些常见的显示过滤器:
协议限定
用来限定常用的协议,如http、ssh、tcp等。
只显示http协议
http
显示http或ssh协议数据包
http or ssh
限定IP地址及端口
IP地址和端口是用的最多的过滤条件了,但和捕获过滤器不同的是,显示过滤器是用ip.addr == ip地址来限定。
限定IP
ip.addr == 192.168.110.145
限定数据包的大小
frame.len > 128
常见的比较操作符有:
- 大于 >
- 小于 <
- 大于等于 >=
- 小于等于 <=
- 等于 ==
- 非等于 !=
逻辑表达式的作用
frame.len > 128 and ip.addr == 192.168.110.145
常见的逻辑运算符有:
- 且,两个条件同时满足 and
- 或,两条条件满足一个 or
- 非,没有条件被满足 not
- 异或,其中一个条件满足另一个不满足 xor
限定端口号
需要注意的是,port前面要加上限定的协议,如tcp.port
tcp.port==80
常用的显示过滤器表达式
最后,再给出常用的显示过滤器表达式
!arp 排除arp数据包http 只显示http数据包!tcp.port==80 过滤http数据包tcp.port==21 or tcp.port==22 ftp或sshtcp.flags.syn==1 具有syn标志位的tcp数据包tcp.flags.rst==1 具有rst标志位的tcp数据包