wireshark工具简介

news2025/1/22 15:36:08

目录

1 wireshark介绍

2 wireshark抓包流程

2.1 选择网卡

2.2 停止抓包

2.3 保存数据

3 wireshark过滤器设置

3.1 显示过滤器的设置

3.2 抓包过滤器

 4 wireshark的封包列表与封包详情

4.1 封包列表

4.2 封包详情

参考文献


1 wireshark介绍

       wireshark是非常流行的网络封包分析软件,功能十分强大。可以截取各种网络封包,显示网络封包的详细信息。wireshark是开源软件,可以放心使用。 可以运行在WindowsUnixLinuxMac OS上。

        WireShark 主要分为这几个界面:

1. Display Filter(显示过滤器),  用于过滤

2. Packet List Pane(封包列表), 显示捕获到的封包, 有源地址和目标地址,端口号。 颜色不同,代表

3. Packet Details Pane(封包详细信息), 显示封包中的字段

4. Dissector Pane(16进制数据)

5. Miscellanous(地址栏,杂项)

2 wireshark抓包流程

2.1 选择网卡

        打开 Wireshark 后,会直接进入「网卡选择界面」,WLAN 是我连接无线的网卡,我们抓一下这个网卡的流量,双击网卡名,自动开始抓包。

2.2 停止抓包

点击左上角的「红色按钮」,可以停止抓包。

2.3 保存数据

点击右上角的「文件」,选择「保存」,可以保存抓包的数据。

也可以直接点击工具栏的保存按钮。

3 wireshark过滤器设置

Wireshark提供了两个过滤器:抓包过滤器 和 显示过滤器。两个过滤器的过滤思路不同。

抓包过滤器:重点在动作,需要的包我才抓,不需要的我就不抓。

显示过滤器:重点在数据的展示,包已经抓了,只是不显示出来。

3.1 显示过滤器的设置

可以在显示过滤器中输入过滤条件,来获取过滤后的封包列表显示。

常用的几个过滤条件如下:

1) 协议过滤

比如TCP,只显示TCP协议。

2)IP 过滤

比如 ip.src ==192.168.1.102 显示源地址为192.168.1.102

ip.dst==192.168.1.102, 目标地址为192.168.1.102

3) 端口过滤

tcp.port ==80,  端口为80

tcp.srcport == 80,  只显示TCP协议的愿端口为80的。

tcp.port >= 2000 and tcp.port <= 2500 ,端口号在20002500范围内的封包。

4)长度和内容的过滤

udp.length < 30   http.content_length <=20,针对长度的过虑

http.request.uri matches “vip,匹配http请求中含有vip字段请求信息

5)逻辑运算符为 AND/ OR/NOT/&&/|| /!

6)特定偏移值的数据包tcp[20:3] == 47:45:54

3.2 抓包过滤器

抓包过滤器在抓包前使用,所以使用抓包过滤器时,需要先停止抓包,设置完过滤规则后,再开始抓包。停止抓包的前提下,点击工具栏的捕获按钮,点击选项。

在弹出的捕获选项界面,最下方的输入框中输入过滤语句,点击开始即可抓包。

提示:抓包过滤器的输入框,会自动检测语法,绿色代表语法正确,红色代表语法错误。

抓包过滤器过滤有一个基本的语法格式:BPF语法格式:

1)抓取指定IP地址的数据流

host 10.3.1.1:抓取发到/来自10.3.1.1的数据流

not host 10.3.1.1:抓取除了发到/来自10.3.1.1以外的所有数据流

src host 10.3.1.1:抓取来自10.3.1.1的数据流

2)抓取指定IP地址范围的数据流

net 10.3.0.0/16:抓取网络10.3.0.0上发到/来自所有主机的数据流(16表示长度)

net 10.3.0.0 mask 255.255.0.0:与之前的过滤结果相同

not dst net 10.3.0.0/16:抓取除了发到以10.3开头的IP地址以外的所有数据流

3)抓取指定端口的数据流

