Wireshark 使用教程 | 抓包分析与应用实践

注:本文为 “Wireshark 使用教程” 教程合辑。
图片清晰度受引文原图所限。
略作重排,如有内容异常,请看原文。


超详细的 Wireshark 抓包使用教程

普通网友 于 2024-05-07 发布

Wireshark 是一款广泛使用的网络封包分析软件,能够截取各种网络数据包并显示其详细信息。它在开发测试过程中常用于问题定位。本文主要内容包括:

  1. Wireshark 软件的下载、安装及主界面介绍。
  2. Wireshark 简单抓包示例,包括抓包操作及基本的数据包查看与分析方法。
  3. Wireshark 过滤器的使用,涵盖抓包过滤器和显示过滤器的设置与应用。

Wireshark 软件安装

软件下载路径为 Wireshark 官网。根据系统版本选择相应版本下载,并按照软件提示完成安装。

说明:对于 Windows 10 系统,安装完成后若选择抓包但不显示网卡,需下载 Win10pcap 兼容性安装包。

Wireshark 开始抓包示例

本节通过一个使用 Wireshark 抓取 ping 命令操作的示例,介绍抓包的具体过程。

  1. 打开 Wireshark 2.6.5,主界面如下:

    Wireshark 主界面

  2. 选择菜单栏中的 CaptureOption,勾选 WLAN 网卡(根据各自电脑网卡使用情况选择,可参考 IP 对应的网卡)。点击 Start 启动抓包。

    抓包设置

  3. Wireshark 启动后,处于抓包状态。

    抓包状态

  4. 执行需要抓包的操作,例如在命令提示符窗口下执行 ping www.baidu.com

  5. 操作完成后,相关数据包已被抓取。为避免其他无关数据包影响分析,可在过滤栏设置过滤条件进行数据包列表过滤。例如,ip.addr == 119.75.217.26 and icmp 表示仅显示 ICMP 协议且源主机 IP 或目标主机 IP 为 119.75.217.26 的数据包。注意协议名称需小写。

    过滤结果

  6. Wireshark 抓包完成。关于 Wireshark 显示过滤条件、抓包过滤条件以及如何查看数据包中的详细内容将在后续部分介绍。

Wireshark 抓包界面介绍

Wireshark 抓包界面

说明:数据包列表区中,不同协议使用不同颜色区分。协议颜色标识可在菜单栏 ViewColoring Rules 中设置。

Wireshark 主要界面组成

  1. Display Filter(显示过滤器):用于设置过滤条件进行数据包列表过滤。菜单路径为 AnalyzeDisplay Filters

    显示过滤器

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

    数据包列表

  3. Packet Details Pane(数据包详细信息):在数据包列表中选择指定数据包后,此面板将显示数据包的所有详细信息内容。它是分析协议字段的关键部分,信息行包括:

    • Frame:物理层的数据帧概况。
    • Ethernet II:数据链路层以太网帧头部信息。
    • Internet Protocol Version 4:互联网层 IP 包头部信息。
    • Transmission Control Protocol:传输层 TCP 数据段头部信息。
    • Hypertext Transfer Protocol:应用层 HTTP 协议信息。

    数据包详细信息

  4. Dissector Pane(数据包字节区):显示数据包的字节内容。

Wireshark 过滤器设置

初学者使用 Wireshark 时,可能会捕获到大量冗余数据包,难以找到所需部分。Wireshark 提供了两种过滤器,帮助用户在大量数据中快速定位所需信息。

1. 抓包过滤器

抓包过滤器的菜单路径为 CaptureCapture Filters,用于在捕获数据包前设置过滤规则。

使用方法:在捕获数据包前设置过滤条件。例如,ip host 60.207.246.216 and icmp 表示仅捕获主机 IP 为 60.207.246.216 的 ICMP 数据包。

2. 显示过滤器

显示过滤器用于在捕获数据包后设置过滤条件,以便对数据包进行筛选。通常在捕获条件较宽泛或未设置过滤规则时使用。

示例:在未设置捕获规则的情况下,直接通过网卡捕获所有数据包后,使用 ip.addr == 211.162.2.183 and icmp 过滤条件提取分析信息。

Wireshark 过滤器表达式规则

1. 抓包过滤器语法和实例

