Wireshark显示过滤器常用关键字及过滤表达式

Wireshark显示过滤器常用关键字及过滤表达式

1. 过滤器类型

Wireshark抓包工具提供了两种类型过滤器:抓包过滤器 和 显示过滤器。

  • 抓包过滤器: 抓取满足过滤条件的数据包,不满足过滤条件的数据包不会被抓取。
  • 显示过滤器: 包已经被抓取到,显示只满足过滤条件的数据包,不满足过滤条件的数据包在后台。

①. 抓包过滤器

Wireshark 抓包工具在抓包过滤时,其过滤语法格式为 BPF 格式。

BPF (全称为Berkeley Packet Filter),翻译过来就是 "伯克利封包过滤器" (或者也称 "柏克莱封包过滤器" )。

抓包过滤器语法包含四个核心元素:类型、方向、协议 和 逻辑运算符。

  • 类型Type: 主机(host)、网段(net)、端口(port);
  • 方向Dir: 源地址(src)、目标地址(dst);
  • 协议Protocol: 各种网络协议,比如:tcpudphttp
  • 逻辑运算符: 与( && )、或( || )、非( !) ;

四个元素可以自由组合。

②. 显示过滤器

显示过滤器在抓包后或者抓包过程中使用。

显示过滤器的语法包含五个核心元素:IP、端口、协议、比较运算符和逻辑运算符。

  • IP地址: ip.addrip.srcip.dst
  • 端口: tcp.porttcp.srcporttcp.dstportudp.port
  • 协议: arpipicmptcpudphttpntpftpftp-datasnmpdnshdcpmodbusmysql;
  • 比较运算符: >< == >=<=!= ;
  • 逻辑运算符: andornotxor&&|| 等;

五个元素可以自由组合。

显示过滤器还可以使用 "frame[]""data[]" 定位帧指定位置内容。

  • frame[]: 全域中定位数据(匹配数据);
  • data[]: 数据域中定位数据(匹配数据);

2. 常用显示过滤器关键字及其表达式

[1]. IP地址过滤

目标地址过滤

shell 复制代码
ip.dst == 10.46.21.11

源地址过滤

shell 复制代码
ip.src == 10.56.1.31

[2]. 端口过滤

UDP端口过滤

shell 复制代码
udp.port == 50001

UDP 目标端口过滤

shell 复制代码
udp.dstport == 4000

UDP 源端口过滤

shell 复制代码
udp.srcport == 50001

TCP端口过滤

shell 复制代码
tcp.port == 2048

TCP 目标端口过滤

shell 复制代码
tcp.dstport == 512

TCP 源端口过滤

shell 复制代码
tcp.srcport == 501

[3]. 常用协议过滤

ICMP协议过滤

shell 复制代码
icmp

UDP协议过滤

shell 复制代码
udp

TCP 协议过滤

shell 复制代码
tcp

MYSQL协议过滤

shell 复制代码
mysql

HTTP 协议过滤

shell 复制代码
http 

[4]. Modbus协议过滤

Modbus协议过滤

shell 复制代码
modbus.func_code==0x03

[5]. MySQL协议过滤

MySQL协议过滤

shell 复制代码
mysql

[6]. IEC60870-104协议过滤

IEC60870-104协议过滤

shell 复制代码
104apci     应用规约控制信息帧

104asdu     应用服务数据单元帧

[7]. 多条件组合过滤

多个条件组合过滤

比如,过滤应用层协议类型为TCP,目标端口为512,源地址为192.168.58.151 的数据帧,过滤表达式如下:

shell 复制代码
tcp and tcp.dstport==512 and ip.src==192.168.58.151

[8]. frame[] 全域过滤

A. 单个字节匹配过滤

单个字节数据域匹配过滤

shell 复制代码
frame[2] == 5e
B. 多个连续字节匹配过滤

多个连续字节数据域匹配过滤(比如 frame[0:6]: 表示从第0个索引位置开始,匹配连续6个字节 )

shell 复制代码
frame[0:6] == ff:ff:ff:ff:ff:ff
C. 多个不连续字节匹配过滤

多个不连续字节数据域匹配过滤(比如 frame[0,7,8,11]: 表示匹配索引位置 0,7,8、11 共四个数据内容)

shell 复制代码
frame[0,7,8,11] == ff:50:56:08

[9]. data[] 数据域过滤

A. 单个字节匹配过滤

单个字节数据域匹配过滤

shell 复制代码
data[0] == 90
B. 多个连续字节匹配过滤

多个连续字节数据域匹配过滤(比如 data[0:4]: 表示从第0个索引位置开始,匹配连续四个字节 )

shell 复制代码
data[0:4] == 90:eb:03:03
C. 多个不连续字节匹配过滤

多个不连续字节数据域匹配过滤(比如 data[0,1,6]: 表示匹配索引位置 0,1,6 共三个数据内容)

shell 复制代码
data[0,1,6] == 90:eb:a7
相关推荐
代码的乐趣11 分钟前
支持selenium的chrome driver更新到137.0.7151.68
chrome·selenium·测试工具
狐571 小时前
2025-06-02-IP 地址规划及案例分析
网络·网络协议·tcp/ip
黎茗Dawn1 小时前
5.子网划分及分片相关计算
网络·智能路由器
恰薯条的屑海鸥2 小时前
零基础在实践中学习网络安全-皮卡丘靶场(第十四期-XXE模块)
网络·学习·安全·web安全·渗透测试
科技小E2 小时前
口罩佩戴检测算法AI智能分析网关V4工厂/工业等多场景守护公共卫生安全
网络·人工智能
御承扬2 小时前
从零开始开发纯血鸿蒙应用之网络检测
网络·华为·harmonyos
DevSecOps选型指南10 小时前
2025软件供应链安全最佳实践︱证券DevSecOps下供应链与开源治理实践
网络·安全·web安全·开源·代码审计·软件供应链安全
国科安芯11 小时前
抗辐照MCU在卫星载荷电机控制器中的实践探索
网络·嵌入式硬件·硬件工程·智能硬件·空间计算
EasyDSS13 小时前
国标GB28181设备管理软件EasyGBS远程视频监控方案助力高效安全运营
网络·人工智能
玩转4G物联网13 小时前
零基础玩转物联网-串口转以太网模块如何快速实现与TCP服务器通信
服务器·网络·物联网·网络协议·tcp/ip·http·fs100p