异地组网-zerotier

zerotier概述

一个网络层面的穿透工具, 可以让用户轻松搭建自己的虚拟网络, 经过授权后将真实环境下非同一局域网的电脑分配到同一网段下来并提供相应的虚拟网络IP地址;

使得各个设备间可以通过虚拟地址来访问彼此

概念

在zerotier网络体系中,根服务器(root server)被称为星球(planet),而每一台联网设备都被称为叶子(leaf),两台星球之间是通过星球节点握手建立隧道连接的,而zerotier作为一家总部位于加州的美国公司并没有在中国设有根服务器,因此在两台设备连接时受制于星球节点的连接质量,不免要产生高延迟,因此我们可以按照官方指引来搭建月亮(moon)节点,让设备相互连接时通过我们自己搭建的月亮节点来握手建立隧道,从而降低握手时的网络延迟、也提高联网稳定性和安全性。

  1. planet: 根服务器节点, zerotier在全球提供了共用的一些节点, 当使用官方提供的服务时, 需要通过这些节点去连接彼此, 在打洞成功情况下, 数据是不会经过这些节点的; — 也可以部署自己的根服务节点
  2. leaf: 你自己分散在各个地方的电脑,
  3. moon: 为你自己的电脑提供公网级别的节点, 更快更稳定的建立连接

使用说明

  1. 如果基于官方的节点进行局域网创建, 需要在官方控制台中创建网络, 并在客户端中加入对应的网络即可;
  2. 连上后, 需要勾选对应的节点, 表示鉴权通过才可正常互联
  3. 如果打洞失败的话, 可以自建moon服务器, 并加入到各个节点中, 这样可以更好的建立连接
  4. 如果moon方案还是太慢, 或者需要自行管理网络; 那么就可以进行planet服务器的搭建

PLANET搭建

GitHub - Jonnyan404/zerotier-planet: 一分钟自建zerotier-planet

一分钟自建zerotier-plant - Jonnyan的原创笔记

git clone https://github.com/Jonnyan404/zerotier-planet
OR
git clone https://gitee.com/Jonnyan404/zerotier-planet

cd zerotier-planet

# 在这里需要修改docker-compose.yaml中的ip和端口等信息
docker-compose up -d
# 以下步骤为创建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
  • 浏览器访问 http://ip:4000 打开web控制台界面。
用户名:admin

密码:mrdoc.fun
  • 浏览器访问 http://ip:3180 打开planet和moon文件下载页面(亦可在项目根目录 的./ztncui/etc/myfs/里获取)。
  • 创建对应的网络, 并设置ip范围
  • 客户端安装后, 替换客户端中的 planet文件, 并重启服务

Download - ZeroTier

# 不同的系统在不同的目录下
Windows: C:\ProgramData\ZeroTier\One
Macintosh: /Library/Application Support/ZeroTier/One
Linux: /var/lib/zerotier-one
FreeBSD/OpenBSD: /var/db/zerotier-one

# 配置文件在以上目录增加 local.conf文件
  • 加入创建的网络即可使用: zerotier-cli join xxxxx

MOON搭建

# docker部署zero-tier moon
version: "3"

services:
  zerotier-moon:
    image: seedgou/zerotier-moon
    container_name: "zerotier-moon"
    restart: always
    ports:
      - "9993:9993/udp"
    volumes:
      - /self/devData/zerotier/config:/var/lib/zerotier-one
    entrypoint:
      - /startup.sh
      - "-4"
      - <公网IP>
  • 客户端加入moon: zerotier-cli orbit
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值