Wireshark常用过滤器表达式汇总

简介: 【7月更文挑战第6天】Wireshark 抓包和显示过滤器用于精确定位网络流量。

1、抓包过滤器语法和实例

抓包过滤器类型Type(host、net、port)、方向Dir(src、dst)、协议Proto(ether、ip、tcp、udp、http、icmp、ftp等)、逻辑运算符(&&与、|| 或、!非)

1.  协议过滤

比较简单,直接在抓包过滤框中直接输入协议名即可。

只显示TCP协议的数据包列表

tcp

只查看HTTP协议的数据包列表

http

只显示ICMP协议的数据包列表

icmp
2.  IP过滤

过滤主机为192.168.1.104的数据包

host 192.168.1.104

过滤源主机为192.168.1.104的数据包

src host 192.168.1.104

过滤目的主机为192.168.1.104的数据包

dst host 192.168.1.104
3.  端口过滤

过滤端口为80的数据包

port 80

过滤源端口为80的数据包

src port 80

过滤目的端口为80的数据包

dst port 80
4.  逻辑运算符&&与、|| 或、!非

抓取主机地址为192.168.1.80、目的端口为80的数据包

src host 192.168.1.104 && dst port 80

抓取主机为192.168.1.104或者192.168.1.102的数据包

host 192.168.1.104 || host 192.168.1.102

不抓取广播数据包

!broadcast

2、 显示过滤器语法和实例

1.  比较操作符

比较操作符有

== 等于、!= 不等于、> 大于、< 小于、>= 大于等于、<=小于等于

2.  协议过滤

比较简单,直接在Filter框中直接输入协议名即可。注意:协议名称需要输入小写。

只显示TCP协议的数据包列表

tcp

只查看HTTP协议的数据包列表

http

只显示ICMP协议的数据包列表

icmp

3.  ip过滤

显示源地址为112.53.42.42的数据包列表

ip.src ==112.53.42.42

显示目标地址为112.53.42.42的数据包列表

ip.dst==112.53.42.42

显示源IP地址或目标IP地址为112.53.42.42的数据包列表

ip.addr == 112.53.42.42

4.  端口过滤

显示源主机或者目的主机端口为80的数据包列表

tcp.port ==80

只显示TCP协议的源主机端口为80的数据包列表

tcp.srcport == 80

只显示TCP协议的目的主机端口为80的数据包列表

tcp.dstport == 80

5.  http模式过滤

 只显示HTTP GET方法的

http.request.method=="GET"

6.  逻辑运算符为 and/or/not

过滤多个条件组合时,使用and/or。

比如获取IP地址为192.168.0.104的ICMP数据包表达式为

ip.addr == 192.168.0.104 and icmp

7.  按照数据包内容过滤

假设我要以ICMP层中的内容进行过滤,可以单击选中界面中的码流,在下方进行选中数据。

右键单击选中后出现如下界面

选中后在过滤器中显示如下

后面条件表达式就需要自己填写。如下我想过滤出data数据包中包含"abcd"内容的数据流。关键词是contains,完整条件表达式为

data contains "abcd"

3、常见用显示过滤需求及其对应表达式

1.  数据链路层

筛选mac地址为04:f9:38:ad:13:26的数据包

eth.src == 04:f9:38:ad:13:26

筛选源mac地址为04:f9:38:ad:13:26的数据包-

eth.src == 04:f9:38:ad:13:26
2.  网络层

筛选ip地址为192.168.1.1的数据包

ip.addr == 192.168.1.1

筛选192.168.1.0网段的数据

ip contains "192.168.1"
3.  传输层

筛选端口为80的数据包

tcp.port == 80

筛选12345端口和80端口之间的数据包

tcp.port == 12345 && tcp.port == 80

筛选从12345端口到80端口的数据包

tcp.srcport == 12345 && tcp.dstport == 80
4.  应用层

特别说明: http中http.request表示请求头中的第一行(如GET index.jsp HTTP/1.1) http.response表示响应头中的第一行(如HTTP/1.1 200 OK),其他头部都用http.header_name形式。

筛选url中包含.php的http数据包

http.request.uri contains ".php"

筛选内容包含username的http数据包

http contains "username"
相关文章
|
网络协议
Wireshark 捕获和显示过滤器
Wireshark 捕获和显示过滤器
169 0
|
5月前
|
网络协议
wireshark 显示过滤表达式
wireshark 显示过滤表达式
47 9
|
4月前
|
网络协议 安全 网络安全
WireShark 中的数据包捕获和过滤器详解
【8月更文挑战第20天】
350 0
|
6月前
|
网络协议
wireshark过滤条件
wireshark过滤条件
134 0
|
6月前
分享JavaWeb中filter过滤器的案例妙用 - 脏话过滤/编码过滤/代码过滤
分享JavaWeb中filter过滤器的案例妙用 - 脏话过滤/编码过滤/代码过滤
42 0
charles 过滤器-简单过滤和设置过滤
charles 过滤器-简单过滤和设置过滤
|
算法
一套过滤器,让你的代码高处不胜寒!
过滤器模式,顾名思义,从名字上就可以看出主要用于过滤对象,实现起来也很简单! 从设计的角度看,过滤器模式涉及到三个角色: 抽象过滤器角色:主要定义过滤器的行为; 具体滤器角色:实现或者继承抽象过滤器,完善具体算法; 客户端:客户类提出使用具体类的请求; 话不多说,代码直接撸起来~
wireshark过滤规则
wireshark是一款抓包软件,常用来分析网络底层协议,寻找网络安全问题,平时用的最多的是过滤功能,wireshark的过滤分功能有两种,抓包过滤器和显示过滤器
194 0