Tailscale自建Peer Relay中继加速-代替derp新方案

Tailscale自建Peer Relay中继加速-代替derp新方案
Liuwx一、背景
2025年10月 Tailscale 1.86 官方发布了 Peer Relay 功能。相比传统 DERP 中继,Peer Relay 无需证书、无需配置 derpmap,一条命令即可搭建中继服务器,性能更优(RTT 从 160ms 降至 30ms),是替代自建 derper 的更佳方案。
二、Peer Relay 是什么
让任意 Tailnet 节点充当中继服务器。
传统 DERP vs Peer Relay
| 维度 | 传统 DERP | Peer Relay |
|---|---|---|
| 协议 | HTTPS + WebSocket (TCP) | 原生 WireGuard (UDP) |
| 节点来源 | 官方固定节点或自建 derper | 任何 Tailnet 节点 |
| 配置 | 需要证书/derpmap | 一条命令 |
| 性能 | TCP 握手 + TLS,开销大 | WireGuard UDP,握手快 |
| 可回退 | — | 自动回退 DERP |
三、部署步骤
(一)放行 UDP 端口
需放行以下端口:
UDP/40000(Peer Relay 端口,可自定义)UDP/41641(STUN 端口)
阿里云安全组需添加 UDP 规则,源 0.0.0.0/0
(二)VPS 安装 Tailscale
1 | curl -fsSL https://tailscale.com/install.sh | sh |
(三)写 ACL,加 tag
在 https://login.tailscale.com/admin/acls 添加:
无需配置 derpMap,Peer Relay 无需手动添加中继节点
1 | { |
必须先改 ACL 再执行 tailscale up,否则授权会被拒绝
(四)VPS 加入 Tailnet 并声明 tag
1 | tailscale up --hostname=<自定义主机名> \ |
–hostname= 后面的名称可以自定义,如 aliyun-beijing
(五)打开 Peer Relay 端口
1 | tailscale set --relay-server-port=40000 |
端口 40000 可自定义,需与第一步放行的端口一致
验证端口监听:
1 | ss -ulnp | grep 40000 |
(六)验证
在客户端查看连接类型:
1 | tailscale status |
预期看到:peer-relay <hostname>:40000:vni:1
只要显示
via peer-relay(...)就是正常的
四、部署前后对比
| 指标 | 部署前 (Hong Kong DERP) | 部署后 (Peer Relay) |
|---|---|---|
| 连接类型 | relay hkg | peer-relay aliyun-beijing:40000 |
| RTT | 160ms+ | 29-54ms |
| 协议 | HTTPS + WebSocket | WireGuard UDP |
| 屏幕共享 | 明显延迟 | 与局域网一致 |
| SSH 回显 | 半秒空白 | 基本无感 |
五、回滚
1 | tailscale down |
宿主机 Nginx/frps/Docker 完全不受影响
六、其他常用命令
- 查看 Peer Relay 状态:
tailscale status - 关闭 Peer Relay:
tailscale set --relay-server-port=0 - 重启 Tailscale:
tailscale down && tailscale up
七、子网路由(高级用法)
除了作为中继加速,Tailscale 还能让部署了 Tailscale 的设备(如 NAS、软路由)充当局域网网关,让其他 Tailscale 客户端能直接访问该设备所在局域网内的其他设备。
适用场景
- 某些设备无法安装 Tailscale(如智能家居设备、打印机、IP 摄像机等)
- 希望用原有内网 IP 地址直接访问这些设备,无需额外配置
工作原理
1 | ┌─────────────┐ Tailscale ┌─────────────┐ |
如图,NAS 部署了 Tailscale 并开启子网路由后,其他 Tailscale 客户端可以直接通过 192.168.0.x 访问局域网内的设备 B,无需在设备 B 上安装 Tailscale。
配置步骤
- 在 NAS/网关上开启子网路由宣告:
1 | tailscale up --advertise-routes=192.168.0.0/24 |
根据实际网段修改,如
192.168.1.0/24
- 回到 Tailscale 管理后台 Machines,找到对应机器,点击右侧三个点,选择 Edit route settings
- 如果第一步配置正确,这里会显示刚刚新增的网段,勾选并保存
效果
即可通过在浏览器输入 10.10.10.X,访问 NAS 局域网对应的网络设备。
参考
- Tailscale Peer Relay 官方公告
- 5km.studio 国内自建 Peer Relay 实现 Tailscale 加速
- Tailscale 1.86+ 版本要求






