【Tealscale + Headscale + 自建服务器】异地组网笔记
结果起首是连接情况,双端都连接上自建的 Headscale,
https://i-blog.csdnimg.cn/direct/b65c49309ffa4563a8f4794874dc04c9.jpeg#pic_center
https://i-blog.csdnimg.cn/direct/e3729b66affc40e19920dcb85e81082f.jpeg#pic_center
手机利用移动流量,测试一下 ping 值
https://i-blog.csdnimg.cn/direct/947e27e722c14b7db4e0c52452f939cf.jpeg#pic_center
再试试进入游戏
https://i-blog.csdnimg.cn/direct/d497d073e5784f9da0dc22f800905938.jpeg#pic_center
可以看到是没标题的!
为什么要用 Headscale
比力 Wireguard,Headscale 增加了 p2p 的模式,Headscale 会在保证两台异地设备相连的同时,实验升级到 p2p
https://i-blog.csdnimg.cn/direct/4d216732336a478eb37d1468ee3f6883.png
https://i-blog.csdnimg.cn/direct/41087c4fdd6148c2baca437134920d18.png
云服务器安装 Headscale
可以看 Headscale 的官网的安装教程 ,进入云服务器,然后输入如下下令
这里的 HEADSCALE_VERSION 以及 HEADSCALE_ARCH 是版本和你云体系的架构的变量名,填写对应的值,回车
HEADSCALE_VERSION="0.23.0" # See above URL for latest version, e.g. "X.Y.Z" (NOTE: do not add the "v" prefix!)
HEADSCALE_ARCH="amd64" # Your system architecture, e.g. "amd64"
wget --output-document=headscale.deb \
"https://github.com/juanfont/headscale/releases/download/v${HEADSCALE_VERSION}/headscale_${HEADSCALE_VERSION}_linux_${HEADSCALE_ARCH}.deb"
然后等候下载即可,大概可以下载到本地,然后上传到服务器中
https://i-blog.csdnimg.cn/direct/d8ddeb2f0f5d4305b0e0f3e33051fbd1.png
下载完成后安装 Headscale
https://i-blog.csdnimg.cn/direct/bf339742f2a14a18bd2dea22b7c4b6e0.png
sudo apt install ./headscale.deb
开机自动启动
sudo systemctl enable --now headscale
配置 config.yaml
修改 etc/headscale/config.yaml 文件
# 这里改成你云服务器的 ip 加上 开放的 tcp 端口
server_url: http://你自己的ip/tcp端口
https://i-blog.csdnimg.cn/direct/70e68b1613c44eb68178d7dde7334d4d.png
创建反向代理
apt install -y nginx
这里会卡一下
https://i-blog.csdnimg.cn/direct/4acc96130daf4953a548c8dbe51e8db5.png
然后到 /etc/nginx/sites-available 这个目录下,编辑 default 文件,替换一下的下令
map $http_upgrade $connection_upgrade {
default keep-alive;
'websocket'upgrade;
'' close;
}
server {
listen 3355;
listen [::]:3355;
server_name 云服务器IP;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $server_name;
proxy_buffering off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $http_x_forwarded_proto;
add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always;
}
location /web {
indexindex.html;
alias/var/www/web;
}
}
搭建管理 UI
然后下载这个 ui 项目 https://github.com/gurucomputing/headscale-ui,解压到订定目录
https://i-blog.csdnimg.cn/direct/2ab6b06a59364b5d9d572a6d2176e848.png
之后开启 headscale 服务,重启 nginx
https://i-blog.csdnimg.cn/direct/0750bbe71e1d4a56ab63f5bd7172a3f9.png
systemctl start headscale
systemctl restart nginx
创建一个 apikeys 用于给网页授权
headscale apikeys create --expiration 9999d
https://i-blog.csdnimg.cn/direct/d0b5a327577f4f52a71774b5e3520ec3.png
之后访问 http://ip:端口号/web 就可以了
授权管理 UI
https://i-blog.csdnimg.cn/direct/48fcafe2b9d943cbad41066541fd534a.png
接着把生成的密钥粘贴到这里
https://i-blog.csdnimg.cn/direct/cdd7fe3721ce4f08aa216336c50e834a.png
添加互联设备
之后新增一个User view 即可,这是我添加的两个设备
https://i-blog.csdnimg.cn/direct/702914fabea94d0d8c406c032134a055.png
然后我在安卓端,用流量连接服务器,并 ping 我的 mac
https://i-blog.csdnimg.cn/direct/03fb2894ec9b4b06a1b6a7e3d47e0fc3.png
之后我的 mac 端也可以链接并 ping 通我的手机
https://i-blog.csdnimg.cn/direct/85c246f5c7324c64887ae29f6815dbd3.png
参考
[*]Tailscale玩法之内网穿透、异地组网、全隧道模式、纯IP的双栈DERP搭建、Headscale协调服务器搭建,用一期搞定,看一看不亏吧?
[*]Tailscale 官方手册
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]