自建免备案防偷 Tailscale 国内中继(DERP)教程
Tailscale 与 DERP 简介
Tailscale 是什么?
Tailscale 是一个基于 Wireguard 的带有多种网络工具的 P2P 组网工具。得益于其 P2P 的特性,Tailscale 还可以进行内网穿透,打破 NAT 的限制直达另一台主机。
DERP 是什么?
DERP
是一个 Tailscale 自行开发的中继服务。当所处网络环境难以穿透(如校园网、移动大内网、4G、5G 等)时,所有流量都会经由 DERP 中转至目标地址。
在默认情况下,Tailscale 官方已经提供了环大陆的官方 DERP 服务,但是由于中国大陆的网络连通性等问题,官方并未提供大陆的 DERP 节点。为了确保大陆的打通成功率,我们需要自建一个 DERP 服务,来帮助我们 “打洞”。
安装 Docker 与 Docker compose
1 | bash <(curl -Ls https://docker.denlu.top/docker.sh) |
DERP 节点服务中部署 Tailscale 客户端(重要)
原理
由于我们不使用域名进行部署,我们无法使用域名的 --verify-clients
参数进行客户端验证,很容易被别人随便扫扫就扫走,他们就可以使用我们的宝贵国内流量进行一个白嫖。DERP 在无验证的情况下,会默认转发走所有需要转发的流量而不用校验等操作。
简单安装教程
官方教程: Tailscale Docs
- 先使用一键脚本部署:
curl -fsSL https://tailscale.com/install.sh | sh
- 进行登录操作:
tailscale login
- 此时控制台就会弹出登录 URL,用你的浏览器访问这个 URL 按操作指引就可以完成安装。
Docker 镜像
1 | services: |
新建一个文件,命名为:docker-compose.yml
在该文件夹内,docker compose up -d
即可启动该 docker
对于服务器在国内的情况,可以将 ghcr 的链接替换一下,比如南大的(替换第三行的 image)
1 | services: |
修改 tailscale ACL 配置启用第三方 DERP
- 进入 ACL 编辑页面:Tailscale
- 加入新配置文件
1 | "derpMap": { |
测试是否成功
使用网络连接测试
- 找到一个在用 tailscale 的客户端
- 进入终端
- 输入
tailscale netcheck
- 检验是否有下图回应
使用 ping 测试连通性
- 找到一个在用 tailscale 的客户端
- 进入终端
- 输入
tailscale ping 你的另一个主机地址
- 检验是否联通 (例如出现
via DER (xxx)
) 即为成功
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.
Comments
ArtalkWaline