45

OpenWrt 通过安装 ZeroTier 插件实现异地组网教程

 2 years ago
source link: https://opssh.cn/luyou/198.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

OpenWrt 通过安装 ZeroTier 插件实现异地组网教程

日期:2022年03月06日
·
分类:路由刷机
已阅读 2112 次

ZeroTier 是一个基于 UDP 的异地组网工具,支持多平台,如:Windows、MacOS、Linux、IOS、Android、及一些常见NAS平台,首次连接需要与转发服务器通信,建立连接后,则直接在两个客户端间通过 UDP 通信,这里说说 OpenWrt 通过 ZeroTier 实现异地组网,其他平台同理。

插件安装

1、使用SSH登录到终端,使用命令进行安装重要核心依赖,命令如下:

opkg update
opkg install zerotier

2、安装 luci 可视化插件包,通过插件库搜索找到对应的 luci-app-zerotier.ipk 安装包,注意设备架构地址,地址如下:

https://op.supes.top/packages/

3、将下载好的 luci-app-zerotier.ipk 安装包通过 SFTP 上传 root 目录下,使用命令进行安装,如果后台有文件传输,可以通过文件传输进行安装,命令如下:

opkg install luci-app-zerotier_*.ipk

4、注意:如果你是老版本(低于 1.5.0 ),那么可能需要到 luci-i18n-zerotier-zh-cn 中文补丁包,这个自行解决,就算不要安装也没有关系,只是英文而已,也没多少东西需要安装。

申请地址

打开申请地址进行注册,注册成功后,点击 Create A Network 生成创建网络,获取申请网络标识,地址如下:

https://my.zerotier.com/network

点击创建的网络进入配置页面,Network ID 为所需的网络标识地址,Name 为网络名字(随意填写),Description 为说明(随意填写),Access Control 选择 Private 为私人网络,如下图:

获取网络标识

下拉在 Advanced 内选取一个好记的 IPV4 地址,Managed Routes 为托管路线地址,IPv4 Auto-Assign 为 IPv4 自动分配,这里选择了 192.168.191.* 作为内网地址,剩下的就不需要配置了,如下图:

选取内网IPV4地址

配置插件

1、在 OpenWrt 管理后台找到 ZeroTier 管理页面,填写 ZeroTier Network ID 网络标识,勾选 自动允许客户端NAT 和 启用,保存并应用,如下图:

填写ZeroTier网络标识并启用

2、设置完并启用了 ZeroTier 后,点击“网络”>“接口”>“添加新接口”,新接口的名称 随意填写(为了方便填写为:zerotier),新接口的协议选择 DHCP 客户端,包括以下接口 选择 以太网适配器: "ztqu3pfdod",这个接口名称记住,后面要用到,每个人都不一样,如下图:

给zerotier创建新的网络接口

3、在 ZEROTIER 接口内选择防火墙设置,将 创建/分配防火墙区域 选择为 wan 或 zerotier,注意:设备不一样设置不一样,有的是单独的,如下图:

给zerotier进行防火墙设置

4、接着点击“网络”>“防火墙”>“添加”,共享名 为了方便修改为 zerotier,入站数据、出站数据 和 转发 全部选择接受,覆盖网络 选择命名为 zerotier 的接口,允许转发到目标区域 选择为 wan 口

给防火墙添加zerotier接口

5、完成以上内容后,点击“网络”>“防火墙”>“自定义规则”,将以下代码的中的以太网适配器名 ztqu3pfdod 修改为自己的,并把代码复制到自定义规则,规则如下:

iptables -I FORWARD -i ztqu3pfdod -j ACCEPT
iptables -I FORWARD -o ztqu3pfdod -j ACCEPT
iptables -t nat -I POSTROUTING -o ztqu3pfdod -j MASQUERADE

6、然后进入 ZeroTier 网络配置页面,下拉到 Members(网络成员的意思),给 OpenWrt 进行设备授权,勾选 Auth,并在 short-name 内给设备命名下,后续好区分设备,如下图:

在 ZeroTier 网络配置页面给设备进行授权

7、给设备授权完成后,在终端内执行以下命令,查询以下 ZeroTier 的网络状态,返回 Managed IPs 标识的IP地址,那么就是成功了,如下图:

zerotier-cli listnetworks

ZeroTier 网络状态成功获取IP地址

最后说明

其他设备要想加入这个内网中,需要下载 ZeroTier 的客户端软件或安装 ZeroTier 插件,并在 ZeroTier 网络配置页面给加入的设备进行授权,这样才能实现异地组网,当然如何使用发挥下自己的想象。

ZeroTier 也就是使用到了 OpenVPN,关于 Zerotier 的优缺点本人不做太多赘述,觉得 Zerotier 不完美,可以选择购买付费产品来解决,毕竟 Zerotier 是个免费的产品,给你白摸就算不错了,还想干啥?


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK