Wireshark网络协议分析 - Wireshark速览
在我的博客阅读本文
文章目录
- 1. 版本与平台
- 2. 快速上手
- 2.1. 选择网络接口进行捕获(Capture)
- 2.2. 以Ping命令为例进行抓包分析
- 2.3. 设置合适的过滤表达式
- 2.4. 数据包详情
- 2.5. TCP/IP 四层模型
- 3. 参考资料
1. 版本与平台
Wireshark是一个开源的网络数据包分析器,本文基于Windows11平台,Wireshark使用的是4.2.0版本,有官方的中文支持。

2. 快速上手
2.1. 选择网络接口进行捕获(Capture)
打开Wireshark第一步需要选择一个网络接口:

这里可以根据实际情况选择一个接口,笔者这里是WLAN上网的环境,重点看一下两个接口:
WLAN:无线局域网流量接口adapter for loopback traffic capture:回环流量接口
举2个例子。
场景一:
我本地启动了一台tcp服务器,它的地址端口是127.0.0.1:9820;同时,我在本地9821端口启动了一台tcp客户端连接这个服务器,他的流量路径是:
127.0.0.1:9821 → 127.0.0.1:9820
此时,流量无需经过外部网关转发,是一个纯粹的系统内部端口直连流量,这种情况下就应该使用adapter for loopback traffic capture接口进行捕获。
场景二:
如果我是本地电脑访问比如https://masaiqi.com这种公网的网站,需要通过WLAN接口访问路由器进而访问,应该使用WLAN接口进行捕获。
2.2. 以Ping命令为例进行抓包分析
我这里选择的是捕获WLAN接口,执行以下命令:
ping masaiqi.com
在WireShark中我们有以下结果:

2.3. 设置合适的过滤表达式
WLAN接口是我们本地访问公网的接口,所有流量都将被拦截,我们首先需要通过过滤器去定位我们需要的流量。
我们知道,Ping命令主要包含两个过程,DNS Query + ICMP。
因此,可以看到在WireShark的过滤表达式我们输入了以下过滤条件,即DNS协议或者ICMP协议:
dns or ((_ws.col.protocol == "ICMP") )
当表达式正确时,Wireshark会显示绿色,反之则是红色。
2.4. 数据包详情
这部分是Wireshark的核心部分,以序号1167这行数据为例,点击后WireShark显示如下:

主要分为两部分:
- 绿圈部分则为原始的二进制数据流,当然这里
Wireshark采用了十六进制进行展示。 - 红色方框为原始二进制数据流的具体含义,Wireshark很贴心的帮我们“翻译”原始二进制数据流。当鼠标放在红圈的某一行数据时,
Wireshark会在绿圈中用蓝色背景色提示你这里对应原始数据流的哪一部分数据。
点开“Domain Name System”:

根据笔者的观察,这里分为两种字段:
- 直接展示的字段,比如
Flags,直接值就是0x0100,和原始数据流一一对应。 - 用中括号包裹的字段,比如
[Name Length],这种一般是字节流没有直接表示,而是Wireshark根据当前上下文(可能不止当前的包)推断出来的。
数据包详情中有部分数据Wireshark会帮我们显示在Info列中,比如这里我们从封包内容读出是DNS查询masaiqi.com,数据包的Info列中也有相关内容展示。
2.5. TCP/IP 四层模型
封包详情中这部分数据刚好对应TCP/IP四层模型中的模型层次(原谅笔者草率的图)

TCP/IP 四层模型,是分析Wireshark数据帧(数据包)的基础知识。
关于网络的框架模型普遍存在两套理解,即OSI七层模型与TCP/IP四层模型,本质上只是考虑问题的维度不一样,二者的关系如下:

