一篇带给你Wireshark之捕获过滤器

开发 前端
在之前文章《我是如何使用wireshark软件的》中介绍了wireshark的使用,提到了显示过滤器和捕获过滤器,重点介绍了显示过滤器,本文将主要介绍一下捕获过滤器。

[[382323]]

在之前文章《我是如何使用wireshark软件的》中介绍了wireshark的使用,提到了显示过滤器和捕获过滤器,重点介绍了显示过滤器,本文将主要介绍一下捕获过滤器。

这里再次说明一下两者区别,需要看显示过滤器的同学,请看文章《我是如何使用wireshark软件的》。

  1. 捕获过滤器:当进行数据包捕获时,只有那些满足给定的包含/排除表达式的数据包会被捕获。
  2. 显示过滤器:该过滤器根据指定的表达式用于在一个已捕获的数据包集合中,隐藏不想显示的数据包,或者只显示那些需要的数据包。

01简介

首先了解下,为什么需要捕获过滤器。举个例子,在一台服务器(TCPsever,端口5005)上,一个客户端(其他家公司设备)运行几天,就会突然掉线。这时候,说不清是服务器把客户端踢下线,还是客户端主动离线。

当然,这个时候在服务器添加日志记录即可,就可以找“真凶”。如果是对方设备主动离线,对方又不配合时,对方“不相信你的日志”。这个时候,使用wireshark抓包,找出对方设备(TCPClient)先发出的FIN断开连接的证据,然后“甩”他脸上即可。

其实上述场景,我在《我是如何使用wireshark软件的》文中也提到过解决方案,使用显示过滤加定时保存的策略,不过这样在几天的抓包中,会导致抓包文件很大。而捕获过滤则可以解决这个问题。

捕获过滤使用方法

1.选择捕获->捕获过滤器,然后编辑一个新的捕获过滤器选项:名称为“port5005”(名字根据自己的需求即可),过滤器为“port5005”。


2.在开始界面选择网卡,然后点击②处,选择上一步新建的输入捕获条件即可。

3.开始捕获

选择完输入捕获条件,如下图,直接双击网卡,就开始捕获了。


02BPF语法

捕获过滤器应用于WinPcap,并使用BerkeleyPacketFilter(BPF)语法。这个语法被广泛用于多种数据包嗅探软件,主要因为大部分数据包嗅探软件都依赖于使用BPF的libpcap/WinPcap库。掌握BPF语法对你在数据包层级更深入地探索网络来说,非常关键。

使用BPF语法创建的过滤器被称为表达式,并且表达式包含一个或多个原语。每个原语包含一个或多个限定词,然后跟着一个ID名字或者数字,如:

BPF语法也是支持下列逻辑运算符的,从而创造更高级的表达式。

  1. 连接运算符 与 (&&)
  2. 选择运算符 或 (||)
  3. 否定运算符 非 (!)

举例说明:

  1. src 192.168.0.10 && port 5005 

上述表达式只对源地址是192.168.0.10和源端口或目标端口是5005的流量进行捕获。

03过滤示例

常用的过滤示例


注意灵活使用上文提到的逻辑运算符。

 

责任编辑:姜华 来源: 知晓编程
相关推荐

2022-03-01 13:55:27

TektonKubernetes集群

2022-03-29 08:18:32

位图算法索引技术

2021-07-12 06:11:14

SkyWalking 仪表板UI篇

2021-04-08 11:00:56

CountDownLaJava进阶开发

2021-04-14 14:16:58

HttpHttp协议网络协议

2023-03-29 07:45:58

VS编辑区编程工具

2021-03-12 09:21:31

MySQL数据库逻辑架构

2021-01-28 08:55:48

Elasticsear数据库数据存储

2021-06-21 14:36:46

Vite 前端工程化工具

2021-07-21 09:48:20

etcd-wal模块解析数据库

2022-04-29 14:38:49

class文件结构分析

2022-03-22 09:09:17

HookReact前端

2021-04-01 10:51:55

MySQL锁机制数据库

2022-02-17 08:53:38

ElasticSea集群部署

2024-06-13 08:34:48

2021-07-08 07:30:13

Webpack 前端Tree shakin

2023-03-13 09:31:04

2021-10-28 08:51:53

GPIO软件框架 Linux

2021-04-14 07:55:45

Swift 协议Protocol

2022-02-25 15:50:05

OpenHarmonToggle组件鸿蒙
点赞
收藏

51CTO技术栈公众号