抓包过滤器包含以下元素:类型(Type,如 host、net、port)、方向(Dir,如 src、dst)、协议(Proto,如 ether、ip、tcp、udp、http、icmp、ftp 等)以及逻辑运算符(&& 与、|| 或、!非)。

  • 协议过滤:直接在抓包过滤框中输入协议名。例如:

    • tcp:仅显示 TCP 协议的数据包。
    • http:仅显示 HTTP 协议的数据包。
    • icmp:仅显示 ICMP 协议的数据包。
  • IP 过滤

    • host 192.168.1.104:捕获与 192.168.1.104 相关的所有数据包。
    • src host 192.168.1.104:仅捕获源地址为 192.168.1.104 的数据包。
    • dst host 192.168.1.104:仅捕获目标地址为 192.168.1.104 的数据包。
  • 端口过滤

    • port 80:捕获端口为 80 的数据包。
    • src port 80:仅捕获源端口为 80 的数据包。
    • dst port 80:仅捕获目标端口为 80 的数据包。
  • 逻辑运算符

    • src host 192.168.1.104 && dst port 80:捕获源地址为 192.168.1.104 且目标端口为 80 的数据包。
    • host 192.168.1.104 || host 192.168.1.102:捕获主机地址为 192.168.1.104 或 192.168.1.102 的数据包。
    • !broadcast:不捕获广播数据包。

2. 显示过滤器语法和实例

  • 比较操作符:包括 ==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)。

  • 协议过滤:直接在过滤框中输入协议名,注意协议名称需小写。例如:

    • tcp:仅显示 TCP 协议的数据包。
    • http:仅显示 HTTP 协议的数据包。
    • icmp:仅显示 ICMP 协议的数据包。
  • IP 过滤

    • ip.src == 192.168.1.104:显示源地址为 192.168.1.104 的数据包。
    • ip.dst == 192.168.1.104:显示目标地址为 192.168.1.104 的数据包。
    • ip.addr == 192.168.1.104:显示源 IP 地址或目标 IP 地址为 192.168.1.104 的数据包。
  • 端口过滤

    • tcp.port == 80:显示源主机或目标主机端口为 80 的数据包。
    • tcp.srcport == 80:仅显示 TCP 协议的源主机端口为 80 的数据包。
    • tcp.dstport == 80:仅显示 TCP 协议的目标主机端口为 80 的数据包。
  • Http 模式过滤

    • http.request.method == "GET":仅显示 HTTP GET 方法的数据包。
  • 逻辑运算符andornot。例如,ip.addr == 192.168.1.104 and icmp 表示获取 IP 地址为 192.168.1.104 的 ICMP 数据包。

  • 数据包内容过滤:假设需要根据 ICMP 层的内容进行过滤,可单击选中界面中的码流,在下方进行选中数据。右键单击选中后,选择 Select,在过滤器中显示条件表达式。例如,过滤出数据包中包含 "abcd" 内容的数据流,条件表达式为 contains "abcd"

Wireshark 抓包分析 TCP 三次握手

1. TCP 三次握手连接建立过程

  • Step 1:客户端发送一个 SYN=1ACK=0 标志的数据包给服务端,请求建立连接。
  • Step 2:服务端收到请求并允许连接后,发送一个 SYN=1ACK=1 标志的数据包给客户端,告知可以通信,并要求客户端发送确认数据包。
  • Step 3:客户端发送一个 SYN=0ACK=1 的数据包给服务端,确认连接已建立,TCP 连接成功,开始通信。

2. Wireshark 抓包获取访问指定服务端数据包

  • Step 1:启动 Wireshark 抓包,打开浏览器输入 www.huawei.com
  • Step 2:使用 ping www.huawei.com 获取 IP 地址。
  • Step 3:输入过滤条件 ip.addr == 211.162.2.183 获取待分析数据包列表。

从图中可以看到,Wireshark 截获了三次握手的三个数据包。第四个包才是 HTTP 数据包,这表明 HTTP 确实是通过 TCP 建立连接的。

第一次握手数据包

客户端发送一个 TCP 数据包,标志位为 SYN,序列号为 0,表示客户端请求建立连接。

关键属性

  • SYN:标志位,表示请求建立连接。
  • Seq = 0:初始建立连接值为 0,数据包的相对序列号从 0 开始,表示当前尚未发送数据。
  • Ack = 0:初始建立连接值为 0,表示尚未接收到数据。

第二次握手的数据包

服务器发回确认包,标志位为 SYN, ACK,将确认序号设置为客户端的初始序列号加 1,即 0+1=1。

