Skip to Content
🦒Web3Research is going alpha testing 🎉

实验室内网

Web3Research 实验室内网基于自建的开源版 ZeroTier 组网实现。 内网服务所有核心服务器均设置在国内,主要服务于国内研究者(主要课题组成员)的对服务器的访问需求。

连接方式

连接需要分为三步骤:

  1. 从内部渠道获得 planet 文件。
  2. 替换客户端的 planet 文件,具体请根据实际环境寻找对应操作系统的章节,执行对应操作。
  3. 使用当前网络 id 9e157cb858a910fb 加入网络。
  4. 通过zerotier-cli info 命令 或者 右键操作系统托盘处的zerotier找到并记录客户端 ID。ID格式为10位16进制字符串,例如 9e157cb858
  5. 通过内部渠道提交客户端 ID,等待管理员(管理员需填写对应机器所有者的实名信息)批准加入请求。

Windows 配置

首先去 zerotier 官网下载一个 zerotier 客户端

planet 文件覆盖粘贴到C:\ProgramData\ZeroTier\One中(这个目录是个隐藏目录,需要运允许查看隐藏目录才行)

Win+S 搜索 服务

ui

找到 ZeroTier One,并且重启服务

ui

使用管理员身份打开 PowerShell

执行如下命令,看到 join ok 字样

PS C:\Windows\system32> zerotier-cli.bat join 网络id 200 join OK PS C:\Windows\system32>

管理后台同意加入请求

zerotier-cli peers 可以看到 planet 角色

Linux 客户端

步骤如下:

  1. 安装 linux 客户端软件
  2. 进入目录 /var/lib/zerotier-one
  3. 替换目录下的 planet 文件
  4. 重启 zerotier-one 服务(service zerotier-one restart)
  5. 加入网络 zerotier-cli join 网络 id
  6. 管理后台同意加入请求
  7. zerotier-cli peers 可以看到 planet 角色

安卓客户端配置

通过 Zerotier 非官方安卓客户端 完成planet替换与加入网络,等待管理同意后即可

MacOS 客户端配置

步骤如下:

  1. 进入 /Library/Application\ Support/ZeroTier/One/ 目录,并替换目录下的 planet 文件
  2. 重启 ZeroTier-One:cat /Library/Application\ Support/ZeroTier/One/zerotier-one.pid | sudo xargs kill
  3. 加入网络 zerotier-cli join 网络 id
  4. 管理后台同意加入请求
  5. zerotier-cli peers 可以看到 planet 角色

OpenWRT 客户端配置

步骤如下:

  1. 安装 zerotier 客户端
  2. 进入目录 /etc/config/zero/planet
  3. 替换目录下的 planet 文件
  4. 在 openwrt 网页后台重启 zerotier 服务
  5. 在 openwrt 网页后台加入网络
  6. 管理后台同意加入请求
  7. zerotier-cli peers 可以看到 planet 角色

iOS 客户端配置

方案一: 越狱后安装 ZeroTier,然后替换planet文件

方案二: 使用 Wireguard 接入到 ZeroTier 网络

服务原理

ZeroTier 是一款强大的 P2P VPN 工具,它能让你在互联网上搭建属于自己的虚拟局域网。通过它,你可以轻松实现远程访问家中设备的需求 - 比如在公司用手机直接访问家里的 NAS。最重要的是,设备之间是点对点直连的,无需经过中转服务器,既保证了速度,又提升了安全性。

它的工作原理是这样的:通过 ZeroTier One 客户端,在不同设备(如笔记本、手机、服务器等)之间建立 P2P 连接,即使这些设备都在 NAT 后面也没问题。它使用了 STUN 等技术,可以穿透大多数类型的 NAT,实现设备间的直接通信。如果实在无法直连,才会通过中转服务器进行通信。

简单来说,ZeroTier 就像是一个跨越互联网的”虚拟交换机”,让分布在世界各地的设备,都能像在同一个局域网内一样方便地相互访问。

zerotier

ZeroTier 网络中的关键概念

PLANET(行星服务器):ZeroTier 网络的核心根服务器,负责网络发现和初始连接。相当于整个网络的”中枢”。

MOON(卫星服务器):用户可以自建的私有根服务器。它可以作为区域性的代理节点,帮助就近的设备更快地建立连接,提升网络性能。

LEAF(叶子节点):所有接入 ZeroTier 网络的终端设备,如电脑、手机、服务器等。这些设备通过 PLANET 和 MOON 的协调来相互发现和通信。

实验室内网通过自建 PLANET 服务器,完全掌控 ZeroTier 网络:

  1. 提升网络稳定性:官方服务器位于海外,国内用户访问延迟高且不稳定。自建服务器可以大幅提升连接质量。

  2. 加快连接速度:本地化的 PLANET 服务器可以更快地帮助设备建立 P2P 连接。

  3. 增强网络控制:自建服务器让您完全掌控网络配置,可以根据需求进行优化调整。

  4. 提高安全性:私有化部署意味着网络流量不经过第三方服务器,更加安全可靠。

  5. 降低依赖:避免因官方服务器故障或网络波动影响您的业务正常运行。

常见问题

始终连不上内网

如果是第一次配置,请检查是否已经完成 planet 替换。

  • 如果问题仍存在,请通过 zerotier-cli peers 命令查看连接状态,正常的话和 PLANET 应该是直连的且符合下面格式:
9e157cb858 1.14.1 PLANET 23 DIRECT 664 2839 X.X.X.X/9994

请确认上面 Planet 的 ID 一致,否则是planet文件不正确

如果是后续使用中出现问题,请先检查非内网连接(例如,新闻、搜索等)是否正常,然后尝试通过重启服务恢复。

Last updated on