网络分析工具—WireShark的安装及使用
Wireshark 是一个广泛使用的网络协议分析工具,常被网络管理员、开发人员和安全专家用来捕获和分析网络数据包。它支持多种网络协议,能够帮助用户深入理解网络流量、诊断网络问题以及进行安全分析。
Wireshark 的主要功能
-
数据包捕获与分析:
- 捕获网络流量:Wireshark 能够实时捕获通过网络传输的数据包,并将其显示在用户界面中。它支持多种网络接口,包括以太网、Wi-Fi、USB、蓝牙等。
- 数据包过滤:通过强大的过滤器功能,Wireshark 能够让用户精确选择并查看特定的数据包。用户可以基于协议、IP地址、端口等多种条件进行过滤。
-
支持多种协议:
- Wireshark 支持超过 1,000 种不同的网络协议,包括 TCP/IP、HTTP、DNS、SMTP、FTP、IMAP、SSL/TLS 等。它能够解析各种协议,并将其以易于理解的格式显示出来。
-
详细的协议解析:
- Wireshark 不仅仅是展示数据包,它还能够详细解码每一层协议(例如 Ethernet、IP、TCP、HTTP等),帮助用户理解数据包中的每一个字段。
-
实时与离线分析:
- 实时捕获:Wireshark 可以在实时运行时捕获数据流,并实时显示捕获到的包。
- 离线分析:Wireshark 允许用户打开以前保存的捕获文件(.pcap 格式),进行历史数据分析。这对于问题排查、取证分析或安全事件回溯非常有用。
-
图形化展示与统计:
- Wireshark 提供了图形化的展示方式,可以显示流量的时间轴、协议分布、网络流量统计等。用户可以通过图形化界面更直观地了解网络状况。
-
导出与共享数据:
- 捕获的网络数据包可以导出为多种格式(如 CSV、TXT、XML 等),方便进一步分析或与他人共享。Wireshark 也支持导出到其他工具中进行更深层次的处理。
Wireshark 的应用场景
-
网络故障排查:
- Wireshark 可以帮助网络管理员诊断网络问题,例如延迟高、丢包、连接中断等。通过查看数据包的详细信息,能够快速定位故障点。
-
性能分析:
- 通过分析网络数据包的传输时延、流量分布等,Wireshark 有助于评估网络性能,发现性能瓶颈。
-
安全分析与入侵检测:
- Wireshark 能够检测到潜在的恶意流量,帮助安全专家发现异常活动,如拒绝服务攻击(DDoS)、ARP 欺骗、嗅探攻击等。
-
协议开发与调试:
- 开发人员可以使用 Wireshark 来调试自定义协议或应用程序的网络通信,确保数据正确传输。
-
学习和研究:
- 对于学习网络协议的人员,Wireshark 是一个非常有用的工具,能够帮助他们深入了解协议的实际工作原理。
Wireshark 的使用技巧
-
过滤器:
- Wireshark 提供了强大的过滤器系统,可以根据 IP 地址、端口号、协议等多种条件筛选和查看数据包。例如:
- 显示所有 TCP 数据包:
tcp - 显示特定 IP 的流量:
ip.addr == 192.168.0.1 - 显示 HTTP 流量:
http - 显示某个端口的流量:
tcp.port == 80
- 显示所有 TCP 数据包:
- Wireshark 提供了强大的过滤器系统,可以根据 IP 地址、端口号、协议等多种条件筛选和查看数据包。例如:
-
统计功能:
- Wireshark 提供了多种统计工具,能够帮助用户分析捕获的数据包。例如,通过“协议层次结构”统计,可以看到每种协议占用的流量百分比;“流量图”功能则能帮助用户查看某个连接的流量变化。
-
颜色规则:
- 用户可以设置颜色规则,通过不同的颜色标记不同类型的数据包,使得识别异常或特定流量变得更加容易。
-
跟踪 TCP 会话:
- Wireshark 可以将某个 TCP 会话的所有数据包串联在一起,展示完整的通信过程,帮助用户理解请求和响应之间的关系。
优缺点
优点:
- 功能强大:Wireshark 支持大量的协议,能够解码各种复杂的网络流量。
- 易用性:界面直观,使用方便,适合各种用户,包括新手和专家。
- 开源免费:Wireshark 是一个开源工具,任何人都可以免费下载和使用。
- 实时和离线分析:支持实时数据包捕获,也可以分析历史数据。
缺点:
- 资源占用:捕获大量数据时,Wireshark 可能会占用大量的系统资源,尤其是在高流量的网络中。
- 隐私问题:Wireshark 需要访问网络流量,因此在使用时要小心保护隐私,尤其是在公共网络上使用时要避免捕获敏感数据。
- 学习曲线:对于初学者来说,Wireshark 可能会有一定的学习曲线,尤其是在理解协议解析和过滤器等功能时。
总结
Wireshark 是一款功能强大、灵活的网络分析工具,适用于网络故障排查、性能优化、安全监测和协议分析等多种场景。无论是网络管理员、开发人员还是安全专家,都可以利用 Wireshark 提供的强大功能,深入分析和理解网络流量。
安装部署:
步骤1:官网下载地址:Wireshark ·深入 根据自己的机器选择对应版本的安装包。