关键属性

  • [SYN + ACK]:标志位,表示同意建立连接并回送 SYN+ACK
  • Seq = 0:初始建立值为 0,表示尚未发送数据。
  • Ack = 1:表示当前端成功接收的数据位数。虽然客户端尚未发送任何有效数据,但确认号仍被加 1,因为包含 SYNFIN 标志位的包不携带有效数据。

第三次握手的数据包

客户端再次发送确认包(ACK),SYN 标志位为 0,ACK 标志位为 1。客户端将服务器发来的 ACK 序号字段加 1,并将其放在确认字段中发送给对方。

关键属性

  • ACK:标志位,表示已收到记录。
  • Seq = 1:表示当前已发送 1 个数据。
  • Ack = 1:表示当前端成功接收的数据位数。虽然服务端尚未发送任何有效数据,但确认号仍被加 1,因为包含 SYNFIN 标志位的包不携带有效数据。

通过 TCP 三次握手,连接建立成功,开始进行数据交互。

数据交互过程的数据包说明

数据包关键属性

  • Seq: 1:表示当前已发送 1 字节数据。
  • Ack: 1:表示当前共收到 1 字节数据。
  • Seq: 1:表示当前已发送 1 字节数据。
  • Ack: 951:表示服务端共收到 951 字节数据。

在 TCP 层,FLAGS 字段包含以下标识:SYNFINACKPSHRSTURG。其中,日常分析中常用的字段为前五个,其含义如下:

  • SYN:表示建立连接。
  • FIN:表示关闭连接。
  • ACK:表示响应。
  • PSH:表示有数据传输。
  • RST:表示连接重置。

Wireshark 分析常用操作

调整数据包列表中时间戳的显示格式。调整方法为 ViewTime Display FormatDate and Time of Day。调整后的格式如下:

时间戳显示格式


这么详细的 Wireshark 的抓包和分析,工作中是没人告诉你的!

小杰的网工专栏 原创于 2024-09-13 13:48:52 发布

引言

Wireshark 是一款功能强大的网络封包分析软件,广泛应用于网络封包和流量分析领域。它通过捕获网络封包并展示详细的封包信息,为网络工程师和分析师提供了深入分析网络通信的工具。本文将详细介绍 Wireshark 的使用方法,包括主界面介绍、简单抓包示例以及过滤器的使用。

Wireshark 主界面介绍

Wireshark 的主界面是用户与软件交互的主要场所。打开 Wireshark 后,用户将看到如下界面:

Wireshark 主界面

在主界面中,用户可以通过选择菜单栏中的 CaptureOption 来配置抓包选项。例如,用户可以根据自身需求选择对应的网卡(如 WLAN),并点击 Start 启动抓包过程。

抓包配置

启动抓包后,Wireshark 将进入抓包状态,实时显示网络中的数据包信息。

抓包状态

Wireshark 简单抓包示例

为了帮助用户快速上手,以下是一个简单的抓包示例。通过该示例,用户可以学习如何捕获数据包并进行基本的查看与分析。

  1. 执行抓包操作:用户可以执行如 ping www.baidu.com 的命令,以生成可捕获的数据包。
  2. 数据包过滤:为了便于分析,用户可以在过滤栏中设置过滤条件。例如,使用 ip.addr == 119.75.217.26 and icmp 来筛选出特定 IP 地址和协议的数据包。

过滤结果

通过上述步骤,用户可以快速捕获并筛选出所需的数据包,为进一步的分析打下基础。

Wireshark 抓包界面详解

Wireshark 的抓包界面由多个部分组成,每个部分都有其特定的功能和用途。

数据包列表区

数据包列表区以不同颜色区分不同协议的数据包,便于用户快速识别。用户可以通过菜单栏的 ViewColoring Rules 来查看和修改颜色规则。

颜色规则

主要界面组件

Wireshark 的主要界面组件包括:

  1. 显示过滤器(Display Filter):用于设置过滤条件,以便从数据包列表中筛选出特定的数据包。菜单路径为 AnalyzeDisplay Filters

    显示过滤器

  2. 数据包列表(Packet List Pane):显示捕获到的数据包,每个数据包包含编号、时间戳、源地址、目标地址、协议、长度以及数据包信息。

    数据包列表

  3. 数据包详细信息(Packet Details Pane):显示选定数据包的所有详细信息,是分析协议字段的关键部分。信息行包括:

    • Frame:物理层的数据帧概况。
    • Ethernet II:数据链路层以太网帧头部信息。
    • Internet Protocol Version 4:互联网层 IP 包头部信息。
    • Transmission Control Protocol:传输层 TCP 数据段头部信息。
    • Hypertext Transfer Protocol:应用层 HTTP 协议信息。

    数据包详细信息

  4. 数据包字节区(Dissector Pane):显示数据包的字节内容,便于用户查看原始数据。

