[折腾日记5] 用RustDesk远程桌面走自建服务器,配合Zerotier内网IP访问,实现低延迟流畅操控远程桌面——ZeroTier篇
标签搜索

[折腾日记5] 用RustDesk远程桌面走自建服务器,配合Zerotier内网IP访问,实现低延迟流畅操控远程桌面——ZeroTier篇

snailszzy
2024-03-23 / 1 评论 / 43 阅读 / 正在检测是否收录...

直接看效果,这是我家里连公司的电脑,20ms的延时,操作流畅不言而喻!
luznr6t0.png

接下来,我们将介绍ZeroTier以及如何在服务端搭建私服、客户端的安装和使用:
1、ZeroTier 是一种软件定义的网络(SDN)解决方案,它允许用户轻松创建虚拟的全球性网络,使得不同地点的设备可以安全地连接到一起,就好像它们在同一个局域网中一样。
2、Controller(控制器):
控制器是 ZeroTier 网络的管理节点,负责网络的全局路由、地址分配和数据转发等关键任务。在 ZeroTier 中,控制器通常是一个 Planet 节点。
3、Planet(星球):
Planet 节点是 ZeroTier 网络中的核心节点,负责网络的管理和控制。它们处理网络的全局路由、地址分配和数据转发等任务。
4、Moon(月球):
Moon 节点是连接到 ZeroTier 网络的普通设备或者子网。它们通过 ZeroTier 软件连接到网络,并通过 Planet 节点进行数据传输。
5、ztncui:
ztncui 是 ZeroTier 的一个控制面板,提供了一个用户友好的界面来管理和监控 ZeroTier 网络。用户可以通过 ztncui 来配置 ZeroTier 网络、管理节点、查看网络状态和流量统计等。

它们之间的关系:

  • ZeroTier 是整个网络解决方案的名称,包括了网络技术本身以及相关的软件和工具。
    Controller(控制器) 通常指的是 ZeroTier 网络中的 Planet 节点,负责管理整个网络。
  • Planet(星球) 是 ZeroTier 网络中的核心节点,即 Controller,负责网络的管理和控制,负责流量转发和P2P通信。
  • Moon(月球) 是连接到 ZeroTier 网络的普通设备或者子网,通过 Planet 节点进行数据传输。
  • ztncui 是 ZeroTier 的控制面板,用于管理和监控 ZeroTier 网络,与 ZeroTier 技术本身关系密切,是管理 ZeroTier 网络的便捷工具,使用根的API创建和管理网络,不参与流量通信。

一、服务端私服搭建,搭建私服的好处不言而喻,数据都是通过自己的私服转发,而不必担忧走官方服务器怕数据泄露。

1> 安装最新版的zerotier

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

2> 搭建Moon节点。

cd /var/lib/zerotier-one/
sudo zerotier-idtool initmoon identity.public > moon.json
vi moon.json

修改如下:
在stableEndpoints项中填入服务器的公网 IP 地址,其它项不需要变动,例如:

{
 "id": "xxxxx",
 "objtype": "world",
 "roots": [
  {
   "identity": "xxxx:0:eeee",
   "stableEndpoints": ["220.181.38.148/9993"]
  }
 ],
 "signingKey": "asdfasdfasdf",
 "signingKey_SECRET": "asdfasdfasdfasd",
 "updatesMustBeSignedBy": "asdfasdfasdf",
 "worldType": "moon"
}

生成签名文件:

zerotier-idtool genmoon moon.json

执行之后会生产一个000000xxxx.moon的文件。
将 Moon 节点加入网络:

cd /var/lib/zerotier-one/
sudo mkdir moons.d
sudo mv 000000xxxxxx.moon moons.d/

此处的000000xxxxxx.moon是上一步生成的文件名。

之后重启中转服务器的 zerotier-one:

sudo systemctl restart zerotier-one

其他常用命令:

启动zerotier

sudo systemctl start zerotier-one.service

实现开机自动启动zerotier

sudo systemctl enable zerotier-one.service

加入 ZeroTier 虚拟局域网

sudo zerotier-cli join asdfasdf

3> 搭建Web UI ztncui,来管理节点。
可以参考官方的搭建,我这里直接采用火木木的脚本,但是我修改了最新版本的ztncui ztncui_0.8.14_amd64.deb。
zerotier_planet_debain.sh.zip

二、客户端使用Moon。
1> Linux 客户端
执行以下命令即可,其中,xxxxxxxxxx为 Moon 的节点 ID:

zerotier-cli orbit xxxxxxxxxx xxxxxxxxxx

之后可以通过以下命令确认是否成功:

zerotier-cli listpeers

若出现类似200 listpeers 7b9528eea2 220.181.38.148/53216;7753;7570 196 1.6.2 MOON的提示,则表示客户端成功连接 Moon 节点。

2> Windows
Windows 客户端
以管理员身份打开 PowerShell,执行以下命令即可:

cd "C:\Program Files (x86)\ZeroTier\One"
zerotier-cli.bat orbit xxxxxxxxxx xxxxxxxxxx

同样,命令中的xxxxxxxxxx为 Moon 的节点 ID。

确认是否成功:

zerotier-cli.bat listpeers

同样地,若出现类似200 listpeers 7b9528eea2 220.181.38.148/53216;7753;7570 196 1.6.2 MOON的提示,则表示客户端成功连接 Moon 节点。

3> Mac
4> Andorid
5> iPad/iPhone

0

评论 (1)

取消
  1. 头像
    sfserpnmxx
    Windows 10 · Google Chrome

    你的文章让我学到了很多技能,非常实用。 http://www.55baobei.com/2KBDip2KYi.html

    回复