搭建zerotier私有planet服务器实现公网游戏级别远程

07-13 1491阅读

简介

zerotier是一个虚拟局域网工具,官方提供了自己的根服务器(planet)作为数据转发,但由于服务器大多在境外,国内访问延迟较高且不稳定。此时,搭建自己的planet服务器就是不二之选

方法

一、购买云服务器

如果你没有自己的有固定公网IP的服务器,则需要购买一台云服务器。

购买建议:如果钱多,可以选择阿里云,腾讯云。如果钱少,可以选择狗云,三丰云,观星云等众多小服务器厂商。

配置:最好2核2G,带宽按需选:如果只是远程办公,3Mbps公网带宽就够了。如果是游戏级别,带宽最好在10Mbps以上。可选共享带宽。

系统镜像:Ubuntu 20.04

地域:游戏级别远程最好选国内的,且跟你所在地越近越好。办公远程的话可以拓宽至香港以及周边国家的服务器,如新加坡,韩国

我自己购买的是一台阿里云99一年的服务器(用于办公远程)2Mbps,和一台观星云(用于游戏远程)30Mbps。本文测试基于观星云这台

阿里云

搭建zerotier私有planet服务器实现公网游戏级别远程

观星云

搭建zerotier私有planet服务器实现公网游戏级别远程

二、安装(基于Ubuntu)

参考:https://blog.csdn.net/smzq123/article/details/128760942?spm=1001.2014.3001.5506

1. 升级云桌面的软件

依次执行

apt-get upgrade
apt-get dist-upgrade

等待升级完成

2. 安装nlohmann-json-dev

根据引用文章里的原文说

“若使用的是Ubuntu16.04,在编译Zerotier的时候会出现找不到nlohmann/json.h的问题,需要安装nlohmann-json-dev:”

所以以防万一,都安装一下

执行

wget http://kr.archive.ubuntu.com/ubuntu/pool/universe/n/nlohmann-json/nlohmann-json-dev_2.1.1-1.1_all.deb && dpkg -i nlohmann-json-dev_2.1.1-1.1_all.deb

如果执行报错,或者链接失效,可去我百度网盘下载nlohmann-json-dev_2.1.1-1.1_all.deb,然后上传到服务器之后在对应文件夹下执行dpkg -i nlohmann-json-dev_2.1.1-1.1_all.deb:

链接:https://pan.baidu.com/s/1myeO-3Jyy_RlMeOccPpSQQ

提取码:jxji

3. 安装Zerotier 和 ZtnCui

说明:ZtnCui是一个用来给zerotier呈现配置web界面的东西,开源免费

执行

wget https://gitee.com/opopop880/zerotier_planet/raw/master/zerotier_planet_debain.sh && chmod +x zerotier_planet_debain.sh && ./zerotier_planet_debain.sh

为了防止链接失效,此处贴出链接中“zerotier_planet_debain.sh”的源代码

#!/bin/bash 
# debain ubuntu自动安装zerotier 并设置的为planet服务器
# addr服务器公网ip+port
 ip=`wget http://ipecho.net/plain -O - -q ; echo`
 addr=$ip/9993
 apt autoremove
 apt update -y
 apt install curl -y
 echo "********************************************************************************************************************"
 echo "**********deabin unbuntu自动安装zerotier 并设置的为planet服务器 火木木制作 放在root目录执行**********************************"
 curl -s https://install.zerotier.com/ | sudo bash
 
 identity=`cat /var/lib/zerotier-one/identity.public`
 echo "identity :$identity=============================================="
 apt-get -y install build-essential
 apt-get install git -y
 git clone https://gitee.com/opopop880/ZeroTierOne.git
 cd ./ZeroTierOne/attic/world/