Wireshark 过滤器设置

Wireshark 提供了两种类型的过滤器,帮助用户在大量数据中快速找到所需信息。

抓包过滤器

抓包过滤器用于在捕获数据包之前设置过滤条件。用户可以通过菜单栏的 CaptureCapture Filters 来配置抓包过滤器。

抓包过滤器

例如,使用 ip host 60.207.246.216 and icmp 可以仅捕获特定主机的 ICMP 数据包。

显示过滤器

显示过滤器用于在捕获数据包后设置过滤条件,以便从大量数据中筛选出特定的数据包。用户可以在捕获数据包时设置较宽泛的条件,然后使用显示过滤器进行进一步筛选。

显示过滤器

例如,使用 ip.addr == 211.162.2.183 and icmp 可以筛选出特定 IP 地址和协议的数据包。

过滤器语法与实例

Wireshark 的过滤器语法包括以下几种类型:

  1. 抓包过滤器语法

    • 协议过滤:直接输入协议名,如 tcphttpicmp
    • IP 过滤:如 host 192.168.1.104src host 192.168.1.104
    • 端口过滤:如 port 80src port 80
    • 逻辑运算符:如 &&(与)、||(或)、!(非)。
  2. 显示过滤器语法

    • 比较操作符:如 ==(等于)、!=(不等于)、>(大于)。
    • 协议过滤:输入协议名,注意使用小写,如 tcphttpicmp
    • IP 过滤:如 ip.src == 192.168.1.104ip.dst == 192.168.1.104
    • 端口过滤:如 tcp.port == 80tcp.srcport == 80
    • 逻辑运算符:如 andornot

通过合理使用过滤器,用户可以高效地筛选出所需的数据包,提高分析效率。

Wireshark 抓包分析 TCP 三次握手

TCP 三次握手是建立 TCP 连接的标准过程。以下是 Wireshark 捕获的 TCP 三次握手过程的分析。

TCP 三次握手过程

  1. 第一次握手:客户端发送一个带有 SYN=1ACK=0 标志的数据包给服务端,请求建立连接。
  2. 第二次握手:服务端收到请求后,发送一个带有 SYN=1ACK=1 标志的数据包给客户端,表示同意建立连接。
  3. 第三次握手:客户端发送一个带有 SYN=0ACK=1 标志的数据包给服务端,确认连接已建立。

抓包分析

通过 Wireshark 捕获的数据包,可以清晰地看到 TCP 三次握手的三个数据包。以下是具体的分析步骤:

  1. 启动 Wireshark:打开 Wireshark 并开始抓包。
  2. 访问目标网站:通过浏览器访问目标网站,如 www.huawei.com
  3. 获取 IP 地址:使用 ping www.huawei.com 获取目标网站的 IP 地址。
  4. 设置过滤条件:输入过滤条件 ip.addr == 211.162.2.183,以筛选出与目标 IP 地址相关的数据包。

过滤条件

通过上述步骤,用户可以清晰地看到 TCP 三次握手的三个数据包,从而确认 HTTP 连接是通过 TCP 建立的。

数据包关键属性

每个数据包的关键属性如下:

  • 第一次握手数据包

    • SYN:标志位,表示请求建立连接。
    • Seq = 0:初始建立连接值为 0,数据包的相对序列号从 0 开始。
    • Ack = 0:初始建立连接值为 0,表示尚未接收到数据。
  • 第二次握手数据包

    • [SYN + ACK]:标志位,表示同意建立连接。
    • Seq = 0:初始建立值为 0。
    • Ack = 1:表示已成功接收一个数据位。
  • 第三次握手数据包

    • ACK:标志位,表示已收到记录。
    • Seq = 1:表示已发送 1 个数据。
    • Ack = 1:表示已成功接收一个数据位。

通过 TCP 三次握手,连接成功建立,随后开始数据交互。

Wireshark 分析常用操作

Wireshark 提供了许多实用的分析工具和功能,帮助用户更高效地进行网络分析。

调整时间戳显示格式

用户可以通过 ViewTime Display FormatDate and Time of Day 调整数据包列表中时间戳的显示格式。

时间戳格式

其他常用操作

