Wireshark 零基础入门教程(2026 最新版)

Wireshark 主界面五大功能区导览图
Wireshark 主界面五大功能区:菜单栏、过滤器、包列表、协议树与字节流面板

Wireshark 是网络领域最知名的开源协议分析工具,也是网络工程师、运维、安全人员和后端开发几乎必然会用到的一款软件。它的作用说起来很简单:把网络上传输的数据包抓下来,逐层拆开给你看。

这篇教程面向完全没接触过的读者,从装好软件到独立完成第一次抓包分析,全程约 20 分钟。已经会用基本功能的读者,可以直接跳到过滤器手册或故障排查指南。

一、Wireshark 到底能做什么

简单说,Wireshark 能让你看见网络通信的每一个细节:两台机器之间说了什么、说了几遍、哪一句没得到回应、每一句花了多长时间。

三个最常用的场景

它不能做什么

Wireshark 是分析工具,不是攻击工具。它只能被动捕获流经网卡的数据,不能帮别人"破解"什么,也不能跨网段抓取不属于你的流量。此外它对加密流量无能为力——HTTPS 的内容默认是密文,除非配置密钥才能解密。

合规提醒:只在你拥有或已获得明确授权的设备与网络上使用 Wireshark。在企业环境抓包前,请先取得网络管理员的书面授权;抓到包含账号、密码、个人信息的数据时,务必脱敏后再保存或转发。

二、安装与权限配置

Wireshark 是完全免费开源的,官网直接下载,无需注册。Windows 用户也可以从Wireshark 中文站获取各版本安装包。

Windows 安装要点

运行安装程序时,会连带安装 Npcap(Windows 下的抓包驱动),这一步有两个选项务必注意:

安装完成后,第一次启动要右键选择"以管理员身份运行"。没有管理员权限时,接口列表会是空的或者只能看到很少几个。

macOS 安装要点

把 Wireshark 拖进 Applications 后,还需要安装 ChmodBPF 组件(安装包里有),它会把网卡设备的读写权限开放给普通用户组。装完重启一次,接口列表才会正常显示。

macOS 还常在"隐私与安全性"里拦截,需要在系统设置中手动允许。无线抓包则要先关闭 WiFi 或用专用工具切换监听模式。

Linux 安装要点

主流发行版都能直接装:

# Debian / Ubuntu
sudo apt install wireshark

# RHEL / CentOS / Fedora
sudo dnf install wireshark

安装过程中会询问是否允许非 root 用户抓包,选是。然后把当前用户加入 wireshark 组,注销重登生效:

sudo usermod -aG wireshark $USER

验证安装成功

打开 Wireshark,主界面应该能看到网卡列表,每个接口右侧有实时流量波动的折线图。随便选一个正在上网的接口双击,如果数据包开始滚动刷新,说明一切正常。

三、界面五区速览

Wireshark 主窗口分成五块,第一次看会有点懵,记住每块的作用就行:

区域位置作用
过滤栏顶部输入显示过滤器,筛出你想看的包。变绿=语法正确,变红=有错
数据包列表中上按顺序显示每个包的序号、时间、源、目的、协议、长度、概要
数据包详情中下把选中的包按协议分层展开,可逐级点开查看每个字段
原始字节底部十六进制与 ASCII 原文,点详情里任意字段会高亮对应的字节
状态栏最下已捕获/已显示包数、丢包统计、当前配置文件

其中数据包详情区是最值得花时间看的。它把数据包按帧 → 以太网 → IP → TCP → 应用层逐层展开,正好对应网络分层模型,看几个包就能对协议结构有具体认识。

四、第一次抓包:跟着做一遍

下面用一个最直观的例子:抓取本机访问某个网站的全过程。

第 1 步:选择正确的网卡

主界面双击你正在上网的那个接口(有流量波动的)。不确定是哪一个,就在命令行用 ipconfig(Windows)或 ifconfig(macOS、Linux)看看本机 IP 属于哪块网卡。

第 2 步:开始前先设一个捕获过滤器

为了不让无关流量刷屏,在捕获选项里给目标网卡设置捕获过滤器,只抓目标站点的流量:

host 93.184.216.34

如果不知道 IP,也可以直接抓全部,后面用显示过滤器筛。第一次建议先抓全部,看到的东西更真实。

第 3 步:开始捕获

点击左上角的鲨鱼鳍图标(或按 Ctrl+E)。此时数据包会开始飞速滚动。

第 4 步:制造流量

打开浏览器访问一个使用 HTTP 的测试站点——注意,现在绝大多数网站是 HTTPS,内容加密后新手看不懂。建议先用 HTTP 站点练习,能直接看到明文请求和响应,理解起来快得多。

第 5 步:停止捕获

点击红色停止按钮(Ctrl+E)。抓到几百个包就够了,再多反而不好找。

