wireshark常见使用表达式

目录

      • 1. 捕获过滤器 (Capture Filters)
        • 基本捕获过滤器
        • 组合捕获过滤器
      • 2. 显示过滤器 (Display Filters)
        • 基本显示过滤器
        • 复杂显示过滤器
        • 协议特定显示过滤器
      • 3. 进阶显示过滤器技巧
        • 使用函数和操作符
        • 逻辑操作符
      • 4. 常见网络协议过滤表达式示例
        • HTTP 协议
        • HTTPS 协议
        • DNS 协议
        • DHCP 协议
        • ARP 协议
        • ICMP 协议
        • SMTP 协议
        • POP3 协议
        • IMAP 协议

1. 捕获过滤器 (Capture Filters)

捕获过滤器使用 Berkeley Packet Filter (BPF) 语法,主要用于在捕获数据包时进行过滤。以下是一些捕获过滤器的示例:

基本捕获过滤器
  • 捕获所有 TCP 包:
    tcp
    
  • 捕获特定 IP 地址的数据包:
    host 192.168.1.1
    
  • 捕获特定网络的数据包:
    net 192.168.1.0/24
    
  • 捕获特定端口的数据包:
    port 80
    
  • 捕获源地址为特定 IP 的数据包:
    src host 192.168.1.1
    
  • 捕获目标地址为特定 IP 的数据包:
    dst host 192.168.1.1
    
组合捕获过滤器
  • 捕获特定源地址且目标端口为 80 的数据包:
    src host 192.168.1.1 and port 80
    
  • 捕获特定源和目标地址的数据包:
    src host 192.168.1.1 and dst host 192.168.1.2
    
  • 捕获 TCP 和 UDP 包:
    tcp or udp
    

2. 显示过滤器 (Display Filters)

显示过滤器用于捕获后过滤和分析数据包,语法更加灵活和强大。以下是一些常见的显示过滤器及其用法:


基本显示过滤器
  • 过滤 TCP 包:
    tcp
    
  • 过滤 HTTP 请求:
    http.request
    
  • 过滤特定 IP 地址的源目地址:
    ip.src == 192.168.1.1
    ip.dst == 192.168.1.1
    
  • 过滤特定端口的 TCP 包:
    tcp.port == 80
    
复杂显示过滤器
  • 过滤特定 IP 地址且包含 HTTP 请求的数据包:
    ip.src == 192.168.1.1 && http.request
    
  • 过滤 TCP 三次握手的数据包:
    tcp.flags.syn == 1 && tcp.flags.ack == 0 || tcp.flags.syn == 1 && tcp.flags.ack == 1 || tcp.flags.ack == 1 && tcp.flags.syn == 0 && tcp.flags.fin == 0
    
  • 过滤特定子网内的所有 ICMP 包:
    icmp && ip.src == 192.168.1.0/24
    
  • 过滤 HTTP POST 请求中包含特定字符串的数据包:
    http.request.method == "POST" && frame contains "search_string"
    
  • 过滤所有源自特定 IP 地址并且端口范围在 1000 到 2000 之间的 TCP 包:
    ip.src == 192.168.1.1 && tcp.srcport >= 1000 && tcp.srcport <= 2000
    
协议特定显示过滤器
  • 过滤 DHCP 请求:
    bootp.type == 1
    
  • 过滤 DNS 响应:
    dns.flags.response == 1
    
  • 过滤 ARP 请求:
    arp.opcode == 1
    
  • 过滤 TLS(前身为 SSL)握手包:
    tls.handshake.type == 1
    

3. 进阶显示过滤器技巧

使用函数和操作符
  • 包含特定字符串的包:
    frame contains "example.com"
    
  • 过滤特定字节序列:
    data.data contains 0A:0B:0C:0D
    
  • 过滤特定时间范围内的包:
    frame.time >= "2024-06-01 00:00:00" && frame.time <= "2024-06-01 23:59:59"
    

逻辑操作符
  • 逻辑 AND:
    tcp && ip.src == 192.168.1.1
    
  • 逻辑 OR:
    http || dns
    
  • 逻辑 NOT:
    !arp
    

4. 常见网络协议过滤表达式示例

HTTP 协议
  • 过滤所有 HTTP 请求:
    http.request
    
  • 过滤所有 HTTP 响应:
    http.response
    
  • 过滤特定 URL 的 HTTP 请求:
    http.request.uri contains "login"
    
  • 分析特定网站的 HTTP 流量:
    http && (ip.src == 192.168.1.2 || ip.dst == 192.168.1.2)
    
    此过滤器显示所有与 IP 地址 192.168.1.2 相关的 HTTP 流量。