port 53:抓取发到/来自端口53UDP/TCP数据流(典型是DNS数据流)

not port 53:抓取除了发到/来自端口53以外的UDP/TCP数据流

portrange 1-80:抓取发到/来自端口1-80的所有UDP/TCP数据流

tcp portrange 1-80:抓取发到/来自端口1-80的所有TCP数据流

4)熟悉报文内容的,可以通过各个协议层偏移字段

ip[2:2]==<number>ip报文大小

Tcp[2:2] > 50 and tcp[2:2] < 100 抓取目的端口为50~100TCP报文

 4 wireshark的封包列表与封包详情

4.1 封包列表

Packet List Pane(数据包列表), 显示捕获到的数据包,每个数据包包含编号,时间戳,源地址,目标地址,协议,长度,以及数据包信息。不同协议的数据包使用了不同的颜色区分显示。

图片

数据包列表是最常用的模块之一,列表中有一些默认显示的列,我们可以添加、删除、修改显示的列。

1)添加显示列
想要在数据列表中显示某一个字段,可以将这个数据字段添加至显示列中。
左键选中想要添加为列的字段,右键选择「应用为列」。


选中字段,按 Ctrl + Shift + I ,也可以实现同样的效果。

添加为列的字段会在数据列表中显示。


2)隐藏显示列
暂时不想查看的列,可以暂时隐藏起来。
在显示列的任意位置右键,取消列名的「勾选」,即可隐藏显示列。

3)删除显示列
不需要查看的字段,可以从显示列中删除。
右键需要删除的列,点击最下方的「Remove this Column」 。


注意:隐藏字段时,在列名栏的任意位置右键即可;而删除字段时,需要在指定的列名位置右键,以防误删。

4)设置时间
数据包列表栏的时间这一列,默认显示格式看起来很不方便,我们可以调整时间的显示格式。
点击工具栏的「视图」,选择「时间显示格式」,设置你喜欢的格式。

5)追踪流

要筛选到特定流,在感兴趣的流/连接的数据包列表中选择TCP、UDP、DCCP、TLS、HTTP、HTTP/2、QUIC或SIP数据包。有两种打开追踪流的界面方法,以TCP为例:

方法一: 选择菜单项【Analyze → Follow → TCP Stream 】

方法二:选择追踪到的数据→ Follow → TCP Stream 

下面展示追踪到流数据,需要进行说明的是:

【1】流内容的显示顺序和它在网络上出现的顺序相同。不可打印的字符被点代替。

【2】从客户端到服务器的流量被标记为红色,而从服务器到客户端的流量被标记为蓝色。这些颜色可以通过下面地方设置

4.2 封包详情

Packet Details Pane(数据包详细信息), 在数据包列表中选择指定数据包,在数据包详细信息中会显示数据包的所有详细信息内容。数据包详细信息面板是最重要的,用来查看协议中的每一个字段。各行信息分别为

(1)Frame:   物理层的数据帧概况

(2)Ethernet II: 数据链路层以太网帧头部信息

(3)Internet Protocol Version 4: 互联网层IP包头部信息

(4)Transmission Control Protocol:  传输层T的数据段头部信息,此处是TCP

(5)Hypertext Transfer Protocol:  应用层的信息,此处是HTTP协议

TCP包的具体内容

从下图可以看到wireshark捕获到的TCP包中的每个字段。

TCP包的具体内容

从下图可以看到wireshark捕获到的TCP包中的每个字段。

参考文献

Wireshark零基础使用教程(超详细)_wireshark抓包新手使用教程-CSDN博客

Wireshark数据包操作_wireshark 数据解析-CSDN博客

wireshark分析数据包:追踪流_wireshark追踪流-CSDN博客

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

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

相关文章

「2024·我的成长之路」:年终反思与展望

文章目录 1. 前言2.创作历程2.1 摆烂期2.2 转变期3. 上升期 2. 个人收获3.经验分享4. 展望未来 1. 前言 2025年1月16日&#xff0c;2024年博客之星入围公布&#xff0c;很荣幸获得了这次入围的机会。2024年对我个人是里程碑的一年&#xff0c;是意义非凡的一年&#xff0c;是充…

