news 2026/9/29 22:51:53

【Wireshark】安装与使用指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【Wireshark】安装与使用指南

1. Wireshark 工具介绍

Wireshark 是一款开源的网络协议分析工具,主要用于:

  • 分析抓取的网络数据包,包含TCP/IP、HTTP、DNS、数据库等协议

  • 排查网络延迟、丢包、连接重置、服务无响应等问题

  • 学习网络协议和进行安全分析

核心原则:

Wireshark 负责“分析”,tcpdump/dumpcap 负责“抓包”。
抓包点应选在目标流量一定会经过的机器上。


2. Wireshark 安装

Windows

  1. 访问官网 wireshark.org,下载 Windows 64-bit 安装包。

  2. 右键安装包,选择“以管理员身份运行”。

  3. 组件选择页保持默认,必须勾选 Npcap。

  4. 安装完成后打开 Wireshark,能看到 Wi-Fi 或以太网接口即正常。

由于外网下载速度可能较慢,因此提供现有安装包,内含已抓包的练手.pacp 文件:

获取途径:关注公众号【科创视野】回复wireshark


macOS

  1. 下载.dmg镜像并打开。

  2. 将 Wireshark 拖入Applications。

  3. 关键一步:在同一镜像中运行Install ChmodBPF.pkg。

  4. 否则会因权限不足无法抓包。


Linux(Ubuntu / Debian)

sudo apt update sudo apt install wireshark

安装过程中会询问:

Should non-superusers be able to capture packets?

选择 Yes。

如果误选 No,执行:

sudo dpkg-reconfigure wireshark-common sudo usermod -aG wireshark $USER

然后注销并重新登录。


3. Wireshark 使用

3.1 抓包在哪台机器进行

原则:

抓包点要尽量靠近故障边界。谁最可能知道真相,就在谁身上抓。

场景优先抓包机器目的
客户端报连接超时服务端优先,客户端辅助看 SYN 是否到达服务端
服务端报错或响应慢服务端看请求是否收到、响应是否发出
偶发丢包、重传两端同时抓,或中间节点对比时间戳,定位链路问题
数据库端口 2881数据库服务端 + 客户端确认 SQL 请求与响应
只能选一台优先服务端判断请求是否到达、服务端是否响应

如果服务端抓不到包,再去客户端抓,确认请求是否真正发出。
如果两端都有包但时间差很大,问题通常在网络链路或中间代理。


3.2 推荐抓包指令:tcpdump

Linux 服务器上推荐使用tcpdump,稳定、轻量、适合生产环境。

基础命令:

sudo tcpdump -i any -s 0 -nn port 2881 \ -w /tmp/$(date "+%Y%m%d%H%M%S")_$(hostname)_2881.pcap

参数说明:

参数含义
-i any监听所有网卡
-s 0抓完整数据包,不截断
-nn不解析域名和端口名
port 2881只抓源端口或目的端口为 2881 的流量
-w写入 pcap 文件
文件名包含时间、主机名、端口,便于区分

3.3 用 Wireshark 打开并分析

抓包完成后,将.pcap文件下载到安装了 Wireshark 的电脑,直接打开。

常用操作:

  1. 在顶部显示过滤器栏输入过滤条件。

  2. 点击任意数据包,查看中间详情面板的各层协议。

  3. 右键 TCP 包,选择Follow(跟踪流) → TCP Stream,查看完整会话。

  4. 使用Statistics → Conversations查看流量对话。

  5. 使用Statistics → IO Graph查看流量随时间变化。

  6. 使用Analyze → Expert Information查看异常提示。


3.4 显示过滤器

打开 pcap 文件后,在 Wireshark 顶部的显示过滤器栏输入表达式,回车即可筛选数据包。

逻辑运算符:

  • &&:与

  • ||:或

  • !:非


搜索二进制内容

有时需要直接搜索数据包载荷中的字符串,例如 SQL 语句中的select:

# 在 TCP 载荷中搜索 select,区分大小写。 tcp contains "select" # 忽略大小写,contains 做不到,需要改用正则匹配 matches tcp matches "(?i)select" # 在指定端口中搜索 select,适合数据库流量分析。 tcp.port == 2883 && tcp contains "select"

追踪特定的 TCP 流

由于客户端用了不同的端口(32418 和 31782)连接 2883,如果您只想看某一整条会话,最快的方法是:
在任意数据包上右键 →Follow→TCP Stream。Wireshark 会自动生成一个tcp.stream eq 0(或对应编号)的过滤器,只显示该连接的完整交互过程。


3.5 AI 分析

现在 AI 这么强,直接让 AI 分析抓包文件即可。


总结

Wireshark 是协议分析工具,tcpdump 是服务器抓包工具。
抓包位置优先选服务端;如果服务端没收到,再去客户端或中间节点抓。
推荐服务器抓包命令:

抓完后用 Wireshark 打开,结合显示过滤器、Follow TCP Stream 和 Expert Information,即可完成从抓包到排障的完整闭环。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/29 22:49:33

HART转Modbus RTU网关实现热力换热站压力数据采集

热力换热站的数据采集有个很现实的问题:现场大量一次仪表——压力变送器、温度变送器、液位计——走的是HART协议,输出4-20mA模拟量叠加数字信号;而站控系统、PLC、上位机组态软件大多只认Modbus RTU。两套语言不通,数据就上不来。…

作者头像 李华
网站建设 2026/9/29 22:48:41

芯片烧录自建还是外包?量产烧录方案的决策逻辑

做硬件的人,几乎没有不被“芯片烧录”这个环节膈应过。我接手第一条量产线的时候,研发丢给我一套J-Link和几片散料,说“这样烧就行”。等我真正排产,面对的是几万片的芯片、管装托盘编带的包装差异、每颗几十秒的写入时间、夹具精…

作者头像 李华
网站建设 2026/9/29 22:48:24

李清照再婚又离婚:宋代女性的财产权与法律困境

绍兴二年(1132年)秋,临安府衙门的鼓声敲响时,李清照已经四十九岁。她递上的状纸,告的是自己的第二任丈夫张汝舟。罪名不是休妻,而是“妄增举数入官”——虚报科举次数骗取官职。按《宋刑统》,妻…

作者头像 李华
网站建设 2026/9/29 22:48:14

数字电源POL控制实战:从S域离散化到环路调试与系统优化

1. 数字电源到底在解决什么问题第一次接触数字电源的人,脑子里冒出来的问题通常是:模拟电源已经用了几十年,稳定可靠,为什么还要折腾数字方案?这个问题我在早期做板级供电设计时也反复问过自己。直到有一次做一个多路输…

作者头像 李华