tailscale + derp中继 + 阿里云服务器 (无域名版)
使用tailscale默认的中转节点延迟很高,因为服务器都在国外。
感谢大佬提供的方案:Tailscale 搭建derp中继节点,不需要域名,不需要备案,不需要申请证书(最新) - yafeng - 博客园
基于这个方案,直到运行 tailscale netcheck 命令都一切正常,可以看到 "Nearest DERP"是自己搭建的derp中继,延时大概几十毫秒,比默认节点至少快十几倍。但是!!!最后一步却 ping 不通!!!
折腾了半天,终于搞定了。本人纯小白,也不知道以下哪个步骤起了作用,记录一下。
根据上面大佬的方案配置完后,再运行以下步骤。
一、在配置derp的服务器上安装tailscale
运行自动安装脚本:
curl -fsSL https://tailscale.com/install.sh | sh
启动tailscale并登陆:
tailscale up
进入登陆网页登陆tailscale账号。
重启derp服务:
systemctl daemon-reload
systemctl restart derp
二、重启 Tailscale 服务:
在所有相关设备上(包括配置derp的服务器),重启 Tailscale 服务以确保配置生效。
Linux 系统:
sudo systemctl restart tailscaled
Windows系统:
以管理员身份打开cmd,然后运行:
net stop Tailscale
net start Tailscale
三、检测是否配置成功
使用以下命令查看:
tailscale netcheck
使用tailscale ping查看是否通过自己设置的中继连接。
如果在DERP latency中出现自己刚才设置的服务器Test Derper,并且能ping通,即为安装成功。
其他、关于tailscale的Access Controls配置文件
在配置文件里的'ssh'之前粘贴以下内容(以下是对我来说起作用的配置):
"derpMap": {
"OmitDefaultRegions": true, //加入这个会只用自己的节点
"Regions": {
"900": {
"RegionID": 900,
"RegionCode": "test",
"RegionName": "Test Derper",
"Nodes": [
{
"Name": "900a",
"RegionID": 900,
"HostName": "alicloud", //这个随便写
"IPv4": "xx.xx.xx.xx", //改成自己的IP
"InsecureForTests": true,
},
],
},
},
},
总结
完成以上配置后,每次连接时执行以下操作:
在配置derp的服务器上运行以下命令,hostname改成阿里云服务器的公网ip:
derper --hostname="12.12.12.12" -certmode manual -certdir ./
按照上面的步骤二,重启 Tailscale 服务。