Wireshark捕获过滤器
概述
在Wireshark中包含了两种不同的过滤器:
- 捕获过滤器
- 显示过滤器
其中,两种过滤器是功能和使用场景各不一致。下面来依次进行对比。
过滤器类别 | 目的 | 功能强大性 |
---|---|---|
捕获过滤器 | 减少抓取报文体积 | 使用BPF语法,功能相对有限 |
显示过滤器 | 对已抓取的报文过滤显示 | 功能强大 |
BPF过滤器
BPF过滤器全称是Berkeley Packet Filter。常用于在设备驱动级别提供抓包过滤结果,大部分抓包工具都支持此语法。
BPF过滤器支持expression表达式,在表达式中可以由多个原语组成。
下面,我们来依次讲解 原语,原语运算符 等含义。
原语:是由名称或数字以及描述它的多个限定词组成的,例如:Type、Dir、Proto等限定词。
原语运算符:原语运算符包含与(&&/and)、或(||/or)、非(!/not)组成。
一个简单的BPF过滤器表达式如下:
src or dst portrange 6000-8000 && tcp or ip6
限定词
下面,我们来依次讲解几类常用的限定词。
Type:设置数字或者名称所指示类型
- host:指定IP
- net:指定端口
- port:指定子网,例如net 192.168.0.0 mask 255.255.255.0 或者 net 192.168.0.0/24
- portrange:指定端口范围,例如portrange 6000-8000
设置网络出入方向
- src、dst、src or dst、src and dst
- ra、ta、addr1、addr2、addr3、addr4
Proto指定协议类型
例如:ether、fddi、tr、wlan、ip、ip6、arp、rarp、decnet、
tcp、udp、icmp、igmp、igrp、pim、ah、esp、vrrp。
其他
- gateway:指定网关IP地址
- broadcast:广播报文
- multicast:多播报文
- less, greater:小于或者大于