贝博恩创新科技网

wireshark使用教程 mac

Wireshark 是一款功能强大的网络协议分析工具,可用于捕获、分析和调试网络流量,在 Mac 系统中使用 Wireshark 需要完成安装、配置、捕获数据及分析结果等步骤,以下是详细操作指南:

wireshark使用教程 mac-图1
(图片来源网络,侵删)

安装 Wireshark

官网下载

访问 Wireshark 官方网站(https://www.wireshark.org/),下载适用于 macOS 的安装包(通常为 .dmg 格式)。

安装步骤

  • 双击下载的 .dmg 文件,打开后拖动 Wireshark 图标到“应用程序”文件夹完成安装。
  • 首次启动时,系统可能提示“来自不受的开发者”,右键点击应用图标,选择“打开” > “打开”即可绕过安全限制。

安装依赖工具(可选)

Wireshark 依赖某些命令行工具(如 tcpdump),可通过 Homebrew 安装:

brew install tcpdump

安装后需在“系统偏好设置” > “安全性与隐私”中授权 Wireshark 使用 tcpdump,否则可能无法捕获数据包。

配置 Wireshark 捕获权限

在 macOS 中,Wireshark 需要管理员权限才能捕获网络流量。

wireshark使用教程 mac-图2
(图片来源网络,侵删)
  1. 打开“终端”,输入以下命令为 Wireshark 添加权限:
    sudo chmod +s /Applications/Wireshark.app/Contents/MacOS/Wireshark
  2. 输入管理员密码后,重启 Wireshark 即可正常捕获数据包。

Wireshark 界面介绍

启动 Wireshark 后,界面分为三个主要部分:
| 区域 | 功能说明 | |----------------|-----------------------------------------------------------------------------| | 工具栏 | 包含“捕获接口选择”“开始捕获”“停止捕获”“打开文件”等快捷按钮。 | | 数据包列表 | 显示捕获到的数据包列表,包含时间戳、源地址、目标地址、协议及长度等信息。 | | 数据包详情 | 点击数据包后,可查看协议树的分层解析(如以太网帧、IP 头、TCP/UDP 头等)。 | | 数据包原始数据 | 以十六进制和 ASCII 码格式显示数据包的原始内容,便于底层协议分析。 |

捕获网络数据包

选择捕获接口

  • 点击工具栏的“接口列表”按钮(通常显示为“en0”“en1”等),选择要监听的网络接口。
    • en0:通常代表 Wi-Fi 接口。
    • en1:通常代表有线以太网接口。
    • lo0:本地回环接口(用于分析本地主机流量)。
  • 勾选“使用 promiscuous mode”(混杂模式),可捕获接口上所有流量(默认仅捕获本机流量)。

设置捕获过滤器(可选)

为减少无关数据包,可在“捕获过滤器”输入框中设置过滤规则(语法与显示过滤器不同)。
示例

  • 仅捕获 HTTP 流量:http
  • 仅捕获与特定 IP 的通信:host 192.168.1.100
  • 仅捕获 TCP 流量:tcp

开始捕获

点击“开始捕获”按钮,Wireshark 开始记录网络流量,捕获过程中可随时点击“停止捕获”结束。

分析数据包

数据包列表操作

  • 排序:点击列表表头(如“时间”“协议”)可按该列排序。
  • 搜索:使用快捷键 Ctrl+F 输入关键词(如 IP 地址、端口号)快速定位数据包。
  • 标记数据包:右键点击数据包,选择“标记” > “标记帧”,可标记重要数据包(默认标记颜色为绿色)。

数据包详情解析

点击数据包后,“数据包详情”区域会显示协议树结构,可逐层展开查看各层协议信息:

wireshark使用教程 mac-图3
(图片来源网络,侵删)
  • 以太网层:包含源 MAC 地址、目标 MAC 地址及协议类型(如 IPv4、IPv6)。
  • IP 层:显示源 IP、目标 IP、TTL、校验和等信息。
  • 传输层:若为 TCP/UDP 协议,可查看源端口、目标端口、序列号、确认号等。
  • 应用层:如 HTTP、DNS、FTP 等,可解析具体请求/响应内容(如 HTTP 头部、DNS 查询域名)。

使用显示过滤器

显示过滤器用于在捕获后筛选数据包,语法更灵活,支持逻辑运算(&&、、)和比较运算(、、><)。
示例

  • ip.src == 192.168.1.100 && tcp.port == 80:筛选来自 192.168.1.100 且目标端口为 80 的 TCP 包。
  • http.request.method == "GET":筛选所有 HTTP GET 请求。
  • dns.qry.type == A:筛选 A 类型的 DNS 查询。

导出数据包

选择需要的数据包(可按住 ShiftCtrl 多选),右键点击选择“导出选定数据包”,可保存为 .pcap 格式(支持 Wireshark、tcpdump 等工具打开)。

高级功能

跟流(Follow Stream)

在“数据包详情”中右键点击 TCP 或 UDP 流,选择“跟随流” > “TCP 流”,可查看完整的会话内容(如 HTTP 请求/响应、SMTP 邮件内容)。

统计分析

通过“统计”菜单可进行流量统计:

  • 协议分层统计:查看各协议占比(如 TCP、UDP、HTTP 等)。
  • 端点统计:显示通信频繁的 IP 地址、MAC 地址或端口号。
  • TCP 流图:可视化 TCP 连接的时序状态(如 SYN、ACK、FIN 等标志位)。

配置文件与颜色规则

  • 配置文件:通过“编辑” > “配置文件”可修改界面布局、字体、默认过滤器等。
  • 颜色规则:通过“视图” > “着色规则”可自定义数据包颜色(如将 HTTP 流量标记为蓝色、DNS 流量标记为黄色),便于快速识别。

常见问题与解决

捕获不到数据包

  • 检查权限:确保已通过 chmod +s 授权 Wireshark 使用 tcpdump
  • 检查接口:确认选择的网络接口正确(如 Wi-Fi 接口应选择 en0)。
  • 关闭防火墙:临时关闭 macOS 防火墙或允许 Wireshark 通过防火墙。

捕获时提示“无权限访问接口”

  • 打开“系统偏好设置” > “安全性与隐私” > “隐私”,确保 Wireshark 已勾选“网络”或“辅助功能”权限(根据 macOS 版本不同可能略有差异)。

相关问答 FAQs

问题 1:如何在 Wireshark 中过滤掉本地广播流量?
解答:在显示过滤器中输入 not broadcast,可排除所有目标 MAC 地址为广播地址(ff:ff:ff:ff:ff:ff)的数据包,若需过滤特定协议的广播流量,可结合协议过滤,not arp and broadcast 可排除 ARP 广播包。

问题 2:Wireshark 捕获的文件如何用命令行工具分析?
解答:使用 tcpdump 命令可分析 .pcap 文件,查看文件中的 HTTP 流量:tcpdump -r capture.pcap -A 'tcp port 80'-r 指定文件,-A 以 ASCII 码显示内容,'tcp port 80' 为过滤条件。

分享:
扫描分享到社交APP
上一篇
下一篇