zerotier安装配置

1.简介

zerotier用于建立VPN.

1.1.基本概念

1.1.1.节点

在ZeroTier网络中,节点通常被称为"Node"或"Peer".节点(Node)是指ZeroTier网络中的任何设备或端点。

1.它可以是:

  • 物理设备(如电脑、服务器、智能手机等)
  • 虚拟机
  • 容器
  • 或任何能够运行ZeroTier软件的计算实例

2.每个节点都有以下特征:

  • 唯一的10位节点ID(Node ID)
  • 可以加入一个或多个ZeroTier网络
  • 能够与同一ZeroTier网络中的其他节点直接通信

3.节点的主要功能包括:

  • 加入和参与ZeroTier虚拟网络
  • 与其他节点建立加密的点对点连接
  • 在需要时通过TURN服务器进行NAT穿透
  • 从网络控制器获取网络配置和路由信息

在ZeroTier的架构中,所有节点本质上都是对等的,不存在传统的客户端-服务器区分。每个节点都可以直接与网络中的其他节点通信,形成一个分布式的网状网络结构。 总之,节点(Node)是ZeroTier网络的基本组成单元,代表网络中的每一个参与设备或实例。

1.1.2.根服务器

在ZeroTier网络中,根服务器被称为"Root Servers"。它们在ZeroTier的基础设施中扮演着关键角色。以下是关于ZeroTier根服务器的一些重要信息:

1.定义:

根服务器是ZeroTier网络基础设施的核心组件,它们维护着全球ZeroTier网络的顶层结构。

2.功能:

  • 提供全球节点定位服务
  • 帮助新节点引导进入ZeroTier网络
  • 协助NAT穿透和连接建立
  • 分发网络成员资格和配置信息

3.特点:

  • 公开可访问:根服务器的地址是公开的,所有ZeroTier节点都知道如何连接它们
  • 分布式:为了提高可靠性和性能,根服务器分布在全球多个地理位置
  • 高度可信:根服务器由ZeroTier公司直接运营和维护

4.角色:

  • 引导:新节点首次加入ZeroTier网络时,会联系根服务器来获取初始网络信息
  • 发现:帮助节点发现彼此,特别是在NAT后的节点
  • 中继:在直接点对点连接无法建立时,可以作为中继帮助节点通信

5.安全性:

  • 根服务器使用强加密和认证机制
  • 它们不能访问网络内的实际数据流量,只处理元数据和网络管理信息

6.与普通节点的区别:

  • 根服务器是基础设施的一部分,而不是用户网络的成员
  • 它们有特殊的权限和责任,普通节点没有这些

7.自托管选项:

  • ZeroTier允许高级用户设置自己的根服务器,这在企业环境或特殊网络配置中可能有用

理解根服务器对于深入了解ZeroTier的工作原理很重要。它们是使ZeroTier能够创建全球分布式虚拟网络的关键基础设施组件。

1.1.3.节点网络控制器

在ZeroTier中,网络控制器(Network Controller)是一个关键组件,负责管理和控制特定ZeroTier网络。以下是关于ZeroTier网络控制器的详细解释:

1.定义:

网络控制器是管理特定ZeroTier网络的服务器或服务。它负责网络配置、成员管理和权限控制。

2.主要功能:

a. 成员管理:

  • 授权或拒绝节点加入网络
  • 管理网络成员列表

b. 网络配置:

  • 定义和分发网络规则和设置
  • 管理IP地址分配

c. 路由管理:

  • 配置和分发网络路由表
  • 管理网络拓扑

d. 安全控制:

  • 实施访问控制策略
  • 管理加密密钥和证书

e. 监控和日志:

  • 跟踪网络活动和连接状态
  • 提供网络使用情况的统计数据

3.部署选项:

a. ZeroTier Central(托管服务):

  • ZeroTier提供的云托管控制器
  • 适用于大多数用户,易于使用和管理