【RAG落地利器】向量数据库Chroma入门教程

安装部署 官方有pip安装的方式&#xff0c;为了落地使用&#xff0c;我们还是采用Docker部署的方式&#xff0c;参考链接来自官方部署: https://cookbook.chromadb.dev/running/running-chroma/#docker-compose-cloned-repo 我们在命令终端运行&#xff1a; docker run -d --…

电阻电位器可调电阻信号隔离变送器典型应用

电阻电位器可调电阻信号隔离变送器典型应用 产品描述&#xff1a; 深圳鑫永硕科技的XYS-5587系列是一进一出线性电子尺(电阻/电位计信号及位移)信号隔离变送器&#xff0c;是将输入电阻,线性电子尺,角度位移传感器信号进行采集,隔离,放大并转换成模拟量信号的小型仪表设备,并以…

[创业之路-259]:《向流程设计要效率》-1-让成功成熟业务交给流程进行复制, 把创新产品新业务新客户交给精英和牛人进行探索与创造

标题&#xff1a;成功与创新的双轨并行&#xff1a;以流程复制成熟&#xff0c;以精英驱动新知 在当今这个日新月异的商业环境中&#xff0c;企业要想持续繁荣发展&#xff0c;就必须在稳定与创新之间找到完美的平衡点。一方面&#xff0c;成熟业务的稳定运营是企业生存和发展的…

模拟飞行入坑(五) P3D 多通道视角配置 viewgroup

背景&#xff1a; P3D进行多个屏幕显示的时候&#xff0c;如果使用英伟达自带的屏幕融合成一个屏&#xff0c;或者使用P3D单独拉伸窗口&#xff0c;会使得P3D的画面被整体拉伸&#xff0c;又或者,当使用Multichannel进行多个设备联动时&#xff0c;视角同步组合需要配置&#…

Java中的错误与异常详解

Java中的错误与异常详解 Java提供了一种机制来捕获和处理程序中的异常和错误。异常和错误都继承自 Throwable 类&#xff0c;但它们有着不同的用途和处理方式。 1. Error&#xff08;错误&#xff09; Error 是程序无法处理的严重问题&#xff0c;通常由 JVM&#xff08;Java…

免费开源的三维建模软件Blender

软件介绍 Blender是一款功能强大且免费开源的三维建模、动画制作和渲染软件&#xff0c;广泛应用于影视制作、游戏开发、建筑可视化、教育及艺术创作等多个领域。 核心功能 Blender是一款全能型3D软件&#xff0c;涵盖了从建模、动画到渲染、后期合成的完整工作流程。 1、建…

ElasticSearch DSL查询之排序和分页

一、排序功能 1. 默认排序 在 Elasticsearch 中&#xff0c;默认情况下&#xff0c;查询结果是根据 相关度 评分&#xff08;score&#xff09;进行排序的。我们之前已经了解过&#xff0c;相关度评分是通过 Elasticsearch 根据查询条件与文档内容的匹配程度自动计算得出的。…

iOS 网络请求: Alamofire 结合 ObjectMapper 实现自动解析

引言 在 iOS 开发中&#xff0c;网络请求是常见且致其重要的功能之一。从获取资料到上传数据&#xff0c;出色的网络请求框架能夠大大提升开发效率。 Alamofire 是一个极具人气的 Swift 网络请求框架&#xff0c;提供了便据的 API 以完成网络请求和响应处理。它支持多种请求类…

面向对象编程——对象实例化

在python中&#xff0c;对象实例化是根据类的定义创建具体对象的过程。也就是将类当成模板&#xff0c;从而定义了对象的结构和行为&#xff0c;而实例化则是根据这个模板创建具体的对象实例。每个实例都有自己独立的状态&#xff0c;但是却共享类的结构和方法。 代码&#xff…

