如何使用 Wireshark 检测网络问题

最后更新: 24/11/2025

  • Wireshark 是免费的(GPL v2),由 Wireshark 基金会维护,并且是跨平台的。
  • 包含 GUI、TShark 以及 dumpcap、editcap、mergecap 和 text2pcap 等实用程序。
  • libwireshark、libwiretap 和 libwsutil 库支持剖析和多种格式。
  • 通过 dumpcap、强大的过滤器和广泛的自动化选项进行安全捕获。
Wireshark的

如果您从事网络、安全或开发工作,并且想了解您的线缆和 Wi-Fi 网络中正在发生的事情,那么与以下人员合作将对您有所帮助: Wireshark的 这是一个至关重要的要素。 开源软件包分析器 经过数十年的发展,现在可以以外科手术般的精准度在数据包级别捕获、剖析和研究流量。

本文将对其进行深入分析:从其许可证和赞助商到其在 GNU/Linux 中的软件包,包括控制台实用程序、支持的格式、编译要求、捕获权限以及真正完整的历史和功能概述。

Wireshark是什么?它现在有哪些用途?

本质上,Wireshark 是一种 协议分析器和流量捕获设备 这样一来,您可以将界面置于混杂模式或监听模式(如果系统支持),查看不会发送到您的 Mac 的帧,分析对话,重建流程,根据规则为数据包着色,并应用极具表现力的显示滤镜。此外, 包含 TShark(终端版本) 以及一套用于重新排序、拆分、合并和转换屏幕截图等任务的实用程序。

虽然它的使用方式与 tcpdump 类似,但它提供了一个基于 Qt 的现代化图形界面。 过滤、排序和深度剖析 适用于数千种协议。如果您使用的是交换机,请记住混杂模式并不能保证您能看到所有流量:要实现完整的流量监控,您需要端口镜像或网络分路器,相关文档也将其列为最佳实践。

Wireshark的

许可、基金会和开发模式

Wireshark 的分发依据是 GNU GPL v2 在许多地方,该软件标明“GPL v2 或更高版本”。源代码中的一些实用程序采用不同但兼容的许可证,例如采用 GPLv3+ 的 pidl 工具,但这不会影响分析器生成的二进制文件。本软件不提供任何明示或暗示的担保;使用风险自负,这与所有自由软件的使用方式相同。

La Wireshark基金会 它负责协调开发和分发工作,并依靠基于 Wireshark 的个人和组织的捐赠维持运营。该项目拥有数千名注册作者,其最杰出的支持者包括杰拉尔德·库姆斯、吉尔伯特·拉米雷斯和盖伊·哈里斯等历史人物。

Wireshark 可在 Linux、Windows、macOS 和其他类 Unix 系统(BSD、Solaris 等)上运行。Windows 和 macOS 均有官方软件包,在 GNU/Linux 系统中,它通常作为标准软件包或附加软件包包含在 Debian、Ubuntu、Fedora、CentOS、RHEL、Arch、Gentoo、openSUSE、FreeBSD、DragonFly BSD、NetBSD 和 OpenBSD 等发行版中。它也可在第三方系统上使用,例如…… Homebrew、MacPorts、pkgsrc 或 OpenCSW.

要从代码编译,您需要 Python 3;AsciiDoctor 用于生成文档;以及 Perl 和 GNU flex 等工具(经典的 lex 无法使用)。使用 CMake 进行配置可以启用或禁用特定支持,例如压缩库。 -DENABLE_ZLIB=OFF、-DENABLE_LZ4=OFF 或 -DENABLE_ZSTD=OFF或者,如果您不想加载 MIB,可以使用 -DENABLE_SMI=OFF 来启用 libsmi 支持。

Debian 系统中的软件包和库

在 Debian/Ubuntu 及其衍生环境中,Wireshark 生态系统被分为以下几类: 多个包裹以下列出了各项功能、大致大小和依赖关系。这些软件包提供从完整的图形用户界面到各种库和开发工具,方便您将解剖功能集成到自己的应用程序中。

Wireshark的

使用 Qt 界面的图形化应用程序,用于捕获和分析交通流量。 预计大小:10.59 MB。 设施: sudo apt install wireshark

Dependencias clave
  • libc6、libgcc-s1、libstdc++6
  • libgcrypt20,libglib2.0-0t64
  • libpcap0.8t64
  • Qt 6(核心、GUI、控件、多媒体、SVG、打印支持和 QPA 插件)
  • libwireshark18、libwiretap15、libwsutil16
  • libnl-3-200, libnl-genl-3-200, libnl-route-3-200
  • libminizip1t64、libspeexdsp1、wireshark-common