对于TCP/IP四层模型来说:
- Application(应用层):用户直接与之交互的层,负责处理具体的应用程序细节。包括HTTP等协议(本例中使用域名查询服务)
- Transport(传输层):负责在源点和目的地之间提供端到端的通信。包括TCP协议,UDP协议。(本例中使用
UDP协议) - Internet(网络层,网络互连层):负责在网络中传输数据包。包括互联网协议(IP)。(本例中的
IP协议,源ip与目标IP) - Network(网络接口层):负责在以太网、WiFi 这样的底层网络上发送原始数据包,工作在网卡这个层次,使用 MAC 地址来标识网络上的设备。(本例中是网络设备的
MAC地址,源设备MAC地址与目标MAC地址)
这里仅快速了解一下TCP/IP四层模型的知识,不结合实例来说就是死记硬背了,后续会结合具体的封包内容,按协议不同单独分析。
3. 参考资料
- 林沛满 -《Wireshark网络分析就这么简单》
- 刘超 ——《趣谈网络协议》
相关文章:
Wireshark网络协议分析 - Wireshark速览
在我的博客阅读本文 文章目录 1. 版本与平台2. 快速上手2.1. 选择网络接口进行捕获(Capture)2.2. 以Ping命令为例进行抓包分析2.3. 设置合适的过滤表达式2.4. 数据包详情2.5. TCP/IP 四层模型 3. 参考资料 1. 版本与平台 Wireshark是一个开源的网络数据…...
查看进程创建的所有线程
ps 在ps命令中,“-T”选项可以开启线程查看。下面的命令列出了由进程号为的进程创建的所有线程。 ps -T -p <pid>top op命令可以实时显示各个线程情况。要在top输出中开启线程查看,请调用top命令的“-H”选项,该选项会列出所有Linux…...
汽车软件开发模式的5个特点
汽车软件开发属于较为复杂的系统工程,经常让来自不同知识背景的工程师在观点交锋时出现分歧。在解决复杂性和对齐讨论基准时,可以通过勾勒出讨论对象最关键的几个特征来树立典型概念。本文旨在通过5个典型特点的抽取,来勾勒出汽车软件开发模式…...
双屏联动系统在展厅设计中的互动类型与效果
随着各项多媒体技术的快速发展,让展厅中的各类展项得到技术升级,其中作为电子设备中最基础的显示技术,不仅优化了内容的展示质量,还实现了更具互动性的创新技术,如双屏联动系统就是当前展厅设计中最常见的技术类型之一…...
STM32F407移植OpenHarmony笔记5
继上一篇笔记,搭建好STM32的编译框架,编译出来的OHOS_Image.bin并不能跑不起来。 今天要在bsp里面添加一些代码,让程序能跑起来。 先从裸机点亮LED灯开始,准备以下3个文件:startup和system文件可以用OHOS官方代码。 /device/boar…...
点击其他区域隐藏弹出框效果
一般下拉框或者选择框,持久展示时会给用户显示的隐藏方式,如点击事件后。也可以添加隐式的隐藏方式,如点击弹出框之外的区域。 CSS方法-focus伪类 当触发的元素是可以focus,以输入框为例。 可以将弹出框出现的时机设置在input:…...
Python一些可能用的到的函数系列123 ATimer2-时间偏移
说明 之前确定了时间轴(千年历),以及时间的转换方法。其中时间轴的数据将会存储在集群,以及通过RedisOrMongo保存部分常用的数据。 本次讨论时间偏移的度量问题。 内容 1 两种形式 我们提到时间时,通常会有两种方…...
企业微信主体变更 怎么操作?
企业微信变更主体有什么作用?当我们的企业因为各种原因需要注销或已经注销,或者运营变更等情况,企业微信无法继续使用原主体继续使用时,可以申请企业主体变更,变更为新的主体。企业微信变更主体的条件有哪些࿱…...
《区块链简易速速上手小册》第8章:区块链的技术挑战(2024 最新版)
文章目录 8.1 可扩展性问题8.1.1 基础知识8.1.2 主要案例:比特币的可扩展性挑战8.1.3 拓展案例 1:以太坊的可扩展性改进8.1.4 拓展案例 2:侧链和分层解决方案 8.2 安全性与隐私8.2.1 基础知识8.2.2 主要案例:比特币交易的安全性8.…...
基于STM32的云上OneNET智慧大棚(包含程序设计报告)
目录 概要 作品介绍 设计原理 设计作品结构 软件部分 概要 为了解决传统农业生产效率低下,消耗大量的人力物力,不能精确的对农作物实现监控的问题,从而最大限度的提高农业生产力,实现优质、高产、低耗、环保的可持续发展物联…...
11.scala函数进阶
目录 概述函数scala函数和方法的区别第一种第二种方法转函数 函数柯里化 结束 概述 函数 vs 方法 1.定义 方法:def函数:> 2.方法本质上是一个特殊的函数3.函数是一等公民,函数可以当做值来传递,方法的参数,返回值…...
在WebSocket中使用Redis出现空指针异常解决方案
文章目录 在WebSocket中使用Redis1.问题描述2.原因3.解决步骤1.新建一个SpringUtil.java类,通过getBean的方法主动获取实例2.在WebSocketSingleServer.java中导入 在WebSocket中使用Redis 1.问题描述 在controller 和 service中都可以正常使用Redis,在…...
问题:第十三届全国人民代表大会第四次会议召开的时间是()。 #经验分享#知识分享#媒体
问题:第十三届全国人民代表大会第四次会议召开的时间是()。 A. 2018年3月3日至3月11日 B. 2019年3月5日至3月11日 C. 2020年3月5日至3月11日 D. 2021年3月5日至3月11日 参考答案如图所示 问题:顾客满意是顾客对一件产品满足…...
《区块链简易速速上手小册》第10章:区块链的未来与趋势(2024 最新版)
文章目录 10.1 区块链的未来展望10.1.1 基础知识10.1.2 主要案例:区块链在金融领域的发展10.1.3 拓展案例 1:区块链在供应链管理中的应用10.1.4 拓展案例 2:区块链在身份管理和隐私保护中的应用 10.2 新兴技术与区块链的融合10.2.1 基础知识1…...
JVM工作原理与实战(三十一):诊断内存泄漏的原因
专栏导航 JVM工作原理与实战 RabbitMQ入门指南 从零开始了解大数据 目录 专栏导航 前言 一、诊断原因 二、MAT内存泄漏检测的原理 总结 前言 JVM作为Java程序的运行环境,其负责解释和执行字节码,管理内存,确保安全,支持多线…...
#{}和${}的区别
#{}和${}的区别 .本质区别:使用注意事项防止SQL注入排序like查询 . 在使用mybatis操作数据库的时候,我们在编写sql语言的时候,会遇到一个问题,就是在传参的时候,有两个符号#,$.这两个符号有什么异同呢,接下来,我就会带着大家对这个问题进行简单的探讨 本质区别: #执行的是预编…...
【数据结构】(三)树Tree
目录 1、基本概念 2、二叉树Binary Tree 3、树、森林与二叉树的转换 4、赫夫曼树Huffman Tree与赫夫曼编码Huffman Coding 1、基本概念 (1)树(Tree)是 n(n ≥\geq 1)个节点的有限集,n 0时称…...
扩展坞 接两个显示器
笔记本电脑如何外接两个显示器,达到三个屏同时显示? 3 笔记本有 2 个显示扩展接口 目前笔记本中最常见的就是 1 个 HDMI 口 1 个支持 DP 协议的 Type-C 口或 2 个支持 DP 协议的 Type-C 口,此时使用 HDMI 线和 Type-C 转接线分别直连两台显…...
鸿蒙 ArkTS 从数组内查找指定的数据
let arr [1, 2, 3, 4, 5]; let target 3; let result arr.filter(item > item target); let a String(result) 将数字转换成文本型 console.log(a); 亲爱的读者: 首先,我要感谢您抽出宝贵的时间阅读这篇文章。我深知,您的每一分每一…...
qemu 抓取linux kernel vmcore
一、背景 在qemu调试linux kernel时 有时我们会遇到dump 情况,这时可以通过gdb 方式连接分析dump, 但实际中我们用得更多的是离线dump 分析,分析的文件通常是vmcore(linux kernel panic 生成的coredump文件)或者ramdu…...
【收藏 2026 版】程序员零基础转 AI 应用赛道!不用深耕算法训练,靠现有编程功底轻松转行
当下 AI 技术全面普及,传统开发岗位竞争日趋激烈,不少程序员都想顺势切入人工智能领域。很多人觉得入行 AI 就得钻研复杂算法、上手大模型训练,门槛高到难以触碰。实则 2026 年 AI 应用开发门槛大幅降低,拥有基础编程能力…...
口岸突发事件回溯,无感定位实现 UWB 达不到的全域时空复盘
口岸突发事件回溯,无感定位实现 UWB 达不到的全域时空复盘口岸突发事件应急复盘、轨迹溯源、责任界定是国门安全风控、事件处置、执法取证的核心关键。口岸闯关冲卡、违规尾随、异常聚集、滞留徘徊、人车冲突等突发场景具备瞬时性、跨区域、高动态、多主体混杂特征&…...
STM32MP1 M4核心定时器中断实战:从原理到1ms精准时基实现
1. 项目概述:深入STM32MP1的M4核心定时器世界在嵌入式开发中,定时器(Timer)堪称是系统的“心跳”和“节拍器”,其重要性不言而喻。对于STM32MP1这款集成了双核Cortex-A7和单核Cortex-M4的异构处理器,其M4核…...
解锁Midjourney V6复古风生产力:3步精准控制颗粒度、褪色曲线与时代错位感(附12组实测Prompt参数表)
更多请点击: https://codechina.net 第一章:Midjourney V6复古美学的底层逻辑重构 Midjourney V6 并非简单迭代,而是对“视觉时间性”的一次系统性重编码——其复古美学并非依赖滤镜叠加或风格迁移模型,而是将胶片颗粒、暗房化学…...
显卡驱动清理终极指南:DDU完整教程与深度解析
显卡驱动清理终极指南:DDU完整教程与深度解析 【免费下载链接】display-drivers-uninstaller Display Driver Uninstaller (DDU) a driver removal utility / cleaner utility 项目地址: https://gitcode.com/gh_mirrors/di/display-drivers-uninstaller 显卡…...
AI 调研平台,以智能技术重构全域调研数字化体系
在各行各业的业务研判、市场分析、工作调研场景中,传统调研模式长期依赖人工采集、手动整理、经验分析,存在明显的技术与效率短板。人工调研数据来源零散、数据清洗繁琐、分析维度单一,不仅耗费大量人力时间,还容易出现数据遗漏、…...
揭秘FPGA内部世界:PrjXRay开源工具完整指南
揭秘FPGA内部世界:PrjXRay开源工具完整指南 【免费下载链接】prjxray Documenting the Xilinx 7-series bit-stream format. 项目地址: https://gitcode.com/gh_mirrors/pr/prjxray 你是否曾好奇FPGA芯片内部的神秘世界?那些二进制位流背后究竟隐…...
心理学论文降AI工具免费推荐:2026年心理学毕业论文知网维普降AI4.8元亲测完整方案
心理学论文降AI工具免费推荐:2026年心理学毕业论文知网维普降AI4.8元亲测完整方案 答辩前夕,AI率36%,学校要求15%以下。 用嘎嘎降AI(www.aigcleaner.com),4.8元,两小时搞定,一次过…...
c#string字符串
//API 应用程序接口 内置函数 //字符串的属性 string a "abcd";//表示字符串中 字符的个数Console.WriteLine(a.Length);//字符串是可以通过 索引 取值的 因为string类内部顶一个一个索引器char c a[2];Console.WriteLine(c);string s1 "abc";st…...
为什么你的NotebookLM中文摘要总漏关键信息?3个被官方文档忽略的语言标记陷阱,90%用户正在踩坑
更多请点击: https://kaifayun.com 第一章:NotebookLM多语言支持 NotebookLM 原生支持多种语言的文档理解与对话生成,其底层模型经过多语言语料联合训练,可无缝处理中、英、日、韩、法、德、西等 20 种语言的混合输入。用户上传非…...
