
TCPViewer v1.18.0
一流的macOS应用,让你在Mac上清晰查看每个数据包。Wireshark的替代品。
TCP Viewer
一款简单、原生的 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 MCP
- 将 TCP Viewer 连接到 Codex 或其他 MCP 客户端。
- 检查捕获状态。
- 列出网络接口。
- 使用简单提示查找数据包。
- 随 TCP Viewer PRO 提供。
打开捕获文件
- 拖入 PCAP 或 PCAPNG 文件。
- 立即预览数据包。
- 使用与实时捕获相同的视图。
跟踪 TCP 和 UDP 流
- 重建 TCP 会话,或按捕获顺序查看 UDP 数据报。
- 从数据包菜单或工具菜单打开流。
- 同时显示两个方向。
- 仅显示客户端或服务器数据。
- 在文本和十六进制之间切换。
- 搜索流。
- 跳回源数据包。
分组流量
- 按应用对数据包进行分组。
- 按域名对数据包进行分组。
- 按 IP 地址对数据包进行分组。
- 跳转到你需要的流量。
协议过滤器
- 使用常见协议的快速过滤器。
- 将过滤器与文本搜索结合使用。
- 快速聚焦有用的数据包。
导出捕获内容
- 导出全部、已过滤或选中的数据包。
- 保存为 PCAP 或 PCAPNG。
- 在其他数据包工具中打开结果。
数据包详情
- 读取 Wireshark 级别的协议树。
- 检查字段名称和值。
- 将字段与原始字节对应起来。
- 搜索数据包详情。
开源
- 采用 GPL-2.0-or-later 许可。
- 查看捕获流水线。
- 查看数据包解码。
- 查看原生 macOS 界面。
- 报告问题或发送拉取请求。

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

要求
运行 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 中:
- 打开
TCPViewer.xcodeproj。 - 选择
TCPViewerscheme。 - 选择
My Mac。 - 按下 Run。
命令行构建:
xcodebuild -project TCPViewer.xcodeproj -scheme TCPViewer build
如果 Xcode 要求签名,请为 TCPViewer 和 PcapPlusPlusCore 选择开发团队。
测试
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
在询问时选择 beta 或 production。
生产发布还会:
- 创建 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 是 Wireshark Foundation 的商标。TCP Viewer 与 Wireshark Foundation 无关联,也未获得其认可。





