Wireshark过滤

        wireshark有两种过滤方式:捕获过滤器、显示过滤器。

1.捕获过滤器

        在抓包之前就设定好过滤条件,只抓取符合条件的数据包。

Wireshark过滤_第1张图片

 关于捕获过滤器的一些常用语法,可以在工具栏中,依次点击“捕获”-->“捕获过滤器”中查看。

Wireshark过滤_第2张图片

比较符号
&& 或 and
|| 或 or

! 或 not
常用过滤表达式
源地址过滤 src www.baidu.com
目的地址过滤 dst www.baidu.com
目的地址端口过滤 dst port 80
协议过滤 udp

2.显示过滤器

        在已捕获的数据包集合中设置过滤条件,隐藏不想显示的数据包,只显示符合条件的数据包。

① 过滤值比较符号及表达式之间的组合

英文 符号 描述及示例
eq == 等于 ip.src == 192.168.1.30
ne != 不等于 ip.src != 192.168.1.30
gt > 大于 frame.len > 10
lt < 小于 frame.len < 128
ge >= 大于等于 frame.len ge 10
le <= 小于等于 frame.len <= 128
contains 包含 sip.To contains "xxx"
matches ~ 正则匹配 host matches "acme\.(org|com|net)"

bitwise_and

&

位与操作 tcp.flags & 0x01

and && AND逻辑与 ip.src == 192.168.1.30 and tcp.flags.fin
or || OR逻辑或 ip.src == 192.168.1.30 or ip.src == 192.168.2.30
xor ^^ XOR逻辑异或 tr.dst[0:3] == 0.6.29 xor tr.src[0:3] == 0.6.29
not ! NOT逻辑非 not llc

② 针对IP进行过滤

case 1 筛选出源 IP 地址是 192.168.2.30 的数据包

过滤命令:

ip.src_host == 192.168.2.30 

case 2 筛选出目的地址是192.168.1.88的数据包

过滤命令:

ip.dst_host == 192.168.1.88 

case 3 筛选出源 IP 或者目的 IP 地址是 192.168.1.30 的全部数据包

ip.addr == 192.168.1.30

case 4 排除 case 3 的数据包,需要加 “!”

过滤命令:

!(ip.addr == 192.168.1.30)

case 5 筛选出源 IP 地址是 192.168.1.30 且目的 IP 地址是 192.168.2.30 的数据包

过滤命令:

ip.src_host == 192.168.1.30 && ip.dst_host == 192.168.2.30

case 6 筛选出源 IP 地址是 192.168.1.30 或者源 IP 地址是 192.168.2.30 的数据包

过滤命令:

ip.src_host == 192.168.1.30 && ip.src_host == 192.168.2.30

③ 针对端口进行过滤

case 1 筛选源端口和目的端口为80的数据包(以TCP协议为例)

过滤命令:

tcp.port == 80                  

case 2 根据 TCP 目的端口筛选数据包

过滤命令:

tcp.dstport == 80        

case 3 根据 UDP 源端口筛选数据包

过滤命令:

udp.srcport == 80    

case 4 筛选不低于某端口的数据包(以UDP协议为例)

过滤命令:

udp.port >= 80

 ④ 针对协议进行过滤

获取某种协议数据包,仅需要把协议名字以小写的形式输入即可。常用的协议有 http、udp、tcp、dns、ip、ssl、ftp、arp、icmp、smtp、pop、telnet、ssh、rdp、sip ...

case 1 仅筛选http协议

过滤命令:http              

case 2 筛选多种协议数据包

过滤命令:http or telnet 

拓展:根据 http 请求的一些数据包筛选

case 1 精确筛选域名

过滤命令:

http.host==baidu. com

case 2 模糊筛选域名

过滤命令:

http.host contains 'www.baidu.com'

case 3 筛选请求地址中包含"alarm” 的请求

过滤命令:

http.request.uri contains 'Alarm' (contains 后的关键字区分大小写)

http. request. uri matches 'alarm'  (matches 后的关键字不区分大小写)

case 4 筛选请求的content type类型

过滤命令:

http.content_type ==' text/html'

case 5 筛选http请求方法

过滤命令:

http.request.method==’ POST’

case 6 筛选http响应状态码

过滤命令:

http.response.code==302

 ⑤ 针对长度进行筛选

过滤命令:

udp.length<30

你可能感兴趣的:(运维,wireshark,信息与通信,tcpdump)