Wireshark 还可以与主流厂家的模拟器配合使用,以实现更准确的项目配置。

结语

Wireshark 是一款功能强大的网络封包分析工具,通过本文的介绍,用户可以快速掌握其基本使用方法,包括主界面操作、简单抓包示例以及过滤器的使用。希望本文能够帮助用户在实际工作中更好地应用 Wireshark,提高网络分析的效率和准确性。


Wireshark 抓取 HTTPS 数据包

Sun@Python 于 2023-01-11 修改

1. Wireshark 抓包为什么不显示 HTTPS 数据?

Wireshark 是基于网络层的抓包工具,通过捕获通信双方的 TCP/IP 包实现内容提取。对于应用层的数据,如果应用层协议是公开的,则可以直接显示数据。然而,处理 HTTPS 协议时,由于无法获取客户端和服务端的私钥,因此对应的数据不可见。如果 Wireshark 能够获取私钥,则可以显示 HTTPS 的通信数据。

2. 利用 Chrome 浏览器实现对 HTTPS 的抓包

  1. 配置环境变量:设置环境变量 SSLKEYLOGFILEC:\Users\Sun\sslkey.log

    注意:此环境变量需根据个人电脑配置进行设置。使用时添加,不使用时删除,以免在其他程序运行时引发异常,例如 OPENSSL_Uplink(XX……XX,08): no OPENSSL_Applink

  2. 重启谷歌浏览器,检查指定位置是否生成了 sslkey.log 文件。

    SSLKEYLOGFILE

  3. 配置 Wireshark:进入 EditPreferencesProtocolsTLS,在 “(Pre)-Master-Secret log filename” 中填入 sslkey.log 的完整路径。

    TLS 配置

  4. 抓取 HTTPS 数据包:使用谷歌浏览器访问 HTTPS 网站,或在浏览器控制台发送请求。

    备注

    1. 打开控制台(或右键页面选择 检查,切换到 Console 控制台)。

    2. 在控制台输入以下代码:

      fetch(new Request('url 地址', {method: 'POST'})).then((resp) => {console.log(resp)})
      

      其中,url 地址 是需要访问的接口路径。如果需要传递参数,可将请求参数添加到 URL 后面(与 GET 请求方式相同)。

    3. 完成后,按 回车。在地址请求栏中可以看到接口的请求信息。

    控制台请求

    如果解密失败,将显示以下内容:

    解密失败

    注意:不使用时,务必删除配置的路径,因为 C:\Users\Sun\sslkey.log 文件会不断增大,影响其他程序的运行。


Wireshark 抓取 HTTPS 明文并提取其资源内容的配置和操作流程

xingrun 于 2025-06-05 发布

1. Wireshark 抓取 HTTPS 明文报文的配置与操作流程

原理:通过获取 HTTPS 会话的 TLS 预主密钥,Wireshark 可以解密流量。需要配置浏览器或系统导出密钥日志文件。

