0b6173d9cd1587759761ed13c597306a487498eb
档 3 真机准备的后端代码部分: - nodectl 新增 bootstrap-token -node=<uuid> 子命令:复用 mtls.NewBootstrapTokenManager(rdb).IssueToken 签发 agent enroll 用的一次性 token,只读 Redis(REDIS_ADDR/REDIS_PASSWORD),stdout 仅打印 token 便于 部署脚本直接捕获。 - 修复 Register 下发的 ConfigSnapshot.Reality 缺字段:此前只填 PrivateKey/ ShortID/ServerName,而 agent 的 render.go 还要读 ListenPort/HandshakeServer/ HandshakePort——缺这三个会渲染出 listen_port:0 + 空 handshake 的无效 sing-box server 配置,隧道起不来。现从节点 endpoint 解析监听端口、以 reality_sni 作 handshake 目标:443 填齐,与 httpapi.BuildClientConfig 的客户端口径一致。 - 强化 TestRegister_OK 断言新字段(ListenPort/ServerName/HandshakeServer/ HandshakePort/PrivateKey),防止该缺口回归。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Pangolin
面向中国大陆用户的终端 VPN(科学上网)项目。
- 设计方案:
docs/技术方案.md - 实施计划:
plan/ - 部署(Phase 0,容器化 + CI/CD):
deploy/
Phase 0 现状
数据面两条线,容器化、经 Gitea Actions 自动部署到节点,与现网服务隔离:
- Xray VLESS + REALITY(主线,经宿主 nginx SNI 分流)
- sing-box Hysteria2(晚高峰加速线,UDP 443)
部署细节见 deploy/README.md。
Description
Releases
22
client 1.1.1
Latest
Languages
Go
36%
Dart
21.3%
JavaScript
13%
HTML
12.8%
Shell
4.4%
Other
12.3%