发现 
命令行工具开发者工具
NetWatch:终端网络诊断工具
一个用 Rust 编写的终端网络诊断工具,单文件零配置,实时查看抓包、连接与诊断结果。
- 浏览
- 4
- 访问
- 0
- 下载
- 0
- 版本
- v0.39.0
- 平台
- Windows、macOS、Linux
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。
详细介绍
项目简介
NetWatch 是一个用 Rust 编写的终端网络诊断工具。它只有一个二进制文件,也不需要配置文件;在获得抓包权限后,它能提供实时抓包与 L7 解码、进程归属(在支持的平台上),以及一个诊断引擎:当学习到的基线被打破时,它会打开一个问题;当修复措施持续有效时,它会关闭这个问题。支持 macOS、Linux 与 Windows。
主要功能
- 十个标签页:Dashboard(延迟块、镜像吞吐、承载链路、按进程汇总的连接)、Connections(每个 socket 的进程、PID、状态、GeoIP、RTT、重传)、Interfaces、Packets、Stats、Topology、Timeline、Processes、Diagnose、Egress。
- 三种视图:Full(完整十标签)、Lite(
--lite,80x24,适合 SSH 到树莓派或 tmux 分屏)、Dense(--view dense,130x44 以上,四个方框、盲文吞吐图与内核 TCP 细节)。按V可在不重启的情况下循环切换,采集器持续运行。 - 抓包与深度解析:实时解码、TLS 1.3 / 1.2 解密(将
SSLKEYLOGFILE指向 netwatch 即可读取自己的流量)、JA4、流跟踪、显示过滤器、PCAPNG 与 PCAP 导出。 - Diagnose 诊断引擎:基于基线与 30 条规则,给出排序后的原因,并可验证关闭;同一批对象可生成
report.md。 - Egress 出站检查:观察目标地址、提升为策略、对被拦截的流量告警。
- 无 TUI 用法:
doctor、diagnose run、daemon --metrics(Prometheus/metrics)、uptime --since 7d、geoip update、--demo回放录制事件。
安装与使用
brew install netwatch # macOS / Linux
scoop install netwatch # Windows(需要 Npcap)
cargo binstall netwatch-tui # 预编译二进制
cargo install netwatch-tui # 从源码构建
Debian / Ubuntu 可通过官方 apt 源安装,Fedora 可启用 COPR,另有 AUR、Nix、conda-forge、容器镜像与 releases 页面上的各平台二进制。
netwatch # 接口、连接、配置,无需特权
sudo netwatch # 可运行,但 root 下的隔离有限
netwatch --lite # 单屏 80x24
netwatch --view dense # 四个方框,130x44 以上
按 1–9 和 0 切换标签页,V 循环三种视图,? 查看全部快捷键。
注意事项
- 抓包需要提权。Linux 上可给二进制授予
cap_net_raw,cap_bpf,cap_perfmon+eip并限制到 netwatch 组,或使用随附的 systemd unit;直接sudo netwatch也可行,但以 root 运行时沙箱只能作为纵深防御,隔离能力有限。 - Windows 需要预先安装 Npcap。
- FreeBSD 为尽力支持,需要 FreeBSD 13 或更新版本。
--remote、AI Insights、netwatch resolver set、recover等属于实验性功能,线格式可能变化。
本作品整理自 GitHub 开源项目 matthart1983/netwatch,原作者 @matthart1983,许可证 MIT。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v0.39.0当前版本
修复 Dense 视图进程与连接迷你图未填满宽度的问题;WHOIS 改为仅按 W 时才查询 RDAP;TUI 在 panic 和关闭信号下恢复终端;加固安全,包括脱敏远程 URL、限制恶意文件读取、为 GeoIP/WHOIS 缓存设上限,并修补沙箱能力泄漏。
- v0.38.0
退出前增加确认,q 关闭浮层;新增 netwatch uptime 从本地 uptime 日志查看断网历史;支持导出带注释的 PCAPNG;Windows 改用 IP Helper 获取连接、DNS、网关与路由,并通过 ICMP API 做 ping 和 traceroute;修复 Linux 缺少 ss 时改用 /proc/net。
评论