本帖最後由 张无忌 於 2026-2-4 11:18 編輯
大陆用 Tailscale 需要用大陆自建 DERP 中转服务器
如果大陆用 Tailscale,就算在外面接 Tailscale 都要用 DERP (Designated Encrypted Relay for Packets) 中转服务器,一般的官方的 DERP 大陆是没有的,在香港、日本、新加坡、欧美有官方的 DERP,那么大陆就需要自己建立的 DERP。在香港使用 Tailscale,速度非常块,只有不去大陆网就非常好!!!如果香港 Tailscale 连大陆 Tailscale exit exit 的话,就速度不稳定,主要(中国)香港与(中国)大陆中有 GFW。
大陆家里的 GL.iNet GL-MT6000 (或者同类的 GL.iNet 路由器)或 OpenWrt 安装 Tailscale subnets and exit node,手机或电脑安装 Tailscale,最好能大陆建立自己 DERP 服务器,在大陆家里有科学上网功能,那么在大陆外面要连接大陆家里的 Tailscale subnets,可以看到家里的 NAS,再连上 Tailscale exit node,就可以在家里科学上网。
大陆要安装一个自己的 DERP 服务器是非常重要,不需要大陆以外的官方 DERP。
现在我参考大陆的 Tailscale [1],
图1:要 Tailscale 官方 DERP
图2:用大陆自建 DERP,不需要官方 DERP
A. 自建 DERP [2]
A1. 更新包管理工具,获取最新软件列表..
A2. 进入 root 用户目录- apt install wget git openssl curl -y
複製代碼 ..
B. 搭建 Go 语言环境
B1. 下载 Go 语言压缩包(大陆地区)- wget https://golang.google.cn/dl/go1.25.0.linux-amd64.tar.gz
複製代碼 ..
B2. 解压 Go 压缩包到 /usr/local/ 路径下- tar -C /usr/local -xzf go1.25.0.linux-amd64.tar.gz
複製代碼 ..
B3. 将 Go 语言持久化加入系统环境变量,并立即生效- echo "export PATH=$PATH:/usr/local/go/bin" >> /etc/profile
- source /etc/profile
複製代碼 ..
B4. *大陆地区切换使用内地下载源 (Go 1.13 及以上)- go env -w GO111MODULE=on
- go env -w GOPROXY=https://goproxy.cn,direct
複製代碼 ..
C. 搭建 DERP 服务
C1. 编译并安装 tailscale derper 模块- go install tailscale.com/cmd/derper@latest
複製代碼 ..
C2. 创建文件夹并移动 derper 到合适位置- mkdir /usr/local/derp
- mkdir /usr/local/derp/bin
- mv /root/go/bin/derper /usr/local/derp/bin
複製代碼 ..
C3. 创建系统服务配置文件(务必完整复制粘贴这串多行指令,并替换自己服务器的 IPv4 地址)- cat > /etc/systemd/system/derper.service << EOF
- [Unit]
- Description=Tailscale DERP Server
- After=network.target
- Wants=network.target
- [Service]
- User=root
- Group=root
- ExecStart=/usr/local/derp/bin/derper -certmode=manual -certdir=/usr/local/derp -hostname=你的服务器公网IPv4地址 -a :33331 -http-port=33332 --verify-clients
- Restart=on-failure
- RestartSec=5s
- [Install]
- WantedBy=multi-user.target
- EOF
複製代碼 ..
C4. 启用并立即启动 DERP 服务- systemctl enable derper
- systemctl start derper
複製代碼 ..
C5. 检查 DERP 服务运行状态,并点击键盘 q 键退回命令行..
C5. 进入 DERP 目录检查生成的 HTTPS 证书密钥..
D. 配置 Linux 防火墙
D1. 安装 ufw 防火墙..
D2. 开放必要端口,如果你的云服务器上还自定义了其他服务,请开放对应的端口- ufw allow 22
- ufw allow 33331
- ufw allow 33332
- ufw allow 3478
複製代碼 ..
D3. 启用 ufw 防火墙..
E. 测试 DERP 服务是否上线
E1. 在浏览器访问以下网址,忽略不安全提示,点击继续访问,若出现 DERP 页面,说明服务已上线- https://你的服务器公网IPv4地址:33331
複製代碼 ..
F. 将服务器加入 Tailscale 局域网
F1. 安装 Tailscale- curl -fsSL https://tailscale.com/install.sh | sh
複製代碼 ..
F2. 开启 Tailscale复制命令行中出现的https://login.tailscale.com/x/xxxxxxxx网址,粘贴到浏览器中,登录后即可将服务器加入 Tailscale 网络
G. 使用自建 DERP 替代官方 DERP
G1. 进入 Tailscale 控制台,点击顶部菜单栏的“Access controls”,点击“JSON editor”,在第一层大括号内粘贴以下内容,之后点击底部“Save”保存更改- "derpMap": {
- "OmitDefaultRegions": false,
- "Regions": {
- "900": {
- "RegionID": 900,
- "RegionCode": "mcn",
- "RegionName": "Mainland China",
- "Nodes": [
- {
- "Name": "900",
- "RegionID": 900,
- "DERPPort": 33331,
- "IPv4": "你的服务器公网IPv4地址",
- "InsecureForTests": true,
- },
- ],
- },
- },
- },
複製代碼 ..
大陆 Tailscale Mainland China (mcn) 测试
Listing 1:Exit node=none,console=大陆家里,mcn 有 18.8ms- C:\Users\Nancy>tailscale netcheck
- 2026/02/01 16:11:19 portmap: monitor: gateway and self IP changed: gw=192.168.55.1 self=192.168.55.181
- Report:
- * Time: 2026-02-01T08:11:21.262181Z
- * UDP: true
- * IPv4: yes, 36.56.xx.yy:53433
- * IPv6: yes, [240e:361:422d:600:f15a:6b50:36eb:6451]:53434
- * MappingVariesByDestIP: false
- * PortMapping:
- * CaptivePortal: false
- * Nearest DERP: Mainland China
- * DERP latency:
- - mcn: 18.8ms (Mainland China)
- - sfo: 148.1ms (San Francisco)
- - hkg: 153.6ms (Hong Kong)
- - nue: 163.1ms (Nuremberg)
- - lax: 166.4ms (Los Angeles)
- - hel: 185.3ms (Helsinki)
- - dfw: 185.8ms (Dallas)
- - tor: 190.9ms (Toronto)
- - ord: 192.9ms (Chicago)
- - hnl: 195.6ms (Honolulu)
- - mia: 205.2ms (Miami)
- - nyc: 205.2ms (New York City)
- - sea: 209.9ms (Seattle)
- - iad: 210.2ms (Ashburn)
- - tok: 219.3ms (Tokyo)
- - fra: 220.1ms (Frankfurt)
- - lhr: 220.4ms (London)
- - par: 223.4ms (Paris)
- - den: 223.7ms (Denver)
- - ams: 230.9ms (Amsterdam)
- - waw: 239.1ms (Warsaw)
- - mad: 240.6ms (Madrid)
- - sin: 245.5ms (Singapore)
- - syd: 288.4ms (Sydney)
- - dbi: 311.9ms (Dubai)
- - sao: 345ms (São Paulo)
- - nai: 362.9ms (Nairobi)
- - blr: 375.8ms (Bengaluru)
- - jnb: 391.7ms (Johannesburg)
- C:\Users\Nancy>
複製代碼 ..
Listing 2: Exit node=none,console=手机中国移动- C:\Users\Nancy>tailscale netcheck
- 2026/02/04 19:10:16 portmap: monitor: gateway and self IP changed: gw=172.20.10.1 self=172.20.10.6
- Report:
- * Time: 2026-02-04T11:10:21.7652217Z
- * UDP: true
- * IPv4: yes, 39.144.xx.xx:51150
- * IPv6: yes, [2409:8931:4240:49d1:f965:9d57:39a1:96f]:55179
- * MappingVariesByDestIP: true
- * PortMapping:
- * CaptivePortal: false
- * Nearest DERP: Mainland China
- * DERP latency:
- - mcn: 50.1ms (Mainland China)
- - hkg: 80.9ms (Hong Kong)
- - sin: 102.1ms (Singapore)
- - tok: 110.1ms (Tokyo)
- - blr: 148.3ms (Bengaluru)
- - lax: 221.9ms (Los Angeles)
- - sfo: 234.7ms (San Francisco)
- - hel: 234.8ms (Helsinki)
- - sea: 236.9ms (Seattle)
- - nue: 237.1ms (Nuremberg)
- - syd: 249.8ms (Sydney)
- - dfw: 262.6ms (Dallas)
- - den: 273.9ms (Denver)
- - nyc: 276.6ms (New York City)
- - ord: 277.8ms (Chicago)
- - iad: 288ms (Ashburn)
- - hnl: 289.1ms (Honolulu)
- - tor: 294.2ms (Toronto)
- - mia: 300.5ms (Miami)
- - ams: 301.3ms (Amsterdam)
- - par: 301.9ms (Paris)
- - fra: 319.6ms (Frankfurt)
- - waw: 322.9ms (Warsaw)
- - nai: 334.2ms (Nairobi)
- - dbi: 341.8ms (Dubai)
- - lhr: 352.9ms (London)
- - mad: 368.3ms (Madrid)
- - sao: 423.4ms (São Paulo)
- - jnb: 442.2ms (Johannesburg)
- C:\Users\Nancy>
複製代碼 ..
Listing 3: Exit node=vultr (美国),console=大陆家里- C:\Users\Nancy>tailscale netcheck
- Report:
- * Time: 2026-01-29T06:05:44.1478685Z
- * UDP: false
- * IPv4: (no addr found)
- * IPv6: no, but OS has support
- * MappingVariesByDestIP:
- * PortMapping:
- * CaptivePortal: false
- * Nearest DERP: Los Angeles
- * DERP latency:
- - lax: 148.1ms (Los Angeles)
- - sfo: 159.6ms (San Francisco)
- - sea: 176.3ms (Seattle)
- - dfw: 180ms (Dallas)
- - tor: 196.1ms (Toronto)
- - iad: 201.9ms (Ashburn)
- - hnl: 203.6ms (Honolulu)
- - mia: 203.6ms (Miami)
- - nyc: 204.9ms (New York City)
- - tok: 257.4ms (Tokyo)
- - lhr: 276.4ms (London)
- - par: 280.3ms (Paris)
- - ams: 283.6ms (Amsterdam)
- - fra: 287.2ms (Frankfurt)
- - mad: 291.5ms (Madrid)
- - waw: 299.5ms (Warsaw)
- - nue: 307ms (Nuremberg)
- - sin: 317.4ms (Singapore)
- - mcn: 318.2ms (Mainland China)
- - hel: 322.4ms (Helsinki)
- - sao: 340.2ms (São Paulo)
- - blr: 356.5ms (Bengaluru)
- - dbi: 370.6ms (Dubai)
- - nai: 411.1ms (Nairobi)
- - jnb: 444.3ms (Johannesburg)
- - hkg: 471.1ms (Hong Kong)
- - syd: (Sydney)
- - ord: (Chicago)
- - den: (Denver)
- C:\Users\Nancy>
複製代碼 ..
Listing 4: Exit node=Vultr (美国),console=Vultr- root@vultr:~# tailscale netcheck
- Report:
- * Time: 2026-01-29T06:18:58.542369334Z
- * UDP: true
- * IPv4: yes, 207.246.101.103:48426
- * IPv6: no, but OS has support
- * MappingVariesByDestIP: false
- * PortMapping:
- * Nearest DERP: Los Angeles
- * DERP latency:
- - lax: 700µs (Los Angeles)
- - sfo: 7.8ms (San Francisco)
- - sea: 27.1ms (Seattle)
- - den: 28.6ms (Denver)
- - dfw: 33.2ms (Dallas)
- - tor: 48.3ms (Toronto)
- - iad: 52.5ms (Ashburn)
- - hnl: 54.4ms (Honolulu)
- - ord: 55ms (Chicago)
- - mia: 56.1ms (Miami)
- - nyc: 59.2ms (New York City)
- - sin: (Singapore)
- - fra: (Frankfurt)
- - syd: (Sydney)
- - blr: (Bengaluru)
- - tok: (Tokyo)
- - lhr: (London)
- - sao: (São Paulo)
- - ams: (Amsterdam)
- - jnb: (Johannesburg)
- - par: (Paris)
- - mad: (Madrid)
- - hkg: (Hong Kong)
- - waw: (Warsaw)
- - dbi: (Dubai)
- - nai: (Nairobi)
- - nue: (Nuremberg)
- - hel: (Helsinki)
- - mcn: (Mainland China)
- root@vultr:~#
複製代碼 ..
References:
[1] [Tutorial] Access Your Home LAN from the Internet! | Tailscale + Self-Hosted DERP Server | D1 Tech
[2] https://d1tech.org/tailscale-derp-tutorial/
Others:
[3] 自建免备案防偷 Tailscale 国内中继(DERP)教程
[4] 不使用域名搭建自己的tailscale derp服务
[5] DERP servers
[6] Custom DERP servers
[7] 自建免备案防偷 Tailscale 国内中继(DERP)教程
[8] Tailscale 替代 DERP:Peer Relays 更加简单的中继方法(支持分流)
目录 Tailscale for everyone |