【异地组网】基于docker zerotier planet搭建虚拟局域网络
概要
前段时间使用zerotier+moon搭建了一套异地组网,虽然成功了,但也存在一些问题,比如因为服务器在国外,所以偶尔会导致各端点之间ping不通的情况,为了解决这个问题,我们本次尝试搭建 PLANET 行星服务器,可以简单理解为一套docker私服。
技术细节
首先需要有一台具有公网 ip 的服务器(需要开放 3443/tcp 端口,需要开放 3000/tcp 端口,9994/tcp 端口,9994/udp 端口)
然后在这台服务器上安装 docker和git。
本次是基于宝塔进行安装,先安装docker:

然后进入命令行,下载zeroiter planet容器
[crayon-6abaf1f2de4b1260581284/]
下载成功后执行安装脚本:
[crayon-6abaf1f2de4bd521708389/]
这里需要注意,如果你是centos系统,那么可能会因为内核版本太低导致安装不了,尽量用ubuntu20版本以上的系统。
当您看到类似如下字样时,表示安装成功:
[crayon-6abaf1f2de4c1087459381/]
通过安装程序提供的链接把planet文件下载下来,以备用。
访问 http://ip:3443 进入到管理页面
使用默认账号为:admin / password 登录。
进入后创建一个网络,可以得到一个网络ID

输入网络名称,创建成功后,小括号里的部分就是这个网络的ID了

分配一个网络IP段:

配置细节:

3个空分别是ip段,ip的起始,ip的结尾,(也可以直接点击上面的自动生成网络段按钮)
接下来是客户端,windows客户端需要把之前拷贝下来的planet文件拷贝到安装目录C:\ProgramData\ZeroTier\One下一份

打开windows服务,重启一下zerotier服务:


重启成功后申请加入:
[crayon-6abaf1f2de4c6227490556/]

这里可以看到,已经发现了客户端的申请。
Linux也是同理,进入安装目录下,上传plant文件覆盖,重新启动服务即可。
[crayon-6abaf1f2de4ca471973392/]

可以看到,Linux客户端也成功加入了,这里需要注意,linux需要开启9993 TCP端口号以确保能够正常通信。

Mac系统的替换路径:
[crayon-6abaf1f2de4cd385078861/]
使用命令查询一下节点:
[crayon-6abaf1f2de4cf419300358/]

接下来是最重要的互ping环节:

看起来还算稳定。
小结
这样,一套虚拟局域网私服就搭建好了,结果还是比较令人满意的。
