惊落一身雪 发表于 2024-7-13 20:35:29

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

简介

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

一、购买云服务器

假如你没有本身的有固定公网IP的服务器,则必要购买一台云服务器。
购买发起:假如钱多,可以选择阿里云,腾讯云。假如钱少,可以选择狗云,三丰云,观星云等浩繁小服务器厂商。
设置:最好2核2G,带宽按需选:假如只是长途办公,3Mbps公网带宽就够了。假如是游戏级别,带宽最幸亏10Mbps以上。可选共享带宽。
体系镜像:Ubuntu 20.04
地域:游戏级别长途最好选国内的,且跟你所在地越近越好。办公长途的话可以拓宽至香港以及周边国家的服务器,如新加坡,韩国
我本身购买的是一台阿里云99一年的服务器(用于办公长途)2Mbps,和一台观星云(用于游戏长途)30Mbps。本文测试基于观星云这台
阿里云
https://img-blog.csdnimg.cn/direct/44edb16b7a3e49f193b70ac2f40f76e7.png
观星云
https://img-blog.csdnimg.cn/direct/6cef3e41cfa64c6c9776b46607685176.png
二、安装(基于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
https://img-blog.csdnimg.cn/direct/81c6ff223e6a467ba722dda7f332b158.png
登录后点击添加网络选项卡,添加私有网络
https://img-blog.csdnimg.cn/direct/2e697bb38193458eb70a01bf060665f7.png
点击简易安装,分配地点
https://img-blog.csdnimg.cn/direct/d3479b4d83fa41dfbd86e7f3aa10abca.png
https://img-blog.csdnimg.cn/direct/b65dff010a004efabb625165f0a9831e.png
6. 客户端设置(Windows电脑)

在客户端电脑上按Win+R打开运行,输入services.msc打开服务,找到“Zerotier One”服务,单击右键克制他
https://img-blog.csdnimg.cn/direct/1782f1175f754689b38d9988a4a31565.png
https://img-blog.csdnimg.cn/direct/87c7bc08fd724ee78c4b7504a726421c.png
进入“C:\ProgramData\ZeroTier\One”,替换本来的planet文件为本身的planet文件
https://img-blog.csdnimg.cn/direct/b0a27c2fa9ed4f25b3f158ee1ef759ae.png
再去服务里启动ZeroTier One服务
在任务栏的zerotier图标上单击右键,选择join new network
https://img-blog.csdnimg.cn/direct/d48af903d6604b48ab0c4a0722b4a352.png
输入16位码,点击join
https://img-blog.csdnimg.cn/direct/10eac653284545f8aec2878d1e83f7d3.png
7. 客户端设置(Android手机)

下载Zerotier Fix.apk
   链接:https://pan.baidu.com/s/12j-P6Bari9PG258Wp4ufiQ
提取码:92km
https://img-blog.csdnimg.cn/direct/2c326f3b7bc64e5a9a74fed3d075e9a6.jpeg
在Zerotier Fix的设置里打开“启动自界说planet”,然后将本身的planet文件发得手机上,然后点击“设置planet文件”
https://img-blog.csdnimg.cn/direct/05fdc3a86e514b34a6e320b98e673f17.jpeg
然后在主界面的右下角点击加好,添加网络,并输入16位码
https://img-blog.csdnimg.cn/direct/263f00bcc45c4195b8c890dc90592fd7.jpeg
8. 去背景分配IP地点

将刚刚添加的客户端设备勾选“经授权的”和“自动桥接”,并分配IP地点
https://img-blog.csdnimg.cn/direct/d17fe9d916724148aa947c8dd17ee0f8.png
9. 使用长途桌面连接大概Parsec连接长途设备

输入刚分配的捏造局域网IP,就可以连接长途设备(刚添加可能会连不了,可以等一段时间,大概ping通了在连接)
https://img-blog.csdnimg.cn/direct/916e8d9b1cfa41269e8505ea2debe1ed.png
实测利用Parsec公网长途2K 60帧原神,总延迟大概150ms,带宽能跑在10Mbps-20Mbps(观星云)
https://img-blog.csdnimg.cn/direct/a0a92dcd29cf4b2091a0dea116efbc24.jpeg

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 搭建zerotier私有planet服务器实现公网游戏级别长途