跳到主要内容
♜ ReignHub / 文档
自建部署

部署可选探测器

一个 Go 二进制,在同一个端口提供 TCP 和 UDP 探测。

什么时候需要

Worker 不能直接监听原始 UDP/TCP 探测 Socket。默认可以使用公共 UDP STUN;如果希望补充自己的候选地址发现、提高公共探测服务不可达时的覆盖,可在有公网地址的服务器运行 reignhub-probe。

探测器只返回地址映射,不保存设备目录、不运行 Agent、不托管网页,也不是业务中继。没有它也可以部署 Worker。

构建并运行

Go 版本以仓库 go.mod 为准,也可以使用发布产物中的 Linux amd64/arm64 探测器。

go build -o reignhub-probe ./cmd/reignhub-probe
./reignhub-probe --listen :26330

服务器与云安全组同时放行:

端口协议用途
26330UDPUDP STUN Binding/地址映射发现
26330TCP原生 TCP 探测与打洞候选发现

普通 Nginx HTTP 反代不能转发这两个探测协议。探测域名应设置为 DNS only,不能套 Cloudflare HTTP 代理。

让 Worker 发布入口

在 Worker 变量中配置并重新部署:

SELF_STUN=stun:probe.example.com:26330
TCP_STUN=probe.example.com:26330

客户端仍然只填 Worker 的 HTTPS 地址。服务会通过 /p2p/config 下发这些入口。

公共与自建 STUN 并行尝试,优先得到可用的直连路径;浏览器没有原始 TCP 能力,TCP 探测主要用于原生端。

运行边界

对称 NAT、运营商网络及企业防火墙可能仍无法打洞;增加探测器并不保证所有网络都能直连。直连不可用时,Worker 的加密 WebSocket 中继提供备用路径。

在 GitHub 上编辑此页

本页内容