步骤:

  1. 设置环境变量(导出密钥日志),二选一

    • Windows (CMD/PowerShell)

      set SSLKEYLOGFILE=D:\Program\WiresharkPortable64\sslkey.log
      
    • Windows (图形界面操作)

      配置环境变量

  2. 配置浏览器使用该环境变量

    • Firefox:启动时自动读取环境变量。

    • Chrome/Edge:需从配置了环境变量的终端启动:

      # Linux/macOS
      google-chrome
      
      # Windows(在已设置环境变量的 CMD 中启动)
      start chrome.exe
      

      如果通过图形界面设置环境变量,重启 Chrome 浏览器即可。

      检查文件 D:\Program\WiresharkPortable64\sslkey.log 中是否已存储 TLS 密钥信息。

  3. 配置 Wireshark 解析密钥

    • 打开 Wireshark → EditPreferencesProtocolsTLS

    • “(Pre)-Master-Secret log filename” 中填入 sslkey.log 的完整路径。

      TLS 配置

  4. 抓包与验证

    • 开始抓包,访问 HTTPS 网站(如 https://www.baidu.com)。
    • 若配置成功,HTTPS 流量(如 TLSv1.2/1.3)将被自动解密,显示为 HTTP 协议。
    • 关键检查:
      • 数据包详情中的协议是否为 HTTP 而非 TLS
      • 右键点击数据包,选择 FollowHTTP Stream,可查看明文请求和响应。

2. 提取 Wireshark 数据包中的 PNG 资源的方法

方法一:使用 Wireshark 内置功能(推荐)

适用场景:通过 HTTP 等明文协议完整传输的 PNG、JPEG 等文件。

操作流程

  1. 过滤 HTTP 流量:http.content_type contains "image/png"
  2. 定位携带文件的响应包(HTTP 200 OK)。
  3. 右键点击该数据包,选择 FollowHTTP Stream
  4. 在弹出窗口中:
    • 查看右侧 “Show and save data as”,选择 “Raw”
    • 点击 “Save as…”,保存为 .png 文件。

方法二:手动导出 TCP 流重组文件

适用场景:非 HTTP 协议传输的图片(如 WebSocket、自定义 TCP)。

操作流程

  1. 定位包含图片数据的 TCP 包(可通过 tcp.payload contains "\x89PNG" 过滤 PNG 头)。
  2. 右键点击该包,选择 FollowTCP Stream
  3. 设置显示格式为 “Raw”,点击 “Save as…”,保存为 .bin 文件。
  4. 重命名文件后缀为 .png

方法三:VSCode 十六进制编辑(原始数据包提取)

适用场景:需精确提取碎片化传输的图片数据。

操作流程

  1. 在 Wireshark 中找到包含图片数据的应用层数据包(如 HTTP 包)。
  2. 展开数据包详情,选中应用层载荷(如 Media Type: image/png)。
  3. 右键点击,选择 Export Packet Bytes,保存为 raw.bin
  4. 使用 VSCode 安装十六进制编辑器插件(如 Hex Editor)。
  5. 打开 raw.bin 文件,检查文件头和尾:
    • PNG 头89 50 4E 47 0D 0A 1A 0A
    • PNG 尾00 00 00 00 49 45 4E 44 AE 42 60 82
  6. 删除多余字节(如 HTTP 头部),仅保留从 89PNGIEND 的数据。
  7. 保存为 .png 文件。

注意事项

  • HTTPS 解密前提

    • 必须捕获完整的 TLS 握手过程(如 ClientHelloServerHello 等)。
    • 浏览器需全程使用同一 sslkey.log 文件(重启浏览器需重新抓包)。
  • 资源提取技巧

    • 使用 Wireshark 的 “Export Objects → HTTP” 功能,可批量提取所有传输的文件(包括图片)。
    • 导出资源文件
    • 碎片化传输的图片需手动拼接 TCP 流。
    • 加密流量(如未解密的 HTTPS)无法直接提取资源。

提示:对于非 PNG 文件(如 JPEG),可替换文件头尾标识:

  • JPEG 头FF D8 FF
  • JPEG 尾FF D9

方法二和方法三同样适用。


Wireshark 抓取 QQ 数据包实例分析

零壹 于 2020-05-16 发布

实验步骤

  1. 打开 Wireshark:由于笔记本连接的是 WIFI,因此点击 WLAN。

    Wireshark 界面

  2. 抓取数据包中

    抓包中

  3. 停止抓包:点击左上角的正方形角标,停止抓包。在应用显示过滤器中输入 oicq,然后按下 Enter,即可显示 QQ 数据包。

    QQ 数据包

  4. 过滤 QQ 数据包:按下 Enter,过滤所有 QQ 数据包。

    过滤结果

  5. 查看 OICQ 数据包

    OICQ 数据包

  6. 数据段中的 QQ 数据为十六进制

    十六进制数据
    十六进制数据

  7. 网络层次结构:从下到上依次为物理层、数据链路层、网络层、传输层、应用层(图中顺序为从上到下)。

    网络层次

  8. 时间信息

    时间信息
    时间信息

  9. 语音通话数据包:使用电脑登录大号,与手机的小号进行语音通话,抓取的 UDP 包可以显示手机的 IP 地址。
    语音通话数据包
    语音通话数据包
    语音通话数据包

结语

本次抓包实验仅为练手,如有不详尽之处,敬请谅解。此外,由于电脑与手机使用同一局域网,因此成功获取了手机的 IP 地址。
使用 Wireshark 抓取与他人语音聊天或发送文件的数据包时,无法获取对方的 IP 地址,主要是由于以下几个原因:

  • NAT 转换:内部 IP 地址被转换为公网 IP 地址。
  • 加密通信:数据包内容被加密,无法直接解析。
  • 应用层协议封装:数据被封装在特定协议中,隐藏了 IP 地址信息。
  • 中间设备影响:数据包经过多个中间设备,可能被进一步处理或转换。

这些因素作用,使得在抓包时难以直接获取对方的原始 IP 地址。


via:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值