Wireshark 的过滤器类型

Wireshark 是一个强大的网络协议分析工具,支持多种类型的过滤器来帮助用户捕获和分析网络流量。

根据使用场景和功能,Wireshark 的过滤器可以分为以下两类:

1. 捕获过滤器(Capture Filter)

  • 定义:在数据包捕获阶段应用的过滤器,用于限制 Wireshark 捕获哪些数据包。
  • 特点:
    • 使用 BPF(Berkeley Packet Filter)语法。
    • 在捕获过程中实时生效,减少不必要的数据包被保存到内存或磁盘中。
    • 性能更高,适合大规模流量环境。
  • 常见用法:
text 复制代码
host 192.168.1.1          # 捕获与 192.168.1.1 相关的所有流量
port 80                   # 捕获端口为 80 的流量
tcp and src 192.168.1.1   # 捕获来自 192.168.1.1 的 TCP 流量

2. 显示过滤器(Display Filter)

  • 定义:在数据包捕获完成后,用于筛选和显示特定数据包的过滤器。
  • 特点:
    • 使用 Wireshark 自定义语法,比捕获过滤器更灵活。
    • 在捕获完成后应用,不会影响实际捕获的数据。
    • 支持复杂的逻辑表达式和协议字段过滤。
  • 常见用法:
text 复制代码
ip.addr == 192.168.1.1       # 显示与 192.168.1.1 相关的所有流量
tcp.port == 80               # 显示端口为 80 的 TCP 流量
http.request.method == "GET" # 显示 HTTP GET 请求
dns.qry.name contains "google" # 显示包含 "google" 的 DNS 查询

过滤器语法对比

功能 捕获过滤器(BPF) 显示过滤器(Wireshark)
语法 BPF Wireshark 自定义语法
应用时间 数据包捕获阶段 数据包捕获完成后
性能 更高效 较低效
灵活性 较低 更高
示例 host 192.168.1.1 ip.addr == 192.168.1.1

常用过滤器示例

1. 捕获过滤器示例

  • 按 IP 地址过滤:
text 复制代码
host 192.168.1.1
  • 按端口过滤:
text 复制代码
port 80
  • 按协议过滤:
text 复制代码
tcp udp icmp
  • 组合条件:
text 复制代码
tcp and src 192.168.1.1

2. 显示过滤器示例

  • 按 IP 地址过滤:
text 复制代码
ip.addr == 192.168.1.1
  • 按端口过滤:
text 复制代码
tcp.port == 80
  • 按协议字段过滤:
text 复制代码
http.request.method == "GET" dns.qry.name contains "google"
  • 组合条件:
text 复制代码
ip.addr == 192.168.1.1 && tcp.port == 80

如何选择过滤器?

  • 如果需要减少捕获的数据量:使用捕获过滤器(Capture Filter)。
  • 如果需要灵活分析已捕获的数据:使用显示过滤器(Display Filter)。

通过合理使用这两种过滤器,可以显著提高网络分析的效率和准确性。

Link:https://www.cnblogs.com/farwish/p/18781827

相关推荐
百锦再14 小时前
WPF依赖属性深度解析:从原理到高级应用
wpf·依赖·绑定·验证·net·强制
尸僵打怪兽2 天前
C#项目准备
c#·vs2022·net
liulilittle11 天前
.NET ExpandoObject 技术原理解析
开发语言·网络·windows·c#·.net·net·动态编程
百锦再22 天前
服务器间接口安全问题的全面分析
运维·服务器·安全·api·jwt·token·net
教练、我想打篮球1 个月前
63 网络交互的过程中目标设备的选择
linux·net·eth0
IT成长日记1 个月前
【Docker基础】Docker核心概念:命名空间(Namespace)之NET详解
运维·docker·容器·namespace·net
百锦再1 个月前
.NET 类库开发详细指南c
java·log4j·.net·net·dot
我的golang之路果然有问题3 个月前
快速上手GO的net/http包,个人学习笔记
笔记·后端·学习·http·golang·go·net
草海桐3 个月前
go 的 net 包
网络·golang·net
耕耘虫3 个月前
解决 .Net 6.0 项目发布到IIS报错:HTTP Error 500.30
网络·网络协议·http·iis·net·静态文件·.net 6.0