LEDE 配置ZeroTier网络教程

LEDE的酷软中心为使用OPENWRT的用户提供了一个方便的应用安装配置环境,大大降低了OPENWRT的使用难度。ZeroTier类似一款虚拟路由软件,可以将不同地方的不同网络通过虚拟的方式进行连接,以方便进行网络共享。在LEDE中配置ZeroTier比较简单,本人使用的LEDE版本为2.32,下面的介绍都针对该版本进行。

一、注册Zeroier帐号:

1、访问ZeroTier.com 官方网站进行网站注册,用帐号登录,点Greate a Network创建一个网络。

2、在IPv4 Auto-Assign(IPv4地址自动分配)上,选中一个网络段。

二、在LEDE上安装运行ZeroTier

1、在酷软中心安装ZeroTier插件,安装完成以后打开ZeroTier,在Network ID(网络ID)中,输入自己在ZeroTier上分配的网络,选中开启ZeroTier选项,点击开始运行按钮运行程序。

2、运行以后,修改配置文件,在终端输入以下命令:
# vi /etc/config/zerotier
找到以下两处进行修改:
config zerotier sample_config
option enabled 0 (这里把0替换成1,让选项生效)
list join ‘8056c2e21c000001’ (替换为自己的网络ID)
其他无需修改

退出VI,按esc,然后按:(冒号)回车,再按wq保存退出编辑界面。然后输入reboot,重启。

你也可以使用WINSCP等软件直接进行修改。

3、在LEDE上点击网络->防火墙,在基本设置>区域设置里,把转发改为接受区域下面的三行(出站,入站,转发)都选接受,其他选项保持不动。
防火墙->自定义规则页面,增加下面三条记录:
iptables -I FORWARD -i ztc3qwyx5l -j ACCEPT
iptables -I FORWARD -o ztc3qwyx5l -j ACCEPT
iptables -t nat -I POSTROUTING -o ztc3qwyx5l -j MASQUERADE

 ztc3qwyx5l是LEDE的ZeroTier虚拟接口的名称,在终端可以使用ifconfig命令查看,请自行替换。

设置完成后,点击重启防火墙。

三、配置ZEROTIER网络路由

在ZeroTier网络的Members部分,选中已出现的网络成员对其进行授权。稍等片刻,ZeroTier就会给每个成员分配Managed IPs(管理IP)。

在ZeroTier网络的Managed Routes(管理路由)部分,将子网与管理IP进行对应,设置路由,如下图所示。可以把多个子网都通过ZeroTier连接在一起,形成一个虚拟的局域网络。


四、测试

通过以上设置,LEDE的ZeroTier网络配置就已经完成了,可以在LEDE上PING家里的网关地址192.168.102.1,测试是否可以连通。

五、配置MOON(进阶)

MOON又称为自定义根服务器,通过自定义的服务器作为跳板加速内网机器之间的互相访问。我的LEDE版本是2.32,有固定公网IP,为了提高ZeroTier在不同子网之间互访的速度,建立MOON节点就非常有必要。

在启用ZeroTier后,我发现ZeroTier安装目录/var/lib/zerotier-one(这个目录实际链接到/var/lib/zerotier-one_sample_config)是临时目录 ,在重启后就自动删除,必须修改配置文件,才能保留MOON的配置。

1.修改配置

修改 /etc/config/zerotier,加入下面一行选项:

option config_path ‘/etc/zerotier'(注意分隔符,如下图所示)


然后在根目录的/etc/目录下,新建zerotier目录用来存放moons的配置文件。

2.生成MOON文件

进入ZeroTier的安装目录:
cd /var/lib/zerotier-one_sample_config

运行下面两条命令:
zerotier-idtool generate identity.secret identity.public
zerotier-idtool initmoon identity.public >>moon.json
在当前目录生成moon.json文件。

3.修改MOONS文件

修改 moon.json文件中”stableEndpoints” 字段为LEDE路由的公网IP,9993为端口号。
“stableEndpoints”: [ “117.XX.XX.XX/9993” ]

4.生成签名文件

运行命令:
zerotier-idtool genmoon moon.json
在当前目录下生成签名文件00000005ff20a0f6.moon

5.将MOON节点加入网络

将LEDE本机设为MOON节点。
在/etc/zerotier目录建立moons.d子目录,将生成的00000005ff20a0f6.moon复制到该文件夹中,并重启设备。

其他设备加入MOON节点方法

方法一
找到ZeroTier安装目录,新建moons.d文件夹,将00000005ff20a0f6.moon复制到该文件夹中,重启设备。
不同系统的ZeroTier安装目录位置:
Windows: C:\ProgramData\ZeroTier\One
Macintosh: /Library/Application Support/ZeroTier/One (在 Terminal 中应为 /Library/Application\ Support/ZeroTier/One)
Linux: /var/lib/zerotier-one
FreeBSD/OpenBSD: /var/db/zerotier-one

方法二
在终端上执行命令:
zerotier-cli orbit 5ff20a0f6 5ff20a0f6

6.验证测试

查看是否在MOON下运行
zerotier-cli listpeers

PLANET :行星服务器,Zerotier 各地的根服务器,有日本、新加坡等地
MOON :   卫星级服务器,用户自建的私有根服务器,起到中转加速的作用
LEAF :     相当于各个枝叶,就是每台连接到该网络的机器节点

如果某一行显示有MOON字样,就证明MOON已被本机标识了。
注意:本机不能看自己,所以只能上别的设备上看。