步骤2:双击下载的安装包。

步骤3:同意许可协议。

步骤4:点击下一步

步骤5:点击下一步

步骤6:根据自己的爱好是否勾选桌面图标,然后点击下一步

步骤7: 选择安装目录,然后点击下一步。

步骤8:这里需要安装NPcap,如果电脑上已安装的可忽略。

步骤9:这里需要安装USBPcap,如果电脑上已安装的可以忽略。






步骤10:点击下一步

步骤11:选择是否选择重启,选择稍后手工重启。

步骤12:安装成功

使用教程:

在上面 输入 ip.addr == 主机IP ,提示绿色 表示输入格式正确 。wireshark抓包完成,就这么简单。关于wireshark显示过滤条件、抓包过滤条件、以及如何查看数据包中的详细内容在后面介绍。


相关文章:
网络分析工具—WireShark的安装及使用
Wireshark 是一个广泛使用的网络协议分析工具,常被网络管理员、开发人员和安全专家用来捕获和分析网络数据包。它支持多种网络协议,能够帮助用户深入理解网络流量、诊断网络问题以及进行安全分析。 Wireshark 的主要功能 数据包捕获与分析: …...
MobaXterm的图形化界面支持:原理与分辨率问题解决
1. 概述 MobaXterm 是一款功能强大的远程访问工具,支持SSH、RDP、X11、VNC等多种协议,并内置了强大的图形界面支持,让用户能够在远程操作Linux/Unix系统时,享受到类似本地桌面的流畅体验。 与传统的SSH客户端不同,Mo…...
Java JVM(Java Virtual Machine)解析
Java Virtual Machine(JVM)是Java平台的核心组成部分,它负责执行Java字节码,并提供了一个运行时环境。本文将深入探讨JVM的工作原理、组成部分以及其在Java开发中的重要性。 一、JVM的基本概念 JVM是一个虚拟的计算机࿰…...
pytest测试专题 - 1.2 如何获得美观的测试报告
<< 返回目录 1 pytest测试专题 - 1.2 如何获得美观的测试报告 1.1 背景 虽然pytest命令的报文很详细,用例在执行调试时还算比较方便阅读和提取失败信息, 但对于大量测试用例运行时,可能会存在以下不足 报文被冲掉测试日志没法归档 …...
现阶段股指期货交易保证金和费用多少?股指期货一手多少钱?
股指期货交易的保证金就是你在买卖股指期货合约时,需存入交易账户的一笔资金。 股指期货交易保证金是多少? 股指期货的交易保证金就像是租房时的押金,确保你能承担交易带来的风险。 一般来说,保证金的比例大概在合约价值的12-14…...
使用mermaid画流程图
本文介绍使用mermaid画流程图,并给出几个示例。 背景 目前,除有明确格式要求的文档外,笔者一般使用markdown写文档、笔记。当文档有图片时,使用Typora等软件可实时渲染,所见即所得。但如果文档接收方没有安装相关工具…...
大模型笔记:pytorch实现MOE
0 导入库 import torch import torch.nn as nn import torch.nn.functional as F 1 专家模型 #一个简单的专家模型,可以是任何神经网络架构 class Expert(nn.Module):def __init__(self, input_size, output_size):super(Expert, self).__init__()self.fc nn.L…...
HAL库USART中断接收的相关问题
文章目录 一、使用中断的步骤二、相关函数分析1、HAL_UART_IRQHandler2、UART_Receive_IT3、HAL_UART_Receive_IT4、UART_Start_Receive_IT5、总结 三、HAL库使用心得 一、使用中断的步骤 1、配置GPIO 2、配置USART1 3、设置UART1中断优先级(不开启手动中断&#x…...
@Transational事务注解底层原理以及什么场景事务会失效
Transactional的底层是如何实现的 底层是通过动态代理实现的。Spring Boot 在运行时会生成一个代理对象,该代理对象被注解的方法调用,并在方法调用前后进行事务管理,事务管理包括开启事务,提交事务或回滚事务等操作。 1开启事务 …...
Linux扩容磁盘
启动 fdisk sudo fdisk /dev/sda输入p命令查询分区列表 输入d命令删除所有分区 需要一个一个删 输入n命令创建新分区 40G可以不用输入,直接回车使用默认 输入w命令保存操作 查看分区情况 sudo fdisk -l会发现sda1不是启动分区(Boot列不是号&a…...
全面解析鸿蒙(HarmonyOS)开发:从入门到实战,构建万物互联新时代
文章目录 引言 一、鸿蒙操作系统概述二、鸿蒙开发环境搭建三、鸿蒙核心开发技术1. **ArkUI框架**2. **分布式能力开发**3. **原子化服务与元服务** 四、实战案例:构建分布式音乐播放器五、鸿蒙开发工具与调试技巧六、鸿蒙生态与未来展望结语 引言 随着万物互联时代…...
Uniapp 原生组件层级过高问题及解决方案
文章目录 一、引言🏅二、问题描述📌三、问题原因❓四、解决方案💯4.1 使用 cover-view 和 cover-image4.2 使用 subNVue 子窗体4.3 动态隐藏原生组件4.4 使用 v-if 或 v-show 控制组件显示4.5 使用 position: fixed 布局 五、总结Ἰ…...
Android adb测试常用命令大全
目录 一、查看最上层成activity名字: 二、查看Activity的任务栈: 三、获取安装包信息 四、性能相关 1、显示CPU信息 : 2、查看CPU使用信息 3、内存信息(meminfo package_name or pid 使用程序的包名或者进程id显示内存信息) 4、电量信…...
linux的基础入门2
linux的root用户 无论是Windows、MacOS、Linux均采用多用户的管理模式进行权限管理。 在Linux系统中,拥有最大权限的账户名为:root(超级管理员) 而在前期,我们一直使用的账户是普通的用户 普通用户的权限,一般在其HOME目录内是不受限的 一旦出了HOME目录…...
19.4.8 数据库综合运用
版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 需要北风数据库的请留言自己的信箱。 本节中将通过实例综合展示对数据表的查询、增加、修改和删除。 【例 19.16】【项目…...
JAVA中的抽象学习
一、Java SE 中的抽象概念 在 Java 中,抽象(Abstraction)是面向对象编程的重要特性之一。抽象的核心思想是“只关注重要的特性,而忽略不重要的细节”。抽象通常通过抽象类和接口来实现,它帮助开发者将复杂的系统隐藏在…...
在 Go 中实现事件溯源:构建高效且可扩展的系统
事件溯源(Event Sourcing)是一种强大的架构模式,它通过记录系统状态的变化(事件)来重建系统的历史状态。这种模式特别适合需要高可扩展性、可追溯性和解耦的系统。在 Go 语言中,事件溯源可以通过一些简单的…...
加解密 | AES加、解密学习
加解密 | AES加、解密学习 你的代码实现了一个简单的AES(高级加密标准)加密和解密的测试程序。以下是对代码的分析和一些改进建议: 代码功能 初始化数据和密钥: 定义了一个16字节的输入数据 input_data。定义了一个16字节的AES…...
【学术投稿-2025年计算机视觉研究进展与应用国际学术会议 (ACVRA 2025)】CSS样式解析:行内、内部与外部样式的区别与优先级分析
简介 2025年计算机视觉研究进展与应用(ACVRA 2025)将于2025年2月28-3月2日在中国广州召开,会议将汇聚世界各地的顶尖学者、研究人员和行业专家,聚焦计算机视觉领域的最新研究动态与应用成就。本次会议将探讨前沿技术,…...
MongoDB 基本操作
一、数据库操作 1. 切换或创建数据库 使用use命令切换到指定数据库,若该数据库不存在,在首次插入数据时会自动创建。 use myDatabase 2. 查看所有数据库 使用show dbs命令查看 MongoDB 实例中的所有数据库。 show dbs 3. 删除当前数据库 使用db.…...
大数据学习栈记——Neo4j的安装与使用
本文介绍图数据库Neofj的安装与使用,操作系统:Ubuntu24.04,Neofj版本:2025.04.0。 Apt安装 Neofj可以进行官网安装:Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...
Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案
随着新能源汽车的快速普及,充电桩作为核心配套设施,其安全性与可靠性备受关注。然而,在高温、高负荷运行环境下,充电桩的散热问题与消防安全隐患日益凸显,成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
GruntJS-前端自动化任务运行器从入门到实战
Grunt 完全指南:从入门到实战 一、Grunt 是什么? Grunt是一个基于 Node.js 的前端自动化任务运行器,主要用于自动化执行项目开发中重复性高的任务,例如文件压缩、代码编译、语法检查、单元测试、文件合并等。通过配置简洁的任务…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
C#中的CLR属性、依赖属性与附加属性
CLR属性的主要特征 封装性: 隐藏字段的实现细节 提供对字段的受控访问 访问控制: 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性: 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑: 可以…...
Java求职者面试指南:计算机基础与源码原理深度解析
Java求职者面试指南:计算机基础与源码原理深度解析 第一轮提问:基础概念问题 1. 请解释什么是进程和线程的区别? 面试官:进程是程序的一次执行过程,是系统进行资源分配和调度的基本单位;而线程是进程中的…...
