概述
ZeroTie 官网
ZeroTier – Global Area Networking
之前在家里用玩客云刷的arbian
盒子,搭建的FRP
内网穿透,数据传输,流量都要经过服务器先下载在上传,
我的VPS又都是美国的,所以传输很不稳定,虽然也有点对点穿透模式
但是我没有配置成功。
就琢磨折腾下另一款内网穿透工具,Zerotier
对这款软件本来也没抱很大期望,但是用过之后给了我很大惊喜
家里的的armbian盒子和公司的电脑都配置好,我ping了下配置好的家里盒子 IP,10ms以内,也就是说两边是直连的,不经过中转,然后连接盒子的SSH那丝滑没有丝毫卡顿。
最后测试下载家里盒子的影视资源,FTP协议跑满上传带宽。
该测试是在相同城市两边都是电信环境下进行的,不同运营商之间可能会不太理想
搭建Moon节点
可以帮助我们的设备之间更好的进行连接。
本篇只介绍Moon节点搭建,需要先会配置和使用Zerotier,才能更好的进行下一步。
1.服务器上安装 zerotier-one
方法一 更简单
curl -s https://install.zerotier.com | sudo bash
方法二 更安全
要求系统中安装了 GPG
curl -s 'https://raw.githubusercontent.com/zerotier/ZeroTierOne/master/doc/contact%40zerotier.com.gpg' | gpg --import && \
if z=$(curl -s 'https://install.zerotier.com/' | gpg); then echo "$z" | sudo bash; fi
2.服务器加入虚拟网络
执行命令,将云服务器加入到自己创建好的虚拟网络,将命令中的 xxxxxxxx
替换成实际的虚拟网络 ID
zerotier-cli join xxxxxxxx
查看连接情况
zerotier-cli listnetworks
zerotier-cli listnetworks
200 listnetworks <nwid> <name> <mac> <status> <type> <dev> <ZT assigned ips>
200 listnetworks e4da12345678943x name 32:71:91:11:11:11 OK PRIVATE ztwfunrqmc 192.168.194.33/24
3.配置 Moon
进入 zerotier-one 程序所在的目录,默认为 /var/lib/zerotier-one
。
cd /var/lib/zerotier-one
生成 moon.json 配置文件
zerotier-idtool initmoon identity.public >> moon.json
编辑 moon.json 配置文件
vi moon.json
将配置文件中的 "stableEndpoints": []
修改成 "stableEndpoints": ["ServerIP/9993"]
,将 ServerIP
替换成云服务器的公网IP。
生成 .moon 文件
zerotier-idtool genmoon moon.json
将生成的 000000xxxxxxxxxx.moon 移动到 moons.d
目录
mkdir moons.d
mv 000000xxxxxxxxxx.moon moons.d
.moon 配置文件的名一般为10个前导零
+本机的节点ID
重启 zerotier-one 服务
systemctl restart zerotier-one
4.使用 Moon
使用 Moon
普通的 Zerotier 成员使用 Moon 有两种方法,第一种方法是使用 zerotier-cli orbit
命令直接添加 Moon 节点ID;第二种方法是在 zerotier-one 程序的根目录创建moons.d
文件夹,将 xxx.moon
复制到该文件夹中,我们采用第一种方法:
Linux 系统下使用 Moon
将命令中的两组 xxxxxxxxxx
都替换成 moon 的节点ID。
zerotier-cli orbit xxxxxxxxxx xxxxxxxxxx
zerotier-cli listpeers
root@OneCloud:~# zerotier-cli listpeers
200 listpeers 7b9528eea2 222.227.122.226/53216;7753;7570 196 1.6.2 MOON
有显示MOON则配置成功
Windows 系统下使用 Moon
以管理员身份打开 PowerShell,将命令中的两组 xxxxxxxxxx
都替换成 moon 的节点ID。
zerotier-cli.bat orbit xxxxxxxxxx xxxxxxxxxx
检查是否添加成功
zerotier-cli.bat listpeers
提示:Windows 系统的默认程序目录位于 C:\Program Files (x86)\ZeroTier\One
常见问题一:电脑添加了虚拟网络,但Zerotier管理列表中始终没有显示这台设备。
可以尝试在Zerotier管理界面中 Advanced -> Manually Add Member
中手动添加电脑的节点ID。
原文参考:No.001 简单搭建 Zerotier Moon 为虚拟网络加速 | TVTV.FUN