【Tealscale + Headscale + 自建服务器】异地组网笔记

打印 上一主题 下一主题

主题 995|帖子 995|积分 2985


结果

起首是连接情况,双端都连接上自建的 Headscale,


手机利用移动流量,测试一下 ping 值

再试试进入游戏

可以看到是没标题的!
为什么要用 Headscale

比力 Wireguard,Headscale 增加了 p2p 的模式,Headscale 会在保证两台异地设备相连的同时,实验升级到 p2p


云服务器安装 Headscale

可以看 Headscale 的官网的安装教程 ,进入云服务器,然后输入如下下令
这里的 HEADSCALE_VERSION 以及 HEADSCALE_ARCH 是版本和你云体系的架构的变量名,填写对应的值,回车
  1. HEADSCALE_VERSION="0.23.0" # See above URL for latest version, e.g. "X.Y.Z" (NOTE: do not add the "v" prefix!)
  2. HEADSCALE_ARCH="amd64" # Your system architecture, e.g. "amd64"
  3. wget --output-document=headscale.deb \
  4. "https://github.com/juanfont/headscale/releases/download/v${HEADSCALE_VERSION}/headscale_${HEADSCALE_VERSION}_linux_${HEADSCALE_ARCH}.deb"
复制代码
然后等候下载即可,大概可以下载到本地,然后上传到服务器中

下载完成后安装 Headscale

  1. sudo apt install ./headscale.deb
复制代码
开机自动启动
  1. sudo systemctl enable --now headscale
复制代码

配置 config.yaml

修改 etc/headscale/config.yaml 文件
  1. # 这里改成你云服务器的 ip 加上 开放的 tcp 端口
  2. server_url: http://你自己的ip/tcp端口
复制代码

创建反向代理

  1. apt install -y nginx
复制代码
这里会卡一下

然后到 /etc/nginx/sites-available 这个目录下,编辑 default 文件,替换一下的下令
  1. map $http_upgrade $connection_upgrade {
  2.     default      keep-alive;
  3.     'websocket'  upgrade;
  4.     ''           close;
  5. }
  6. server {
  7.     listen 3355;
  8.     listen [::]:3355;
  9.     server_name 云服务器IP;
  10.     location / {
  11.    
  12.             proxy_pass http://127.0.0.1:8080;
  13.                 proxy_http_version 1.1;
  14.                proxy_set_header Upgrade $http_upgrade;
  15.                 proxy_set_header Connection $connection_upgrade;
  16.                 proxy_set_header Host $server_name;
  17.                 proxy_buffering off;
  18.                 proxy_set_header X-Real-IP $remote_addr;
  19.                 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  20.                 proxy_set_header X-Forwarded-Proto $http_x_forwarded_proto;
  21.                 add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always;
  22.     }
  23.    
  24.     location /web {
  25.                 index  index.html;
  26.                alias  /var/www/web;
  27.         }
  28. }
复制代码

搭建管理 UI

然后下载这个 ui 项目 https://github.com/gurucomputing/headscale-ui,解压到订定目录

之后开启 headscale 服务,重启 nginx

  1. systemctl start headscale
  2. systemctl restart nginx
复制代码
创建一个 apikeys 用于给网页授权
  1. headscale apikeys create --expiration 9999d
复制代码

之后访问 http://ip:端口号/web 就可以了

授权管理 UI


接着把生成的密钥粘贴到这里


添加互联设备

之后新增一个User view 即可,这是我添加的两个设备

然后我在安卓端,用流量连接服务器,并 ping 我的 mac

之后我的 mac 端也可以链接并 ping 通我的手机

参考


  • Tailscale玩法之内网穿透、异地组网、全隧道模式、纯IP的双栈DERP搭建、Headscale协调服务器搭建,用一期搞定,看一看不亏吧?
  • Tailscale 官方手册

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

商道如狼道

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表