返回更新列表
新发布Sep 20, 2026

TCPViewer v1.18.0

一流的macOS应用,让你在Mac上清晰查看每个数据包。Wireshark的替代品。

分享

TCP Viewer

TCP Viewer。面向 Mac 开发者的更简单的 Wireshark 替代方案。

一款简单、原生的 Mac 数据包查看器。

网站 · 下载 · 文档 · 版本发布

TCP Viewer 可在 macOS 上捕获并读取网络数据包。它使用系统 libpcap 进行捕获,并使用 Wireshark 库获取深度数据包详情。

功能

  • 原生 macOS 应用,使用 AppKit 构建
  • 基于 Wireshark Lib 构建,是 Wireshark 的替代方案
  • 捕获实时流量。
  • 按应用、域名或 IP 地址对数据包进行分组。
  • 过滤 TCP、UDP、DNS、HTTP、TLS、WebSocket 等。
  • 读取协议字段和原始字节。
  • 打开 PCAP 和 PCAPNG 文件。
  • 跟踪 TCP 和 UDP 流。
  • 将数据包导出为 PCAP 或 PCAPNG。
  • 通过 TCP Viewer MCP 向 AI 代理询问你的捕获内容。
  • 使用 tcpviewer-cli 自动化捕获、数据包查询、文件、许可证和设置。
  • 查看完整源代码。

轻松捕获数据包

  • 选择网络接口。
  • 一键开始或停止。
  • 让繁忙的捕获内容易于阅读。

TCP Viewer 实时数据包捕获

观看实时捕获视频

TCP Viewer MCP

  • 将 TCP Viewer 连接到 Codex 或其他 MCP 客户端。
  • 检查捕获状态。
  • 列出网络接口。
  • 使用简单提示查找数据包。
  • 随 TCP Viewer PRO 提供。

Codex 向 TCP Viewer MCP 询问捕获状态、接口和数据包

打开捕获文件

  • 拖入 PCAP 或 PCAPNG 文件。
  • 立即预览数据包。
  • 使用与实时捕获相同的视图。

在 TCP Viewer 中打开 PCAP 或 PCAPNG 文件

观看文件预览视频

跟踪 TCP 和 UDP 流

  • 重建 TCP 会话,或按捕获顺序查看 UDP 数据报。
  • 从数据包菜单或工具菜单打开流。
  • 同时显示两个方向。
  • 仅显示客户端或服务器数据。
  • 在文本和十六进制之间切换。
  • 搜索流。
  • 跳回源数据包。

在 TCP Viewer 中跟踪 TCP 流

观看跟踪 TCP 流视频

分组流量

  • 按应用对数据包进行分组。
  • 按域名对数据包进行分组。
  • 按 IP 地址对数据包进行分组。
  • 跳转到你需要的流量。

按应用、域名和 IP 地址对数据包进行分组

观看分组流量视频

协议过滤器

  • 使用常见协议的快速过滤器。
  • 将过滤器与文本搜索结合使用。
  • 快速聚焦有用的数据包。

按协议过滤捕获的数据包

观看协议过滤器视频

导出捕获内容

  • 导出全部、已过滤或选中的数据包。
  • 保存为 PCAP 或 PCAPNG。
  • 在其他数据包工具中打开结果。

将选中的数据包导出为 PCAP 或 PCAPNG

数据包详情

  • 读取 Wireshark 级别的协议树。
  • 检查字段名称和值。
  • 将字段与原始字节对应起来。
  • 搜索数据包详情。

检查协议字段和原始数据包字节

观看数据包详情视频

开源

  • 采用 GPL-2.0-or-later 许可。
  • 查看捕获流水线。
  • 查看数据包解码。
  • 查看原生 macOS 界面。
  • 报告问题或发送拉取请求。

TCP Viewer 是 GPL 开源项目

由 Proxyman 团队构建

  • ProxymanTiny Shield 背后的团队打造。
  • 为 macOS 构建。
  • 专注于隐私和清晰的网络调试。

TCP Viewer 由 Proxyman 团队构建

要求

运行 TCP Viewer:

  • Apple Silicon Mac。
  • macOS 15 或更高版本。

构建 TCP Viewer:

  • Xcode 16 或更高版本。
  • Git。
  • CMake、Ninja、Meson、pkg-config 和 autotools。
brew install cmake ninja meson pkg-config autoconf automake libtool

设置

克隆时包含子模块。然后引导固定的 Wireshark 依赖项。

git clone --recurse-submodules <repo-url>
cd TCPViewer
cp Config/TCPViewer.local.xcconfig.example Config/TCPViewer.local.xcconfig
./scripts/bootstrap-wireshark.sh

已经克隆但没有子模块?

git submodule update --init --recursive
./scripts/bootstrap-wireshark.sh

引导脚本会:

  • 首先运行 scripts/bootstrap-wireshark-deps.sh
  • 从源代码构建 Wireshark 的运行时库。
  • 将它们写入 Vendor/.install/wireshark-deps
  • 使用 macOS 15 作为部署目标。
  • 仅将 Homebrew 用于构建工具。
  • 绝不将 Homebrew bottle dylib 复制到发布版本中。

将本地签名、appcast、Sparkle、Sentry 和发布值排除在 Git 之外。使用 Config/TCPViewer.local.xcconfig.env、环境变量或由 Keychain 支持的工具。

运行

在 Xcode 中:

  1. 打开 TCPViewer.xcodeproj
  2. 选择 TCPViewer scheme。
  3. 选择 My Mac
  4. 按下 Run。

命令行构建:

xcodebuild -project TCPViewer.xcodeproj -scheme TCPViewer build

如果 Xcode 要求签名,请为 TCPViewerPcapPlusPlusCore 选择开发团队。

测试

xcodebuild test \
  -project TCPViewer.xcodeproj \
  -scheme TCPViewer \
  -destination 'platform=macOS'

发布

发布脚本可以:

  • 构建并公证应用。
  • 签名 Sparkle 更新。
  • 将文件上传到 Cloudflare R2。
  • 将发布版本发布到后端。

首次设置:

npm install
bundle install
gh auth login

.env.example 创建本地 .env。添加所需的发布值。绝不要提交真实密钥。

.env 中使用 # 作为注释。sentry-cli 不接受 // 注释。

对于生产发布,向 ReleaseNote.json 添加匹配条目。然后运行:

npm run release

在询问时选择 betaproduction

生产发布还会:

  • 创建 Sparkle appcast。
  • 推送 v<version> 标签。
  • 发布 GitHub release。

若要仅为最新的公开生产发布创建 Homebrew Cask 拉取请求,请运行 make build 并选择 Homebrew Cask PR from latest release。 你也可以直接运行以下命令:

npm run release:homebrew

这会根据 GitHub release 资产验证公开 DMG,将分支推送到 ProxymanApp/homebrew-cask,并在 Homebrew/homebrew-cask 中打开贡献拉取请求。

产物写入到:

~/Desktop/tcpviewer-production/

许可证

TCP Viewer 采用 GPL-2.0-or-later 许可。这与其对 Wireshark 库的使用相匹配。

  • 完整 GPL 文本请参见 COPYING
  • 第三方声明请参见 THIRD_PARTY_NOTICES.md
  • 二进制发布源代码条款请参见 SOURCE_CODE_OFFER.md

致谢

  • Wireshark 提供数据包解析。
  • HexFiend 提供嵌入式十六进制查看器。

Wireshark 是 Wireshark Foundation 的商标。TCP Viewer 与 Wireshark Foundation 无关联,也未获得其认可。

分类