内网穿透软件tailscale自定义中转节点DERP安装方法
tailscale是一个和zerotier类似的、用来组网和内网穿透的软件。tailscale使用tcp协议,在国内操 蛋的网络环境里比使用udp协议的zerotier更稳定。
zerotier的自定义中转节点(卫星节点)的设置方法对客户端非常不友好,设置麻烦,安卓app甚至无法设置自定义中转节点。
相比之下,tailscale只需要在服务器上设置好自定义中转节点就行,客户端不需要任何设置。
以下方法在甲骨文ARM服务器上测试成功。
1、安装go
在这里找到适合自己服务器版本的安装包 https://golang.org/dl/
ARM服务器用这个:https://golang.org/dl/go1.17.1.linux-arm64.tar.gz
wget https://golang.org/dl/go1.17.1.linux-arm64.tar.gz
tar -zxf go1.17.1.linux-arm64.tar.gz -C /usr/local
mkdir -p /home/go
在 /etc/profile 末尾加入:
export GO111MODULE=on
export GOROOT=/usr/local/go
export GOPATH=/home/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
source /etc/profile
2、安装derper
go install tailscale.com/cmd/derper@main
3、启动
derper -a :12345 --stun
其中12345是服务开启的端口,甲骨文服务器系统防火墙,以及甲骨文控制面板里的防火墙,都要开启12345的tcp端口,同时还要开启3478的udp端口。
4、设置
登录tailscale网站,进入Access Controls菜单,在里面加上配置代码:
"derpMap": {
"Regions": {
"900": {
"RegionID": 900,
"RegionCode": "hostloc",
"Nodes": [{
"Name": "hostloc1",
"RegionID": 900,
"IPv4": "甲骨文服务器ip"
}]
}
}
}
5、重启各个客户端,好像不重启也行
在客户端详情里看到有“Relay #900” 就说明是成功连上刚才创建的节点了。
6、问题
好像节点没有认证机制,如果别人知道了你的节点的地址和端口,别人也可以用。
