分享一个自建zerotier-planet组网的教程

三级用户 aadream 9天前 1344

前置知识储备及物料储备

1. 一台有公网的云主机

2. 一点点的linux知识

3. 一点点耐心


1. 购买一台云主机

挑便宜的买, 比如华为现在有一个一年36块钱的轻量云主机(之前买的企鹅轻量云到期了, 改薅华子羊毛)

https://activity.huaweicloud.com/1111_promotion/index.html


屏幕截图_20241113_182912.png

系统自便, 我选的ubuntu

2. 登陆云主机

以下linux主机上的操作可以用root来进行, 如果熟悉linux的用户及权限知识, 可以自行创建普通用户, 需要root权限的操作再sudo执行


2.1 安装docker

#下载安装脚本 大概会下载失败, 脚本文件放在后面分享了
curl -fsSL https://get.docker.com -o install-docker.sh
#查看脚本
cat install-docker.sh
#安装docker
sudo sh install-docker.sh


2.2 安装部署ztncui

这里选择克隆一个简化配置的仓库 https://github.com/Jonnyan404/zerotier-planet

git clone https://github.com/Jonnyan404/zerotier-planet
# 或者隆gitee仓库 git clone https://gitee.com/Jonnyan404/zerotier-planet
cd zerotier-planet

仓库内容如下

image-20241113165015957.png


需要修改docker-compose.yml文件的个别配置

image-20241113165247829.png

MYADDR修改为云主机的公网ip, ZTNCUI_PASSWD修改为任意密码

#由于某些原因, 国内网络无法访问docker hub官方源, 所以需要先搞到keynetworks/ztncui的镜像(image)
#后面会附上下载连接
docker load -i ztntui.tar.gz

image-20241113165759367.png

docker compose up -d #运行zerotier镜像
docker compose ps #查看运行状态
docker compose logs #查看日志
docker stats #查看容器消耗资源 (ctrl + c 退出)

image-20241113170126169.png

消耗资源很少, 100M内存, 0.1%的cpu


2.3 创建moon文件和planet文件

