Wireshark详解

Wireshark使用详解

  • 1.Wireshark 简介
  • 2.下载与安装
      • 1. 下载地址
      • 2. 安装步骤(以 Windows 为例)
  • 3. 界面与核心功能
      • 1. 主界面布局
      • 2. 常用菜单功能
  • 4. 过滤功能详解
      • 1. 过滤类型
      • 2. 常用过滤命令
  • 5. 过滤命令与网络结构对应
  • 6. 使用注意事项
  • 7. 案例分析 TCP 三次握手
      • 1. 实验目标
      • 2. 操作步骤
      • 3. 预期结果
  • 8. 扩展学习

1.Wireshark 简介

Wireshark 是一款开源的网络协议分析工具,支持实时抓包、协议解析、流量统计等功能,广泛用于网络故障排查、安全分析、协议学习等领域。

2.下载与安装

1. 下载地址

  • 官网下载:访问 Wireshark 官网,选择对应操作系统的安装包:
    • Windows:.exe 安装程序(推荐稳定版 Stable Release)。
    • macOS:.dmg 镜像文件。
    • Linux:通过包管理器安装(如 apt install wireshark)。

2. 安装步骤(以 Windows 为例)

  1. 双击安装包,按向导完成安装。
  2. 勾选 Install WinPcap/Npcap(必须安装,用于捕获网络接口数据)。
  3. 安装完成后,以管理员权限启动 Wireshark(否则无法抓包)。

3. 界面与核心功能

1. 主界面布局

区域功能说明
菜单栏包含文件操作、捕获控制、分析工具等核心功能。
工具栏快速访问开始/停止捕获、过滤表达式输入等。
接口列表显示所有可用的网络接口及其实时流量统计。
捕获数据面板显示捕获的数据包列表,包含时间、源/目的地址、协议、长度等基本信息。
协议详情面板展开单个数据包,逐层解析协议头部和载荷内容(如 Ethernet → IP → TCP → HTTP)。
字节流面板以十六进制和 ASCII 格式显示原始字节流。

2. 常用菜单功能

  • File:打开/保存捕获文件(.pcapng 格式)、导出特定数据包。
  • Edit:查找数据包、标记关键帧。
  • View:调整显示布局、着色规则(按协议或过滤条件高亮)。
  • Capture:选择接口、设置捕获过滤器。
  • Analyze:跟踪 TCP 流、启用协议解析统计。

4. 过滤功能详解

1. 过滤类型

类型作用阶段语法示例应用场景
捕获过滤器抓包前tcp port 80减少捕获数据量,聚焦目标流量。
显示过滤器抓包后分析http.request.method == "GET"快速定位特定协议或行为。

2. 常用过滤命令

协议过滤

tcp          # 仅显示 TCP 协议数据包
udp          # 仅显示 UDP 协议数据包
http         # 过滤 HTTP 请求/响应
dns          # 过滤 DNS 查询与响应

IP 与端口过滤

ip.src == 192.168.1.100    # 源 IP 地址
ip.dst == 10.0.0.1         # 目的 IP 地址
tcp.port == 443            # TCP 端口 443(HTTPS)
udp.port range 1000-2000   # UDP 端口范围

逻辑运算符

&&      # 逻辑与(如 `tcp && ip.addr == 192.168.1.1`)
||      # 逻辑或(如 `http || dns`)
!       # 逻辑非(如 `!arp`)

高级过滤

tcp.flags.syn == 1         # 过滤 TCP SYN 标志包
http.request.method == "POST"  # HTTP POST 请求
frame contains "password"  # 数据包内容包含关键字

5. 过滤命令与网络结构对应

过滤条件对应网络层应用案例
eth.addr数据链路层分析 MAC 地址通信问题。
ip.addr / ip.ttl网络层(IP)定位 IP 地址冲突或 TTL 超时。
tcp.port / udp.port传输层(TCP/UDP)排查端口占用或防火墙拦截。
http / dns应用层分析 Web 请求或域名解析异常。

6. 使用注意事项

  1. 权限问题:需以管理员/root 权限运行,否则无法捕获数据。
  2. 性能影响:在高流量场景下,实时抓包可能导致 CPU/内存占用过高。
  3. 隐私保护:避免捕获敏感信息(如密码),抓包后及时清理文件。
  4. 过滤优化:优先使用捕获过滤器减少数据量,再结合显示过滤器分析。
  5. 文件保存:定期保存 .pcapng 文件,防止意外关闭导致数据丢失。