在其启动选项中,您可以找到用于选择界面的参数(-i),捕获过滤器(-f),快照限制,监控模式,链接类型列表,显示过滤器(-Y)、“解码为”和首选项,以及文件输出格式和捕获注释。该应用程序还允许 配置分析和统计 界面上的高级功能。

独家内容 - 点击这里  如何释放磁盘空间C

鲨鱼

用于命令行捕获和分析的控制台版本。 预计大小:429 KB。 设施: sudo apt install tshark

Dependencias clave
  • libc6,libglib2.0-0t64
  • libnl-3-200,libnl-route-3-200
  • libpcap0.8t64
  • libwireshark18、libwiretap15、libwsutil16
  • wireshark-common

它允许您选择接口、应用捕获和显示过滤器、定义停止条件(时间、大小、数据包数量)、使用循环缓冲区、打印详细信息、生成十六进制和 JSON 转储,以及导出 TLS 对象和密钥。它还可以在兼容的终端中对输出进行着色。 调整日志记录 按域和详细程度划分。如果在内核级别启用 BPF JIT,建议谨慎操作,因为这可能存在安全隐患。

wireshark-common

wireshark 和 tshark 的常用文件(例如字典、配置和命令行工具)。 预计大小:1.62 MB。 设施: sudo apt install wireshark-common

Dependencias clave
  • debconf(或 debconf-2.0)、libc6
  • libcap2 和 libcap2-bin
  • libgcrypt20,libglib2.0-0t64
  • libpcap0.8t64, libpcre2-8-0
  • libnl-3-200, libnl-genl-3-200, libnl-route-3-200
  • libspeexdsp1、libssh-4、libsystemd0
  • libmaxminddb0
  • libwireshark18、libwiretap15、libwsutil16
  • zlib1g

此软件包包含诸如以下实用程序: 信息 (捕获文件信息:类型、封装、持续时间、速率、大小、哈希值和注释) 帽型 (识别文件类型) dumpcap (使用 pcapng/pcap 格式,具有自动停止和循环缓冲区的轻量级采集设备) 编辑帽 (编辑/分割/转换截图,调整时间戳,删除重复项,添加注释或密码) 合并帽 (合并或连接多个捕获结果), mmdbresolve (利用MMDB数据库解析IP地理位置) 随机包 (多协议合成数据包生成器) 大鲨鱼 (粗略解剖及现场输出) 重新排序上限 (按时间戳重新排序) 鲨鱼 (带有 API 的守护进程,用于处理捕获的数据) 文本2pcap (将十六进制转储或结构化文本转换为有效的捕获)。

libwireshark18 和 libwireshark-data

中央数据包剖析库。提供 Wireshark/TShark 使用的协议分析器。 库大小约为:126.13 MB。 设施: sudo apt install libwireshark18 y sudo apt install libwireshark-data

重要部门
  • libc6,libglib2.0-0t64
  • libgcrypt20,libgnutls30t64
  • liblua5.4-0
  • libpcre2-8-0
  • libxml2-16
  • zlib1g、libzstd1、liblz4-1、libsnappy1v5
  • libnghttp2-14、libnghttp3-9
  • libbrotli1
  • libopus0、libsbc1、libspandsp2t64、libbcg729-0
  • libcares2
  • libk5crypto3,libkrb5-3
  • libopencore-amrnb0
  • libwiretap15,libwsutil16
  • libwireshark-数据

它支持大量的协议和选项,例如通过界面或命令行启用或禁用特定的解剖、启发式方法和“解码为”;因此,您可以进行自定义。 真实交通状况剖析 您的环境。

libwiretap15 和 libwiretap-dev

Wiretap 是一个用于读写多种捕获文件格式的库。它的优势在于支持多种格式;其局限性在于: 它不进行过滤或直接捕获。。 设施: sudo apt install libwiretap15 y sudo apt install libwiretap-dev

支持的格式(选择)
  • libpcap的
  • 嗅探器/Windows Sniffer Pro 和 NetXRay
  • 局域网分析仪
  • 网络监视器
  • 窥探
  • AIX iptrace
  • RADCOM 广域网/局域网
  • 朗讯/升腾
  • HP-UX nettl
  • 东芝ISDN路由器
  • ISDN4BSD i4btrace
  • Cisco Secure IDS IP日志记录
  • 日志 pppd(pppdump)
  • VMS TCPTRACE
  • DBS Etherwatch(文本)
  • 弹射器 DCT2000(.out)
libwiretap15 依赖项
  • libc6,libglib2.0-0t64
  • liblz4-1、libzstd1、zlib1g
  • libwsutil16

-dev 版本提供静态库和 C 头文件,用于将读/写操作集成到您的工具中。这使您可以开发用于操作数据的实用程序。 pcap、pcapng 和其他容器 作为我们自身管道的一部分。