阿里云-银行核心系统转型之业务建模与技术建模

业务领域建模包括业务建模和技术建模&#xff0c;整体建模流程图如下&#xff1a; 业务建模包括业务流程建模和业务对象建模 业务流程建模&#xff1a;通过对业务流程现状分析&#xff0c;结合目标核心系统建设能力要求&#xff0c;参考行业建 模成果&#xff0c;形成结构化的…

Unreal Engine 5 C++ Advanced Action RPG 九章笔记

第九章 Hero Special Abilities 2-Challenges Ahead(前方的挑战) 本次章节主要解决三件问题 怒气能力特殊武器能力治疗石怒气能力 对于这个能力我们需要处理它的激活和持械状态,当没有怒气时应该取消该能力当这个能力激活时,我希望角色是进入无敌状态的,不会受到伤害怒气状…

cursor重构谷粒商城05——docker容器化技术快速入门【番外篇】

前言&#xff1a;这个系列将使用最前沿的cursor作为辅助编程工具&#xff0c;来快速开发一些基础的编程项目。目的是为了在真实项目中&#xff0c;帮助初级程序员快速进阶&#xff0c;以最快的速度&#xff0c;效率&#xff0c;快速进阶到中高阶程序员。 本项目将基于谷粒商城…

【FPGA】MIPS 12条整数指令【1】

目录 修改后的仿真结果 修改后的完整代码 实现bgtz、bltz、jalr 仿真结果&#xff08;有问题&#xff09; bltz------并未跳转&#xff0c;jCe&#xff1f; 原因是该条跳转语句判断的寄存器r7&#xff0c;在该时刻并未被赋值 代码&#xff08;InstMem修改前&#xff09; i…

洛谷题目:P2742 [USACO5.1] 圈奶牛Fencing the Cows /【模板】二维凸包 题解 (本题较难)

题目传送门&#xff1a;P2742 [USACO5.1] 圈奶牛Fencing the Cows /【模板】二维凸包 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 另&#xff1a;由于一些文章的疏忽&#xff0c;导致一些错别字&#xff0c;代码错误&#xff0c;公式错误导致大家的理解和误导&#xff0c;…

多线程之旅:线程安全问题

之前说到了多线程的创建和一些属性等等&#xff0c;接下来&#xff0c;就来讲讲多线程安全问题。 小编引入这段代码讲解下&#xff1a; public class Demo13 {public static int count0;public static void main(String[] args) throws InterruptedException {Thread t1new…

html学习笔记(3)

一、文本格式标签 效果标签&#xff08;旧版&#xff09;标签&#xff08;语义化&#xff0c;强调&#xff09;加粗<b><strong>倾斜<i><em>下划线<u><ins>删除线<s><del> 前面的标签 b 、 i 、 u 、 s 就仅仅是实现加粗、倾…

Postgresql源码(141)JIT系列分析汇总

JIT的东西比较零散&#xff0c;本篇对之前的一些列分析做个汇总、整理。 涉及&#xff1a; 《Postgresql源码&#xff08;113&#xff09;表达式JIT计算简单分析》 《Postgresql源码&#xff08;127&#xff09;投影ExecProject的表达式执行分析》 《Postgresql源码&#xff08…

Maven多环境打包方法配置

简单记录一下SpringBoot多环境打包配置方法&#xff0c;分部署环境和是否包含lib依赖包两个维度 目录 一、需求说明二、目录结构三、配置方案四、验证示例 一、需求说明 基于Spring Boot框架的项目分开发&#xff0c;测试&#xff0c;生产等编译部署环境&#xff08;每一个环境…

SDL2基本使用

前言 在这里记录SDL的环境基本搭建和使用&#xff0c;方便回忆。使用该图形库也是为了方便在没有单片机和显示模块的使用&#xff0c;也能对简单验证些关于图形构建或界面管理的猜想和测试&#xff0c;所以下述不会探讨过于深入的东西。当然&#xff0c;也可以通过SDL官网查看介…