7. 案例分析 TCP 三次握手

1. 实验目标

验证 TCP 连接的建立过程(SYN → SYN-ACK → ACK)。

2. 操作步骤

  1. 启动捕获

    • 选择接口(如以太网或 Wi-Fi),点击工具栏 鲨鱼鳍图标 开始抓包。
    • 设置显示过滤器:tcp && ip.addr == [目标服务器IP](如访问百度:tcp && ip.addr == 180.101.49.12)。
  2. 触发通信

    • 在浏览器访问目标网站(如 www.baidu.com),生成 TCP 连接请求。
  3. 分析数据包

    • 停止捕获,在数据包列表中查找 三次握手 过程:
      • SYN(Flags: SYN):客户端发起连接请求。
      • SYN-ACK(Flags: SYN, ACK):服务器响应确认。
      • ACK(Flags: ACK):客户端确认建立连接。
    • 右键点击任一握手包,选择 Follow → TCP Stream,查看完整会话。
  4. 关键字段解读

    • Sequence Number:初始序列号(ISN),每次握手递增。
    • Acknowledgment Number:确认对方序列号 + 1。
    • Flags:SYN、ACK 标志位的变化。

3. 预期结果

成功捕获三个连续数据包,标志位依次为 SYN → SYN-ACK → ACK,序列号符合逻辑递增,证明 TCP 连接正常建立。

8. 扩展学习

  • 高级协议解析:通过 Analyze → Decode As 自定义协议解析规则。
  • 统计工具:使用 Statistics → Protocol Hierarchy 查看流量占比。
  • 自动化脚本:结合 tshark(命令行版 Wireshark)批量分析数据。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

安宝特科技 | Vuzix Z100智能眼镜+AugmentOS:重新定义AI可穿戴设备的未来——从操作系统到硬件生态,如何掀起无感智能革命?

一、AugmentOS:AI可穿戴的“操作系统革命” 2025年2月3日,Vuzix与AI人机交互团队Mentra联合推出的AugmentOS,被业内视为智能眼镜领域的“iOS时刻”。这款全球首个专为智能眼镜设计的通用操作系统,通过三大突破重新定义了AI可穿戴…

基于Rook的Ceph云原生存储部署与实践指南(上)

#作者:任少近 文章目录 1 Ceph环境准备2 rook部署ceph群集2.1 Rook 帮助地址2.2 安装ceph2.3 获取csi镜像2.4 Master参加到osd2.5 设置默认存储 3 Rook部署云原生RBD块存储3.1 部署storageclass资源3.2 部署WordPress使用RBD3.3 WordPress访问 4 Rook部署云原生RGW…

2月27(信息差)

🌍雷军超钟睒睒登顶中国首富 身家近4400亿元 🎄全球AI大混战升温!超越Sora的阿里万相大模型开源 家用显卡都能跑 ✨小米15 Ultra、小米SU7 Ultra定档2月27日 雷军宣布:向超高端进发 1.刚刚!DeepSeek硬核发布&#xff…

【Linux】文件系统深度解析:从基础到高级应用

🎬 个人主页:努力可抵万难 📖 个人专栏:《C语法》《Linux系列》《数据结构及算法》 ⛰️ 路虽远,行则将至 目录 📚一、引言:文件系统的核心作用与历史演进 📖1.文件系统的定义与功…

《Effective Objective-C》阅读笔记(中)

目录 接口与API设计 用前缀避免命名空间冲突 提供“全能初始化方法” 实现description方法 尽量使用不可变对象 使用清晰而协调的命名方式 方法命名 ​编辑类与协议命名 为私有方法名加前缀 理解OC错误模型 理解NSCopying协议 协议与分类 通过委托与数据源协议进行…

MongoDB—(一主、一从、一仲裁)副本集搭建

MongoDB集群介绍: MongoDB 副本集是由多个MongoDB实例组成的集群,其中包含一个主节点(Primary)和多个从节点(Secondary),用于提供数据冗余和高可用性。以下是搭建 MongoDB 副本集的详细步骤&am…

【实战 ES】实战 Elasticsearch:快速上手与深度实践-1.3.1单节点安装(Docker与手动部署)

👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 10分钟快速部署Elasticsearch单节点环境1. 系统环境要求1.1 硬件配置推荐1.2 软件依赖 2. Docker部署方案2.1 部署流程2.2 参数说明2.3 性能优化建议 3. 手动部署方案3.1 安…