b. 自托管控制器:

  • 可以在自己的基础设施上运行
  • 提供更多的控制和隐私,适合企业或高级用户

4.与节点的交互:

  • 节点加入网络时,会向控制器请求授权和配置信息
  • 控制器定期向节点推送更新的网络配置

5.安全性:

  • 使用强加密保护通信
  • 实施严格的身份验证机制

6.可扩展性:

  • 能够管理从小型家庭网络到大型企业网络的各种规模

7.API支持:

  • 提供API接口,允许自动化和与其他系统集成

8.多网络支持:

  • 一个控制器可以管理多个独立的ZeroTier网络

9.与根服务器的区别:

  • 根服务器是全局基础设施,而网络控制器是特定于单个ZeroTier网络的

网络控制器是ZeroTier架构中的一个核心组件,它使管理员能够精细控制网络行为、成员资格和安全策略。无论是使用ZeroTier Central还是自托管解决方案,网络控制器都为ZeroTier网络提供了必要的管理和控制功能。

2.ubuntu安装zerotier

2.1.在官网建立账号

官网:https://www.zerotier.com/,使用微软账号登录,新建一个虚拟局域网,保存好网络ID.

2.2.安装

sudo curl -s https://install.zerotier.com | sudo bash

2.3.查看安装是否成功

sudo zerotier-cli info

返回如下内容说明安装成功

200 info 1cc1d9db61 1.14.1 ONLINE

1cc1d9db61为节点地址.

2.4.加入网络

登录zerotier官网,得到网络ID

在这里插入图片描述
bash sudo zerotier-cli join 363c67c55ab2181b

2.5.设备认证

登录zerotier进行设备认证
在这里插入图片描述
根据设备节点地址找到对应设备,然后保证认证通过.例如1cc1d9db61为刚才加入网络的设备.

2.6.查看设备加入网络是否成功

sudo zerotier-cli listnetworks

返回信息说明

200 listnetworks <nwid> <name> <mac> <status> <type> <dev> <ZT assigned ips>
200 listnetworks 363c67c55ab2181b yangnianlin 1a:04:73:83:1e:06 OK PRIVATE zt6ntnlxkb 10.147.20.76/24

#第一行说明每个字段的含义
363c67c55ab2181b: 私有网络ID
yangnianlin: 私有网络名称
1a:04:73:83:1e:06 : 设备节点MAC地址
OK:加入成功
PRIVATE:网络类型为私有网络
zt6ntnlxkb:为ubuntu上zerotier虚拟的网络接口,使用ifconfig可以列出
10.147.20.76/24: 为ubuntu上zerotier虚拟的网络接口的ip地址

2.7.其他有用的网络命令

#1.查看ip地址,可以列出ubuntu所有的网络接口
ip a
#2.查看ip地址,另一命令
ifconfig

现在这台ubuntu设备作为节点安装配置完成,可以在建立的私有网络中使用了.

3.windows安装zerotier

3.1.安装

在zerotier官网上下载windows平台的zerotier客户端,进行安装.
安装后找到zerotier客户端程序,并运行.

3.2.加入网络

在系统托盘区找到,加入新的网络即可
在这里插入图片描述

3.3.设备认证

和ubuntu操作相同.

3.4.查看设备加入网络是否成功

使用powershell运行以下命令

zerotier-cli.bat listnetworks

返回信息说明

200 listnetworks <nwid> <name> <mac> <status> <type> <dev> <ZT assigned ips>
200 listnetworks 363c67c55ab2181b yangnianlin 1a:0f:bb:d9:ac:68 OK PRIVATE ethernet_32774 10.147.20.235/24

#第一行说明每个字段的含义
363c67c55ab2181b: 私有网络ID
yangnianlin: 私有网络名称
1a:0f:bb:d9:ac:68 : 设备节点MAC地址
OK:加入成功
PRIVATE:网络类型为私有网络
ethernet_32774:为windows上zerotier虚拟的网络接口名称
10.147.20.235/24: 为windows上zerotier虚拟的网络接口的ip地址