sed -i '/roots.push_back/d' ./mkworld.cpp
sed -i '/roots.back()/d' ./mkworld.cpp 
sed -i '85i roots.push_back(World::Root());' ./mkworld.cpp 
sed -i '86i roots.back().identity = Identity(\"'"$identity"'\");' ./mkworld.cpp 
sed -i '87i roots.back().stableEndpoints.push_back(InetAddress(\"'"$addr"'\"));' ./mkworld.cpp 
source ./build.sh
./mkworld
mv ./world.bin ./planet
\cp -r ./planet /var/lib/zerotier-one/
\cp -r ./planet /root
systemctl restart zerotier-one.service
wget https://gitee.com/opopop880/ztncui/attach_files/932632/download/ztncui_0.8.6_amd64.deb
sudo dpkg -i ztncui_0.8.6_amd64.deb
cd /opt/key-networks/ztncui/
echo "HTTPS_PORT = 3443" >>./.env
secret=`cat /var/lib/zerotier-one/authtoken.secret`
echo "ZT_TOKEN = $secret" >>./.env
echo "ZT_ADDR=127.0.0.1:9993" >>./.env
echo "NODE_ENV = production" >>./.env
echo "HTTP_ALL_INTERFACES=yes" >>./.env
systemctl restart ztncui
rm -rf /root/ZeroTierOne
echo "**********安装成功*********************************************************************************"

此源代码里需要clone一个ZeroTierOne仓库和下载ztncui_0.8.6_amd64.deb文件。如果仓库失效,可以去我百度网盘下载(仓库文件名ZeroTierOne-master),然后自行修改此脚本文件

链接:https://pan.baidu.com/s/18TVyul4DGX-NxUMkZK24WQ

提取码:mky3

4. 下载私有planet文件

进入服务器的/root目录下,可以看到文件planet

下载到客户端电脑上

5. 访问后台

记得先开放tcp 9993跟3000端口,UDP 9993端口

访问http://你的公网IP或者域名:3000/

点击登录,初始用户名admin,初始密码password

搭建zerotier私有planet服务器实现公网游戏级别远程

登录后点击添加网络选项卡,添加私有网络

搭建zerotier私有planet服务器实现公网游戏级别远程

点击简易安装,分配地址

搭建zerotier私有planet服务器实现公网游戏级别远程

搭建zerotier私有planet服务器实现公网游戏级别远程

6. 客户端设置(Windows电脑)

在客户端电脑上按Win+R打开运行,输入services.msc打开服务,找到“Zerotier One”服务,单击右键停止他

搭建zerotier私有planet服务器实现公网游戏级别远程

搭建zerotier私有planet服务器实现公网游戏级别远程

进入“C:\ProgramData\ZeroTier\One”,替换原本的planet文件为自己的planet文件

搭建zerotier私有planet服务器实现公网游戏级别远程

再去服务里启动ZeroTier One服务

在任务栏的zerotier图标上单击右键,选择join new network

搭建zerotier私有planet服务器实现公网游戏级别远程

输入16位码,点击join

搭建zerotier私有planet服务器实现公网游戏级别远程

7. 客户端设置(Android手机)

下载Zerotier Fix.apk

链接:https://pan.baidu.com/s/12j-P6Bari9PG258Wp4ufiQ

提取码:92km

搭建zerotier私有planet服务器实现公网游戏级别远程

在Zerotier Fix的设置里打开“启动自定义planet”,然后将自己的planet文件发到手机上,然后点击“设置planet文件”

搭建zerotier私有planet服务器实现公网游戏级别远程

然后在主界面的右下角点击加好,添加网络,并输入16位码

搭建zerotier私有planet服务器实现公网游戏级别远程

8. 去后台分配IP地址

将刚刚添加的客户端设备勾选“经授权的”和“主动桥接”,并分配IP地址

搭建zerotier私有planet服务器实现公网游戏级别远程

9. 使用远程桌面连接或者Parsec连接远程设备

输入刚分配的虚拟局域网IP,就可以连接远程设备(刚添加可能会连不了,可以等一段时间,或者ping通了在连接)

搭建zerotier私有planet服务器实现公网游戏级别远程

实测利用Parsec公网远程2K 60帧原神,总延迟大概150ms,带宽能跑在10Mbps-20Mbps(观星云)

搭建zerotier私有planet服务器实现公网游戏级别远程

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]