Rt-thread源码剖析(1)——内核对象

前言 该系列基于rtthread-nano的内核源码,来研究RTOS的底层逻辑,本文介绍RTT的内核对象,对于其他RTOS来说也可供参考,万变不离其宗,大家都是互相借鉴,实现不会差太多。 内核对象容器 首先要明确的一点是什…

html css js网页制作成品——HTML+CSS甜品店网页设计(5页)附源码

目录 一、👨‍🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨‍&#x1f…

Trae根据原型设计稿生成微信小程序密码输入框的踩坑记录

一、需求描述 最近经常使用Trae生成一些小组件和功能代码(对Trae赶兴趣的可以看之前的文章《TraeAi上手体验》),刚好在用uniapp开发微信小程序时需要开发一个输入密码的弹框组件,于是想用Trae来实现。原型设计稿如下:…

斩波放大器

目录 简介 自稳零斩波放大器 噪声 简介 双极性放大器的失调电压为25 μV,漂移为0.1 μV/C。斩波放大器尽管存在一些不利影 响,但可提供低于5 μV的失调电压,而且不会出现明显的失调漂移, 以下图1给出了基本的斩波放大器电路图。…

windows设置暂停更新时长

windows设置暂停更新时长 win11与win10修改注册表操作一致 ,系统界面不同 1.打开注册表 2.在以下路径 \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings 右键新建 DWORD 32位值,名称为FlightSettingsMaxPauseDays 根据需求填写数…

DIALOGPT:大规模生成式预训练用于对话响应生成

摘要 我们提出了一个大规模、可调节的神经对话响应生成模型,DIALOGPT(对话生成预训练变换器)。该模型训练于从2005年至2017年间Reddit评论链中提取的1.47亿次类似对话的交流,DIALOGPT扩展了Hugging Face的PyTorch变换器&#xff…

Mac端不显示正常用户名,变成192的解决方法

今天打开终端,本应该显示机器名的,但是此时显示了192。 问题原因: 当路由器的DNS使用默认的 192.168.1.1 或 192.168.0.1 的时候 Terminal 里的计算机名 会变成 localhost。当路由器的DNS使用自定义的 例如 运营商的DNS 或者 公共DNS的时候 …

SD 卡无屏安装启动树莓派5

最近想用一下树莓派5,拿出来一看,是 Micro-HMDI 的接口,手头正好没有这个接口线,便研究如何在没有显示屏的情况下,安装启动树莓派。 一、使用 Raspberry Pi Imager 烧录 SD 卡 选择 Raspberry Pi Imager 来烧录 SD 卡…

Xlua 编译 Windows、UWP、Android、iOS 平台支持库

Xlua 编译 Windows、UWP、Android、iOS 平台支持库 Windows: 安装 Visual Studio(推荐 2017 或更高版本) 安装 CMake(https://cmake.org/) macOS: 安装 Xcode 和命令行工具 安装 CMake 检查 cmake 是否安…

npm : 无法加载文件 E:\ProgramFiles\Nodejs\npm.ps1,因为在此系统上禁止运行脚本。

这个错误是因为 Windows 系统的 PowerShell 执行策略 限制了脚本的运行。默认情况下,PowerShell 的执行策略是 Restricted,即禁止运行任何脚本。以下是解决该问题的步骤: 1. 检查当前执行策略 打开 PowerShell(管理员权限&#x…

基于专利合作地址匹配的数据构建区域协同矩阵

文章目录 地区地址提取完成的处理代码 在专利合作申请表中,有多家公司合作申请。在专利权人地址中, 有多个公司的地址信息。故想利用这里多个地址。想用这里的地址来代表区域之间的专利合作情况代表区域之间的协同、协作情况。 下图是专利合作表的一部分…

若依vue plus环境搭建

继前面文章若依系统环境搭建记录-CSDN博客 把ruoyi vue plus也摸索了下。 作者是疯狂的狮子,dromara/RuoYi-Vue-Plus 初始化文档:项目初始化,环境搭建的视频:RuoYi-Vue-Plus 5.0 搭建与运行_哔哩哔哩_bilibili 上来就列出了一…

在ubuntu如何安装samba软件?

我们在开发过程中,经常修改代码,可以安装samba文件来实现,把ubuntu的存储空间指定为我们win上的一个磁盘,然后我们在或者磁盘里面创建.c文件,进行代码修改和编写。samba能将linux的文件目录直接映射到windows&#xff…