libwsutil16 和 libwsutil-dev

Wireshark及其相关库共享的一组实用程序:用于字符串操作、缓冲、加密等的辅助函数。安装: sudo apt install libwsutil16 y sudo apt install libwsutil-dev

libwsutil16 依赖项
  • 库6
  • 库gcrypt20
  • libglib2.0-0t64
  • libgnutls30t64
  • libpcre2-8-0
  • zlib1g

-dev 软件包包含头文件和静态库,以便外部应用程序可以链接常用工具而无需重新实现 wheel 包。它是基础。 多个共享功能 使用 Wireshark 和 TShark。

wireshark-dev

用于创建新“解剖器”的工具和文件。它提供诸如 idl2wrs 之类的脚本,以及用于编译和测试的依赖项。 预计大小:621 KB。 设施: sudo apt install wireshark-dev

依存关系
  • esnacc
  • 库6
  • libglib2.0-0t64
  • libpcap0.8-dev
  • libwireshark-dev
  • libwiretap-dev
  • libwsutil16
  • 万能的
  • python3 和 python3-ply
独家内容 - 点击这里  如何删除对WhatsApp的最后访问

它包括诸如以下的实用程序 asn2deb (根据 ASN.1 生成用于 BER 监测的 Debian 软件包) idl2deb (CORBA软件包)。而且,最重要的是, idl2wrs该工具将 CORBA IDL 文件转换为用于解析 GIOP/IIOP 流量的 C 插件框架。此工作流程依赖于 Python 脚本(wireshark_be.py 和 wireshark_gen.py),并默认支持启发式解析。该工具会在以下位置搜索其模块: PYTHONPATH/site-packages 或者在当前目录中,并接受文件重定向以生成代码。

wireshark-doc

用户文档、开发指南和 Lua 参考文档。 预计大小:13.40 MB。 设施: sudo apt install wireshark-doc

如果您打算深入研究,强烈推荐。 扩展、脚本和 API官方网站上的在线文档会随着每个稳定版本的发布而更新。

Wireshark的

捕获和安全许可

在许多系统中,直接捕获数据包需要更高的权限。因此,Wireshark 和 TShark 将数据包捕获委托给第三方服务。 dumpcap该二进制文件设计为以特权(set-UID 或 capabilities)运行,以最大限度地减少攻击面。以 root 用户身份运行整个 GUI 并非最佳实践;最好使用 dumpcap 或 tcpdump 等工具捕获数据包,并在不使用特权的情况下进行分析,以降低风险。

该项目的历史包括多年来分析器中发生的安全事件,一些平台(例如 OpenBSD)因此弃用了旧的 Ethereal 实例。在当前的模型中,隔离捕获和持续更新改善了情况,但始终建议…… 请遵循安全提示 而且,如果您发现可疑活动,请知道如何应对 阻止可疑的网络连接 避免在未事先审查的情况下打开未经信任的屏幕截图。

文件格式、压缩和特殊字体

Wireshark 可以读取和写入 pcap 和 pcapng 文件,以及其他分析器(例如 Snoop、Network General Sniffer、Microsoft Network Monitor 和 Wiretap 上文列出的许多其他分析器)生成的文件格式。如果压缩文件编译时使用了 pcapng 库,Wireshark 也可以打开这些文件。 GZIP、LZ4 和 ZSTD特别是,具有独立块的 GZIP 和 LZ4 可以实现快速跳转,从而提高大型捕获中的 GUI 性能。

该项目文档介绍了 AIX iptrace 的一些特性(例如,向守护进程发出 HUP 指令后可以正常关闭)、对 Lucent/Ascend 跟踪、东芝 ISDN 或 CoSine L2 的支持,并说明了如何将文本输出捕获到文件中(例如,使用……)。 telnet <equipo> | tee salida.txt 或者使用该工具 脚本)以便稍后使用 text2pcap 导入。这些路径会将您带出…… “传统”捕获 当您使用不会直接倾倒 pcap 的设备时。

Wireshark的

套件实用程序和选项类别