3.5.查看zerotier在windows平台上的虚拟网卡信息

使用powershell运行以下命令

ipconfig /all

返回信息节选

Ethernet adapter ZeroTier One [363c67c55ab2181b]:

   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : ZeroTier Virtual Port
   Physical Address. . . . . . . . . : 1A-0F-BB-D9-AC-68
   DHCP Enabled. . . . . . . . . . . : No
   Autoconfiguration Enabled . . . . : Yes
   Link-local IPv6 Address . . . . . : fe80::775a:2de9:cc02:67f1%14(Preferred)
   IPv4 Address. . . . . . . . . . . : 10.147.20.235(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 25.255.255.254
   DHCPv6 IAID . . . . . . . . . . . : 689573819
   DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-2E-98-5D-FB-00-E0-4C-60-04-51
   NetBIOS over Tcpip. . . . . . . . : Enabled

现在这台windows设备作为节点安装配置完成,可以在建立的私有网络中使用了.

4.使用moon加速

使用发现zerotier很慢,影响日常使用.可以使用moon进行加速.加速需要使用公网一个设备节点,这里使用腾讯云虚拟机主机进行加速的,在活动优惠期间话费79元/年租赁了一台云主机.

4.1.搭建moon

4.1.1.查看节点地址

登录到腾讯云虚拟主机,安装zerotier并加入网络,记录下节点地址:

sudo zerotier-cli info

返回信息

200 info 5b579f0b2e 1.14.0 ONLINE

5b579f0b2e是腾讯虚拟主机的zerotier设备节点地址.

4.1.2.moon服务器配置

cd /var/lib/zerotier-one/
sudo zerotier-idtool initmoon identity.public >> moon.json
sudo vim moon.json
#将配置文件中的 "stableEndpoints": [] 修改成 "stableEndpoints": ["ServerIP/9993"],将 ServerIP 替换成云服务器的公网IP。

#生成 .moon 签名文件
sudo zerotier-idtool genmoon moon.json
#将生成的 000000xxxxxxxxxx.moon 移动到 moons.d 目录

sudo systemctl restart zerotier-one.service

4.2.ubuntu节点接入moon服务器

sudo zerotier-cli orbit 5b579f0b2e 5b579f0b2e
#5b579f0b2e: moon服务器的节点地址

查看是否生效

sudo zerotier-cli listpeers

返回信息

200 listpeers <ztaddr> <path> <latency> <version> <role>
200 listpeers 02f3bc1c7f 192.168.2.220/9993;4846;17878 55 1.14.1 LEAF
200 listpeers 170983690f 192.168.56.1/21801;2813;2806 61 1.14.0 LEAF
200 listpeers 363c67c55a 35.206.119.108/21043;2813;6281 -1 1.14.1 LEAF
200 listpeers 5b579f0b2e 122.51.253.179/9993;2813;2797 38 1.14.0 MOON
200 listpeers 778cde7190 103.195.103.66/9993;2813;17645 310 - PLANET
200 listpeers cafe04eba9 84.17.53.155/9993;2813;17634 284 - PLANET
200 listpeers cafe9ccda7 66.90.98.98/9993;2813;17560 373 - PLANET
200 listpeers cafe9efeb9 104.194.8.134/9993;2813;17648 307 - PLANET

节点5b579f0b2e的角色是MOON,说明生效.

4.3.windows节点接入moon服务器

以管理员身份打开 PowerShell,将命令中的两组 xxxxxxxxxx 都替换成 moon 的节点ID。

zerotier-cli.bat orbit 5b579f0b2e 5b579f0b2e

检查是否添加成功

zerotier-cli.bat listpeers

参考资料

No.1 简单搭建 Zerotier Moon 为虚拟网络加速

posted @ 2024-10-13 21:28  秋将暮  阅读(3)  评论(0编辑  收藏  举报