PendingNet 0.3.32
·
8 commits
to main
since this release
自建代理的一套自用客户端。你需要一台自己的 VPS——这个仓库不托管任何服务端。
这一版的重点:统计不再需要手工配
以前 macOS 客户端的「实时 / 应用 / 域名」三个页面,对绝大多数人是永远打不开的:统计数据由一个独立的采集器提供,而 App 从来不安装、也不启动它,界面上也没有任何地方能启用——只有当年手工做过 deploy/install.sh 的机器才碰巧有。现在改成:
- 采集器随 App 走(打进安装包并纳入签名),不再依赖机器上装没装过什么。
- 它跟代理引擎同生命周期:引擎起来它就起,引擎停掉它就停。换 VPS、换端口、改分流都会让引擎就地重启,这些路径走的是同一个入口,不会漏。
- 访问引擎的密钥每次现读,引擎重新生成密钥之后统计会自己恢复,不再静默失灵。
- 默认端口被占时会说清是谁占的、怎么查,必要时自动改用另一个端口;旧机器上遗留的采集器会被干净接管,历史数据不丢。
- 统计页那句没有下一步的「统计服务尚未启用」删掉了,换成四种能看出该做什么的说法:还没连接 / 这段时间没流量 / 采集器起不来(带原因)/ 在跑但这次没读到。
同时修掉采集端一个真 bug:监听端口被占用时它把错误吞掉了,进程活着但一个字节都不服务。
VPS 一键部署(0.3.31 引入,这一版继续改进)
curl -fsSL https://raw.githubusercontent.com/syncmeta/PendingNet/main/deploy/vps-install.sh | sudo bash跑完屏幕上直接给一条 pendingnet:// 配对链接,在装了 PendingNet 的 Mac / iPhone 上点一下就完成导入。这一版脚本的改动:
- 每次跑都会把机器上的服务端对齐到该用的版本。此前在装过旧版的机器上重跑,会沿用旧二进制、吐出老格式的
.pdnJSON 而不是链接。 - 生成后加了兜底检查:拿到的不是
pendingnet://链接就不算成功,直接说清原因。 - 新增
pendingnet-server version,一句话查清机器上装的是哪一版。 - 输出砍到只剩进度和链接;详细日志落到
/tmp/pendingnet-install.log,说明性内容进--help和 README。
系统要求和硬性前提
- macOS 14 或更高。安装包经 Developer ID 签名并通过 Apple 公证。
- 装完要去「系统设置 → 通用 → 登录项与扩展」打开 PendingNet 的后台项目——不打开,TUN 和系统代理两种模式都用不了。
- 要连上必须有一台自己的 VPS,用上面那条命令装好并生成配对链接。
已知边界
arm64 的服务端二进制只是交叉编译出来的,没在真 arm64 机器上跑过。iOS 版只能走 App Store / TestFlight。