HTTPS 协议
  • 过滤 HTTPS 流量(基于端口):
    tcp.port == 443
    
DNS 协议
  • 过滤所有 DNS 查询:
    dns.flags.response == 0
    
  • 过滤所有 DNS 响应:
    dns.flags.response == 1
    
DHCP 协议
  • 过滤所有 DHCP 请求:
    bootp.type == 1
    
  • 过滤所有 DHCP 响应:
    bootp.type == 2
    
ARP 协议
  • 过滤所有 ARP 请求:
    arp.opcode == 1
    
  • 过滤所有 ARP 响应:
    arp.opcode == 2
    
ICMP 协议
  • 过滤所有 ICMP 请求(Echo Request):

    icmp.type == 8
    
  • 过滤所有 ICMP 响应(Echo Reply):

    icmp.type == 0
    
  • 调试网络中的 ICMP 流量:

    icmp && (ip.src == 192.168.1.2 || ip.dst == 192.168.1.2)
    

    此过滤器显示所有与 IP 地址 192.168.1.2 相关的 ICMP 流量。

SMTP 协议
  • 过滤所有 SMTP 流量:
    tcp.port == 25
    
POP3 协议
  • 过滤所有 POP3 流量:
    tcp.port == 110
    
IMAP 协议
  • 过滤所有 IMAP 流量:
    tcp.port == 143
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/30370.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Scala入门教程

Scala入门教程可以按照以下步骤进行&#xff0c;以下是详细的内容分点表示和归纳&#xff1a; 一、Scala简介 Scala是一门多范式编程语言&#xff0c;融合了面向对象编程和函数式编程的特性。它运行在Java虚拟机&#xff08;JVM&#xff09;上&#xff0c;因此可以直接使用Ja…

项目经理究竟一年能挣多少钱?一起来看看

作为现代企业中不可或缺的职业之一&#xff0c;“项目经理”对于企业经营具有非常重要的作用。但是关于项目经理的待遇问题&#xff0c;却一直饱受争议。那么&#xff0c;项目经理一般年薪到底有多少钱呢&#xff1f; 一、项目经理年薪概述 根据行业调查和统计数据&#xff0…

【Java】三种实现网络通讯的方式以及相关协议的使用示例

Java网络 - 应用篇 &#x1f47e;以下代码均经过本人实测&#xff0c;请放心食用。顺便求个关注&#xff0c;谢谢&#xff01;&#xff01; 文章目录 Java网络 - 应用篇Socket 篇简介代码实现SockerServerSocketClient RestTemplate 篇简介...ForEntity 与 ...ForObject 对比示…

IPFoxy代理IP:IPv4与IPv6性能与安全性对比

在使用IPFoxy静态代理IP的过程中&#xff0c;经常有小白朋友疑惑&#xff0c;IPv4与IPv6有何区别&#xff1f;他们在性能与安全上的差别如何&#xff0c;又该如何选择&#xff1f;在这篇博文中&#xff0c;我们将从各个方面为您科普这一区别&#xff0c;帮助您更好的选择。 一、…

Bootstrap 间距实用类

Bootstrap 间距实用类&#xff08;Spacing Utilities&#xff09; Bootstrap 提供了一套强大的实用类&#xff0c;用于快速设置元素的 margin 和 padding。这些类名遵循一致的命名规则&#xff0c;支持响应式设计&#xff0c;可以在不同的视口尺寸上进行调整。 1. 基本概念 …

柒拾肆- 如何通过数据影响决策(五)- 时序数据

什么是好&#xff1f; 对于 单一时序指标 来说&#xff08;如最简单的 销售、日活顾客数、订单数 等 &#xff09;&#xff0c;在决策时该怎样 看 呢&#xff1f; 或者换句话说&#xff0c;数据 应该怎样 表达 才能让决策者做出 更全面 的决策呢&#xff1f; 一、目前的方式 …

MPC与DDP结合案例

MPC与DDP结合概要 MPC与DDP的关系 1. 相似性: 优化过程: 都涉及到优化一个代价函数以求得最优控制输入。动态模型: 都依赖于系统的动力学模型来预测和更新系统状态。2. 差异性: 时间尺度: MPC 是在线控制,每次只优化有限预测区间的控制输入,然后在每个时间步长重新优化。D…

Mkdocs中文系列教程补充(1)

