组网
1、安卓手机
以上是下载地址,安装后使用微软用户即可登录
2、Windows
安装后无图形界面,右下角小图标点击log-in即可登录
3、Linux
以上链接可以获取所有类型系统的安装地址(安卓除外,需要去Github下载)
curl -fsSL https://tailscale.com/install.sh | sh
以上代码可以一键式安装
tailscale up #启动tailscale 获取登录地址
tailscale down # 关闭tailscale
Linux的还遇到一次掉线情况,重启以后就好了。
所有类型的终端都是登录即可加入网络,整个过程非常简单。tailscale会自行分配IP地址,如图所示
效果验证
ssh远程登录
tailscale组网的背景是想要远程连接到家里的小主机,使用xshell连接tailscale分配的IPv4地址22端口,输入用户密码即可正常登录
网络情况检查
经常会有个别设备掉线的情况,很可能是因为中转服务器的位置太远了。
这里可以看到目前连接的是东京服务器,延迟最小的tokyo服务器在120ms左右。
坑点:启动tailscale客户端会修改nameserver,导致无法正常解析,需要添加114DNS服务器
DERP搭建
开启容器服务
利用大佬米开朗基杨已经做好的镜像,简单修改配置将自己的云服开放成DERP节点(需要打开防火墙)。
docker run --restart always \
--name derper -p 12345:12345 -p 3478:3478/udp \
-v /root/.local/xxxx/:/app/certs \
-e DERP_CERT_MODE=manual \
-e DERP_ADDR=0.0.0.0:12345 \
-e DERP_DOMAIN=xxxx \
-d ghcr.io/yangchuansheng/derper:latest
其中xxxx需要改为域名,需要签发证书并部署,将配置中的路径/root/.local/xxxx/改为自己的真实路径。
容器开启以后,虽然日志提示没有找到指定路径的证书,但是实际通过浏览器访问对应域名还是成功了,证书也是有效的。
容器存在崩溃问题,修改crontab定时任务重启docker
0 */2 * * * docker restart derper &> /dev/null
添加DERP节点
添加自定义derp服务器到列表中
"derpMap": {
"OmitDefaultRegions": true, #禁用所有其他服务器
"Regions": {
"901": {
"RegionID": 901,
"RegionCode": "Myself",
"RegionName": "Myself Derper",
"Nodes": [
{
"Name": "901a",
"RegionID": 901,
"DERPPort": 1111, #端口
"IPv4": "IP", #IP地址
"InsecureForTests": true,
},
],
},
},
},
提升显著,平均延迟在25ms左右。
但是实际使用过程中tls频繁出问题,并且改443端口代理出问题,放弃该部分。