除了 Wireshark 和 TShark 之外,该发行版还包括 一些工具涵盖了非常具体的任务这里不逐字复制帮助文本,而是按类别整理了一份摘要,以便您了解每个类别的功能和选项:

  • dumpcap:纯粹而简单的 pcap/pcapng 捕获、接口选择、BPF 滤波器、缓冲区大小、按时间/大小/文件轮换、创建环形缓冲区、捕获注释和输出格式 机器可读它警告不要启用 BPF 的 JIT,因为存在潜在风险。
  • 信息它显示文件类型、封装方式、接口和元数据;数据包数量、文件大小、总长度、快照限制、时间顺序(首尾相连)、平均速率(bps/Bps/pps)、平均数据包大小、哈希值和注释。它支持表格或详细输出,并支持机器可读格式。
  • 帽型:为一个或多个条目指定捕获文件的类型,并提供帮助和版本选项。
  • 编辑帽它能够选择/删除数据包范围、截取/剪切数据包、调整时间戳(包括严格顺序)、使用可配置窗口删除重复项、为每帧添加注释、按编号或时间拆分输出、更改容器和封装方式、处理解密密钥以及压缩输出。它是用于“清理”捕获数据的全能工具。
  • 合并帽:将多个捕获合并为一个,可以通过线性连接或基于时间戳的混合,控制 snaplen,定义输出类型、IDB 合并模式和最终压缩。
  • 重新排序上限:按时间戳重新排序文件,生成干净的输出,如果文件已经排序,则可以避免写入结果以节省 I/O。
  • 文本2pcap:将十六进制转储或带有正则表达式的文本转换为有效的捕获;识别各种数据库中的偏移量,识别 strptime 格式的时间戳(包括小数精度),检测附加的 ASCII 字符(如果适用),并可添加“虚拟”标头(以太网、IPv4/IPv6、UDP/TCP/SCTP、EXPORTED_PDU)。 端口、地址和标签 表明的。
  • 大鲨鱼:面向字段的“原始”读取器;允许您设置封装或解剖协议、禁用名称解析、设置读取/显示过滤器并决定字段输出格式,对与其他工具的流程很有用。
  • 随机包生成包含随机数据包的文件,数据包类型包括 ARP、BGP、DNS、以太网、IPv4/IPv6、ICMP、TCP/UDP、SCTP、Syslog、USB-Linux 等,并可指定帐户、最大大小和容器。非常适合用于 测试和演示.
  • mmdbresolve:查询 MaxMind 数据库 (MMDB) 以显示 IPv4/IPv6 地址的地理位置,指定一个或多个数据库文件。
  • 鲨鱼:一个守护进程,公开 API(模式“gold”)或经典套接字(模式“classic”);支持配置配置文件,并由客户端控制,用于服务器端分析和搜索,在自动化和服务中很有用。
独家内容 - 点击这里  如何最大化 IONOS 的隐私?

架构、特性和局限性

Wireshark 依赖 libpcap/Npcap 进行数据包捕获,并依赖于一系列库(libwireshark、libwiretap、libwsutil)来分离数据包解析、格式转换和实用工具。它支持 VoIP 通话检测、支持多种音频编码的音频播放、原始 USB 流量捕获以及 Wi-Fi 网络流量过滤(如果流量经过受监控的以太网)。 新协议的插件 它使用 C 或 Lua 编写。它还可以接收来自另一台机器的封装远程流量(例如 TZSP),以便进行实时分析。

它并非入侵检测系统 (IDS),也不会发出警报;它的角色是被动的:它负责检查、测量和显示。即便如此,辅助工具仍可提供统计数据和工作流程,并且培训资料也唾手可得(包括面向 2025 年的教育应用程序,这些应用程序教授过滤器、嗅探、基本操作系统指纹识别、实时分析、自动化、加密流量以及与 DevOps 实践的集成)。这种教育功能是对核心功能的补充。 诊断和故障排除.

兼容性和生态系统

建造和测试平台包括 Linux(Ubuntu)、Windows 和 macOS该项目还提到与更多类 Unix 系统具有广泛的兼容性,并可通过第三方管理器进行分发。在某些情况下,较旧的操作系统版本需要使用之前的版本分支(例如,Windows XP 1.10 或更早版本)。通常情况下,在大多数环境下,您可以从官方软件仓库或二进制文件进行安装,不会遇到重大问题。

它们可以与网络模拟器(ns、OPNET Modeler)集成,并且可以使用第三方工具(例如用于 802.11 的 Aircrack)生成 Wireshark 可以轻松打开的捕获文件。代表 严格的法律和道德规范请记住,只能在获得明确授权的网络和场景下进行捕获。

名称、官方网站和控制数据

官方网站是 线鲨网下载内容位于其 /download 子目录中,并为用户和开发者提供在线文档。还有一些页面…… 权力控制 (例如 GND)以及指向代码库、错误跟踪器和项目博客的链接列表,方便了解最新消息和报告问题。

在开始抓包之前,请先确认系统的权限和功能,确定是否使用 dumpcap/tcpdump 将数据包转储到磁盘并在无权限的情况下进行分析,并根据目标准备合适的抓包和显示过滤器。只要方法得当,Wireshark 就能化繁为简,为您提供精准的信息。 您需要的可见性 对任何规模的网络进行诊断、学习或审计。

黑客攻击发生后的24小时内应该做什么
相关文章:
账号被盗后24小时内应该做什么:手机、电脑和在线账户