# 以下步骤为创建planet和moon
docker cp mkmoonworld-x86_64 ztncui:/tmp
docker cp patch.sh ztncui:/tmp
docker exec -it ztncui bash /tmp/patch.sh
docker restart ztncui #重启ztncui
#把planet和moon文件复制到home目录
cp ztncui/etc/myfs/* ~/


2.4 修改云主机相关的安全组, 开放9993的tcp和udp, 4000的tcp端口

华为云为例

image-20241113170714317.png

修改云主机关联的安全组即可

image-20241113170740605.png

image-20241113170903397.png

image-20241113171000614.png

放行9993的tcp和udp, 4000的tcp, 源地址选0.0.0.0/0 (4000是配置组网权限的的网页, 因为我已经配好了, 所以就关掉4000的放行了)

配置好之后需要点一下实例安全组的确定

image-20241113171320318.png

2.5 打开云主机ip:4000 去配置zerotier

image-20241113171517958.png

右上角登陆, 用户名admin, 密码是docker-compose文件里填的密码

登陆后可能会让你修改初始登陆密码, 不管他, 点add network

image-20241113171702410.png

随便起个名字

image-20241113171734974.png

private可以控制接入权限, 建议钩上, 不然的话谁都可以接入这个网络

image-20241113171857419.png

easy setup这里自动生成组网的网址网关, 生成后submit 提交一下

image-20241113171917198.png

zerotier服务端的配置就结束了, 之后只需要有客户端接入时放行就好了

3. 客户端安装zerotier-one(windows, linux, mac, 安卓)

https://www.mrdoc.fun/doc/443/#h1-%E5%AE%A2%E6%88%B7%E7%AB%AF%E4%B8%BB%E8%A6%81%E4%B8%BAWindows,Mac,Linux,Android

我没windows电脑, 就拿linux和安卓举个例子

3.1 linux(arch系)

#安装zerotier-one
sudo pacman -S zerotier-one
#下载云主机上的moon和planet文件到本机
scp 云主机:xxx.moon ./
scp 云主机:planet ./
#在/var/lib/zerotier-one文件夹下创建moons.d文件夹
sudo mkdir /var/lib/zerotier-one/moons.d
#复制下载的moon文件到/var/lib/zerotier-one/moons.d
sudo cp xxx.moon /var/lib/zerotier-one/moons.d
#复制planet到/var/lib/zerotier-one
sudo cp planet /var/lib/zerotier-one
#将刚刚复制的文件所有权修改为zerotier-one:zerotier-one
sudo chown -R zerotier-one:zerotier-one /var/lib/zerotier-
one/planet /var/lib/zerotier-one/moons.d
#重启zerotier客户端
sudo systemctl daemon-reload
sudo systemctl restart zerotier-one.service

配置完成, 接下来查看peers和加入网络

image-20241113173446417.png

去zerotier服务端上看一下network id

image-20241113173637058.png

加入网络

sudo zerotier-cli join 你的network id

image-20241113173720434.png

在网页控制台可以看到电脑已经申请加入网络, 这时候需要钩上Authorized和Active bridge, 这样就成功组网了

image-20241113173837880.png


钩上后刷新, 设备有了组网ip

image-20241113173945894.png

sudo zerotier-cli listnetworks #查看加入网络

image-20241113174102080.png

看一下电脑的网络信息, 新网络已经生效

image-20241113174152628.png

其他设备按照这个步骤加入组网, 就可以互相之间访问了, 比如异地串流, 异地局域网联机


3.2 安卓相关

安卓想加入自建组网的话, 需要使用魔改的客户端 ZerotierFix

https://github.com/kaaass/ZerotierFix

下载最新的安装包, 把moon和planet文件复制到手机里

https://github.com/kaaass/ZerotierFix/releases

安装后进入app设置, 启动自定义planet, 然后从文件导入, 启用移动网络使用

image-20241113175724786.png

之后moon入轨, 大概会提示出错, 不用管它

image-20241113175807790.png

然后加入网络

image-20241113175838360.png

手机添加网络后, 去zerotier控制台放行

image-20241113175358557.png


然后手机上就可以访问到其他电脑上的内容, 可以用smb直接看电脑或者nas上的视频, 也可以用moonlight串流



image-20241113180134040.png

在公司电脑上ping一下手机延迟

image-20241113180921293.png

50ms+, 还彳亍口巴


docker安装脚本和ztncui的打包镜像


参考连接

https://github.com/xubiaolin/docker-zerotier-planet

https://github.com/Jonnyan404/zerotier-planet

https://github.com/kaaass/ZerotierFix

https://www.zerotier.com/download/




上一篇:Microsoft defender 越来越过分了。
下一篇:【水】给耳机换了线
最新回复 (35)
  • 三级用户 jiandanshenghuo 9天前
    0 2
    就佩服你们这些会技术的
  • 四级用户 wangyu1221 9天前
    0 3
    不懂就问:zerotier-planet是干啥的?
  • 四级用户 hawkli 9天前
    0 4
    楼主赞。
    我有一些问题啊,组planet后,你是用国内的云主机么?我比较倾向用国外主机,还能用来架个梯子。你二个子网设备相互之间的速度相比用公开的服务要如何?比如你传个1G文件会多快?我现在是用的官网的,速度是很慢的,PING 300ms以上,偶尔会快,肯定不稳定。弄个几十K的小文件是无所谓,大的想也不要想。
    我现在已经用了官网的,如果自己再建planet,原先的网能直接继承过来么?这个我没深入研究,我肯定不想丢了现在的网络结构,也不想比如一年后planet的服务器到期后结构又要移来移去。
  • 四级用户 sakurachan 9天前
    0 5
    wangyu1221 不懂就问:zerotier-planet是干啥的?
    感觉像是V-P-N(不是科学的那个)
  • 四级用户 tomofrog 9天前
    0 6
    先收藏了,虽然家里宽带的公网ip已经爽了好多年了,可以在外直接访问黑裙,不过说不定啥时候公网ip就被收回去呢
  • 三级用户 aadream 8天前
    0 7
    hawkli 楼主赞。 我有一些问题啊,组planet后,你是用国内的云主机么?我比较倾向用国外主机,还能用来架个梯子。你二个子网设备相互之间的速度相比用公开的服务要如何?比如你传个1G文件会多快?我现在是用的官 ...
    我用的华为云国内的云主机,主打的就是便宜。。。而且链接快,tcp打洞的成功率比官网和国外云主机高,以前用企鹅新加坡的云主机也搭过zerotier,延迟太高了,还不能打动,流量全出一次国,使用体验比较差,就换回国内了。。。

    如果组网的电脑能打洞的话,那就是直连,流量不用走云主机,比如我单位网络是200m 家里是100,从家里拷贝单位电脑的文件的话会有10MB的速度
  • 三级用户 aadream 8天前
    0 8
    hawkli 楼主赞。 我有一些问题啊,组planet后,你是用国内的云主机么?我比较倾向用国外主机,还能用来架个梯子。你二个子网设备相互之间的速度相比用公开的服务要如何?比如你传个1G文件会多快?我现在是用的官 ...
    关于网络转移的事情不太了解,你可以去看看官方文档和ztncui的文档
  • 四级用户 YIDAWEN 8天前
    0 9
    我已经把zerotier账号密码忘了.......
  • 四级用户 cooky 8天前
    0 10
    第一条:PASS
  • 四级用户 r0pom 8天前
    0 11
    然后就可以云串流了~
  • 二级用户 19exexe 8天前
    0 12
    如果我目前已经架黑群晖,我可以从哪一个步骤开始?
  • 四级用户 pzani1 8天前
    0 13
    感谢大佬分享, 太有用了
  • 五级用户 btdio 8天前
    0 14
    看看
  • 三级用户 aadream 8天前
    0 15
    cooky 第一条:PASS
    华子目前有36块钱一年的云主机
  • 三级用户 aadream 8天前
    0 16
    19exexe 如果我目前已经架黑群晖,我可以从哪一个步骤开始?
    从买云服务器开始?
  • 四级用户 pwmmwq 8天前
    0 17
    咱就是说,先留着
  • 三级用户 aadream 8天前
    0 18
    YIDAWEN 我已经把zerotier账号密码忘了.......
    自建planet不需要官网账号
  • 五级用户 无敌宇宙大帝 8天前
    0 19
    看看
  • 四级用户 cooky 8天前
    0 20
    aadream 华子目前有36块钱一年的云主机

    然后第二年又要各种折腾

    • 老男人游戏网配套论坛
      37
        立即登录 立即注册
发新帖
本论坛禁止发布SWITCH和PS4相关资源,若有其他侵权内容,请致邮3360342659#qq.com(#替换成@)删除。