ZeroTier 是一款即开即用的开源网络服务,它可以将不同物理地点的电脑、手机、网络设备,组成一个虚拟局域网,并拥有较高的安全性。而这些设备,就可以像在家中,或同一个办公室中一样,使用各种内网服务,比如打印机、NAS 等。最近桌面客户端更新至 1.8.4 版本,拥有了新的 UI,推荐下载更新。@Appinn
青小蛙在此前介绍过:
一分钟自建 zerotier-planet 行星服务器
这是 @mrdoc 同学基于 ztncui-aio 项目整理的 docker-compose.yml 文件,虽然简单,但也易用:
二者没有本质区别,你也可以通过 composerize(将 Docker 命令行转换为 docker-compose 文件格式)服务将 ztncui-aio 提供的 docker run 命令行转换为 docker-compose.yml 文件。
或者根据指南直接使用:
$ git clone https://github.com/key-networks/ztncui-aio # to get a copy of denv file, otherwise make your own
$ docker pull keynetworks/ztncui
$ docker run -d -p3443:3443 -p3180:3180 \
-v /mydata/ztncui:/opt/key-networks/ztncui/etc \
-v /mydata/zt1:/var/lib/zerotier-one \
--env-file ./denv <CHANGE HERE ACCORDING TO NEXT PART> \
--name ztncui \
keynetworks/ztncui
然后,就可以通过 https://ip地址:3443 来访问控制面板,这是独立于 Zerotier 官网的控制面板,你可以创建网络,管理用户,自定义网段、路由、DNS,分配 IPv4 和 IPv6 地址等功能:
ZeroTier 客户端连接
直接使用原生的 ZeroTier 客户端连接上面的 Network ID 即可,无需任何修改、无需任何修改、无需任何修改。
自建 ZeroTier Planet 行星服务器可以解决两个问题:
- 官方免费版本有 50 个设备连接数的限制
- 提升网络稳定性
青小蛙听到过一些反馈,部分地区是不太能连接到 ZeroTier 官方的 Planet 服务器的,所以这也算是一个解决方案。
行星服务器 Planet 和 月亮服务器 Moon 区别
ZeroTier 对于此的描述是这样的(机器翻译):
一个行星 Planet 上的所有 ZeroTier 节点有效地居住在一个单一的数据中心内。这使得它很容易直接连接任何地方的设备,但它的缺点是没有互联网连接就无法工作。网络连接远非完全可靠,有时出于安全原因,用户可能希望将一组节点与互联网的其他部分完全 “隔空”。
我们引入了添加你自己的用户定义的根服务器的能力。由于我们居住的数据中心是行星 Planet ,所以用户定义的根的集合被称为月球 Moon。当一个节点 “环绕 “一个月球 Moon 时,它会将月球的根添加到它的根服务器集。围绕行星 Planet 运行的节点仍将使用行星根,但如果它们看起来更快或者没有其他可用的根,它们将使用月球的根。
推荐云服务器
以下推荐的云服务器可以用来自建 ZeroTier Planet 行星服务器。
通过新用户账号购买一台廉价的云服务器,然后创建这个 ZeroTier Planet 行星服务器,还顺便解决了内网穿透的问题。
有返利,其中阿里云推荐 ECS共享型 n4(1M 带宽,261.36元/3年),腾讯云推荐轻量服务器(5M 带宽,50元/首年):
- 阿里云:https://www.aliyun.com/activity/1111/newuser1st?userCode=zpda9d2e
- 腾讯云:https://curl.qcloud.com/t4KCYNTe
老用户就…看着办吧。
啊,果真老用户不如狗啊😺
cloudflared的那个通道,虽然在美国的,但是加上freenom的域名,一分不用花,如果用代理访问的话,速度还可以。
怎么用?能帮忙详细说明一下吗?没有买过服务器的人,谢谢
就是搜索cloudflare tunnel,搜ytb也可以
我想问下控制面板有做加密吗?没有加密的话在公网会很危险。
有用户名密码呀。你可以让 nginx 反代
这个真不错。
如果不需要内网穿透的话,可以直接部署在家里NAS上吧(我用的是自建TrueNAS,网络带公网IP)?
这个版本似乎需要公网 IP,因为实际上它还是和官方服务器交换信息了。不然那个 Network ID 怎么能直接用呢
很多很多年没有折腾过服务器了,有时间再折腾折腾
不支持DDNS是最大的问题~
他不需要 DDNS 呀
可以部署在路由器上么……ASUS这种可以装app的路由器
好像可以的。
1个固定IP+反向端口转发就不香了吗?为啥要搞这么复杂
求设置方法,一直在找这样的简单的办法。moon和planet都太复杂,没有基础的人搞不定。
不过奇怪的是,发现加入搭建的行星后,在各设备中zerotier-cli peers后显示该行星服务器的类型是LEAF,而不是PLANET,大家是这样么
我之前是用moon的,退出moon后,现在listpeers显示我连接的vps是leaf而不是planet 跟@LXXSELF的一样 请问需要怎么处理
重装试试
已经换了台电脑了 这台电脑之前没装过zerotier这个软件 连上后也是显示leaf
我的也是都是LEAF节点,根本就不是PLANET,应该是转发者理解错了吧,就是不知这样有没有比之前做MOON节点好,没人做测试,我就几台机也试不出来,只是现在看到有几台机显示不在线,但是实际是在线的,以前做MOON节点时在官网显示在不在线都是很准的。
这个应该是不是PLANET ,应该叫做 network controller更合适一些。只能优化分发速度。貌似并不能优化端到端的链接速度。
但是github最后有一句 ‘You could use this to build your own root server and distribute planet file’查了半天也没找找到如何或者planet file。不知道有没有大神可以指点一下。
我的安装了也是这样,还是planet,就算有公网IP 延迟还是有400ms已上,请问怎么优化呢?
这个很有帮助,之前用官方的服务器老是连接不上,自建的情况好多了,非常感谢!
问下,这个需要有公网IP吗?
需要的,建议在云服务器上安装。
动态的公网IP效果怎样?(比如用Docker安装在有公网动态IP的路由器上)
那就需要域名了
zerotier 安装完成,几个设备都加入进去了,可是在外网却不能访问是怎么回事啊??请求指点下!!
设备已全部通过认证。
上错误日志啊截图啊…
公网IP???买云服务器???家里的网不可以吗?哦,是要不宕机的机器啊。
会搞这个的话,用linux+nginx不香吗?
半桶水的我,对这个权限不受限制的软件,感到。。。
说话不要加那么多问号。Nginx 是 https server 啊,和这个什么关系?
我的意思是,这个服务器的权限,好像太大了点,看文章介绍,貌似是能获取硬盘里的所有东西。
而nginx服务器,最多就是能获取指定文件夹下的所有内容,权限小,安全高一点。
nginx不仅是能提供网页,也能实现上传下载。至于连打印机还有其他什么的为就不知道了。
不懂之处,请多多指教。
按照博主的方法,客户端连接正常,也获取到IP了,服务网页能看到客户端,但是Peer status显示还是OFFLINE,互相之间也不能访问,哪里还有设置吗
用官方服务器正常么?
官方的正常的,还有端口只需要映射一个4000的就可以的吧
请问解决了吗,我的也是offline,咋办?
你解决了吗,我也是官方正常,自己的就offline然后内网设备也不能互相访问
有解决吗,我也是这个问题
发现只是显示问题,其实是能连上的,只不过连接速度比官方的还慢,所以并没有什么用,我已经放弃了
装上后跟官方的没什么区别,但是那个user感觉有点奇怪。。既然都是admin那为什么还要出个创建用户的选择呢。。
直接IPV6多好呀,还搞内网穿透这么麻烦
安卓手机能够出现在新建网络面板上,但是点了授权也始终显示离线,台式电脑能够连接上,也能够分配ip,但是安卓手机不行,不知道为什么。有解决办法么?
我部署完成之后,能显示连接的设备手机或电脑,电脑之间ping不通应该怎么办?现在只能电脑单向ping手机!
防火墙看看
嗯嗯,防火墙关掉有用!
但是还想请问一下,有没有降低延迟的办法?🤣
这个教程有个最严重的问题就是实际创建的是Controller,而不是root节点(也叫moon节点)
GitHub里的issue已经有一位给出了在这个项目中创建moon节点的方法
https://github.com/Jonnyan404/zerotier-planet/issues/11
注意1.当发现moon.json创建失败,内容为空时,删除容器和镜像并重新拉取。
2.创建出的XXXX.moon文件很重要,需要放进Zerotier客户端安装目录下的moon.d目录(没有需要重新创建)
缺点是controller的web控制界面的端口会暴露在公网上
这真是…
那算是Planet么?
我X转了一圈,发现太复杂了。。。