第 6 步:找到关键包

在过滤栏输入 http 并回车,列表立刻只剩 HTTP 协议相关的包。点中其中一个,在详情区展开 Hypertext Transfer Protocol,可以看到请求方法、Host、URI、User-Agent 等字段,和浏览器开发者工具里看到的信息一一对应。

再试试右键这个包 → 追踪流 → TCP 流,请求和响应会拼成一段连续文本,非常直观。

五、新手必须记住的 12 个过滤器

不用背,收藏这一节就够了。过滤器语法的完整说明见Wireshark 过滤器完全手册。

想看什么过滤器
某个 IP 的全部流量ip.addr == 192.168.1.100
某个端口tcp.port == 443
只看 HTTPhttp
只看 DNSdns
网页请求http.request
服务器错误http.response.code >= 500
TCP 重传tcp.analysis.retransmission
连接被重置tcp.flags.reset == 1
三次握手的第一个包tcp.flags.syn == 1 && tcp.flags.ack == 0
DNS 解析失败dns.flags.rcode != 0
大包(可能分片)frame.len > 1400
排除广播干扰!arp && !mdns

六、新手最常遇到的五个困惑

1. 抓到几百个包,看不出哪个重要

正常。新手的通病是试图看懂每一个包,实际上排查时只需要关注关键的几个。先用过滤器缩小范围,再看分析 → 专家信息让 Wireshark 帮你标出异常包。

2. HTTPS 的包全是密文,什么都看不到

这是设计如此。TLS 加密后,Wireshark 只能看到握手过程和加密载荷。想看明文需要配置浏览器导出会话密钥(设置 SSLKEYLOGFILE 环境变量),在首选项里指定该文件即可解密——仅限你自己本地调试使用。

3. 接口列表是空的

Windows 上九成是没有以管理员身份运行;Linux 是没加入 wireshark 组;macOS 是 ChmodBPF 没装或没重启。

4. 抓到的包有校验和错误

如果看到大量 Checksum: 0x0000 [incorrect],多半是网卡校验和卸载(Checksum Offload)造成的假告警——网卡把计算工作交给系统,抓包时还没算完。在首选项 → 协议 → TCP/UDP里关掉校验和验证即可消除。

5. 打开大文件很卡

超过 100 MB 的文件,Wireshark 加载会明显变慢。解决办法:抓包时就加捕获过滤器;或者用命令行 editcap 按时间或大小切分;再或者用 tshark 先过滤出子集再打开。

七、下一步学什么

掌握上面的内容,你已经能独立完成一次完整的抓包分析。建议按这个顺序继续:

  1. 熟练过滤器——这是效率的分水岭,见Wireshark 过滤器完全手册
  2. 看懂 TCP 状态——理解三次握手、四次挥手、重传、窗口机制,可参考TCP 三次握手与四次挥手深度分析
  3. 建立排查流程——把经验固化成可复用的五步法,见网络故障排除完整指南
  4. 按领域深入——根据工作需要选择方向:视频流分析、VoIP 语音质量、网络取证、Python 自动化分析
  5. 学会命令行——tshark 适合服务器环境和批量处理,是进阶的必经之路

常见问题

Wireshark 是免费的吗?
完全免费且开源,基于 GPL v2 协议发布,个人和企业都可以无限制使用,没有任何功能阉割或隐藏收费。官网 wireshark.org 提供各平台安装包,无需注册。
没有管理员权限能抓包吗?
抓包需要访问网卡底层,Windows 上必须以管理员身份运行;Linux 上需要把用户加入 wireshark 组;macOS 需要安装 ChmodBPF 并授权。只分析已有的 pcap 文件则不需要任何特殊权限。
抓包会不会影响网速?
抓包本身只是复制一份数据,不拦截也不修改流量,正常情况下对网速没有影响。但在高流量接口上长时间全量抓包会占用大量 CPU 和磁盘,生产环境建议加捕获过滤器。
为什么我的接口列表里有很多虚拟网卡?
安装虚拟机、Docker、VPN 后会创建虚拟网卡。可以在捕获选项里取消勾选不需要的接口,或者用 ipconfig(Windows)/ ifconfig(macOS、Linux)对比真实 IP 来确认该选哪一个。
抓包是违法的吗?
在自己拥有或已获授权的设备与网络上抓包完全合法。未经授权抓取他人网络流量,可能触犯网络安全相关法律。企业环境中请先取得网络管理员书面授权,并对抓取到的敏感信息做脱敏处理。

入门阶段最有效的学习方式,是给自己制造问题再解决它——关掉 WiFi 再打开、访问一个不存在的域名、下载一个大文件,每做一件事就抓一次包看看发生了什么。看几十个真实数据包,比读十篇文章管用。更多中文教程请访问Wireshark 中文站。