什么是requirements.txt 我的理解是mkdocs依赖的py库 第一次建立MKdocs文档使用 mkdocs new . 完后&#xff0c;比较建议执行一下&#xff1a; pip install -r requirements.txt 不然mkdocs serve后会出现什么 xxx not found &#xff0c;比如下面这位老哥 示例 mkdocs …

【C++】循环、控制流语句、

8、循环&#xff08;loops&#xff09;&#xff08;1&#xff09;for loops for循环非常灵活&#xff0c;可以做很多事情。上图红框框出来的代码块就是一个for循环。 for是关键字 for后面内容分为三部分&#xff0c;每部分用分号&#xff1b;隔开 第一部分A是变量的声明&…

Qt入门小项目 | 实现一个图片查看器

文章目录 一、实现一个图片查看软件 一、实现一个图片查看软件 需要实现的功能&#xff1a; 打开目录选择图片显示图片的名字显示图片 在以上功能的基础上进行优化&#xff0c;需要解决如下问题&#xff1a; 如何记住上次打开的路径&#xff1f; 将路径保存到配置文件中&#x…

使用MAT定位线上OOM问题

目录 1.什么是OOM? 2.发生的可能原因 3.常见类型的OOM 4.如何定位问题&#xff1f; 4.1 获取dump文件 4.2 MAT分析 「Leak Suspects」泄露嫌疑 「Histogram」直方图 「dominator tree」支配树 「thread overview」线程视图 目录 1.什么是OOM? 2.发生的可能原因 …

深度学习入门5——为什么神经网络可以学习?

在理解神经网络的可学习性之前&#xff0c;需要先从数学中的导数、数值微分、偏导数、梯度等概念入手&#xff0c;从而理解为什么神经网络具备学习能力。 1.数值微分的定义 先从导数出发理解什么是梯度。某一点的导数直观理解就是在该点的切线的斜率。在数学中导数表示某个瞬…

c#一个udp代码

不使用socket进行 unity下的 private Thread connectThread;private UdpClient udpClient;public Queue LogQueue new Queue();public static UDPManager Instance{get;private set;}private void Awake(){Instance this;}private void Start(){udpClient new UdpClient();…

dolphinscheduler独立集群部署文档(海豚调度)

一、下载解压 服务器内下载&#xff08;华为云镜像站网址&#xff09;&#xff1a; wget https://mirrors.huaweicloud.com/apache/dolphinscheduler/3.2.0/apache-dolphinscheduler-3.2.0-bin.tar.gz解压&#xff1a;tar -xvf apache-dolphinscheduler-3.2.0-bin.tar.gz 改名…

05-对混合app应用中的元素进行定位

本文介绍对于混合app应用中的元素如何进行定位。 一、app的类型 1&#xff09;Native App&#xff08;原生应用&#xff09; 原生应用是指利用Android、IOS平台官方的开发语言、开发类库、工具等进行开发的app应用&#xff0c;在应用性能和交互体验上应该是最好的。 通俗点来…

Win10录屏,3种方法,快速搞定

在数字化时代&#xff0c;录屏功能已经成为了我们日常生活和工作中不可或缺的一部分。无论是为了制作教学视频&#xff0c;还是为了记录游戏的高光时刻&#xff0c;还是为了保存开会内容&#xff0c;录屏功能都能为我们提供极大的便利。Win10操作系统作为微软推出的经典之作&am…

在k8s中部署Elasticsearch高可用集群详细教程

&#x1f407;明明跟你说过&#xff1a;个人主页 &#x1f3c5;个人专栏&#xff1a;《洞察之眼&#xff1a;ELK监控与可视化》&#x1f3c5; &#x1f516;行路有良友&#xff0c;便是天堂&#x1f516; 目录 一、引言 1、Elasticsearch简介 2、为什么在k8s中部署elasti…

Redis 6.0新特性详解

Redis 6.0新特性主要有3个&#xff1a;多线程、Client Side Cache、Acls。下面详细说明一下。 1.多线程 redis 6.0 提供了多线程的支持&#xff0c;redis 6 以前的版本&#xff0c;严格来说也是多线程&#xff0c;只不过执行用户命令的请求时单线程模型&#xff0c;还有一些线…

鸿蒙HarmonyOS实战:状态管理和传值

状态管理 State State是一个装饰器&#xff0c;是用来存放数据的&#xff0c;比较好理解 由State的数据来进行状态驱动视图更新 代码很简单 State count: number 0; 需要注意的是State初始化的数据必须赋值 这里我们讨论简单用法&#xff0c;至于复杂的用法可以到项目中介绍…