当前位置:   article > 正文

OpenWrt上使用Zerotier打通多个局域网_zerotier openwrt

zerotier openwrt


背景

最近遇到一个需要在A、B、C三个不同的局域网之间互相打通的问题,目标是使这三个局域网下的设备,都能通过内网ip互相访问。
调研后发现,通过在三个网络的路由设备上安装Zerotier可以比较优雅的实现此功能。

准备条件

A、B、C三个局域网中都有安装了zerotier的路由设备

本例中路由器操作系统以OpenWrt为例,假设A网段192.168.1.0/24,B网段192.168.2.0/24,C网段为192.168.3.0/24

具体操作步骤

Zerotier控制台配置

创建账号&网络

my.zerotier.com官网上创建并登录账号;
Create A Network创建一个网络,点击生成的网络id进入设置页面,

配置网段和路由信息

Advanced——IPv4 Auto-Assign中设置zerotier的网段,
Advanced——Managed Routes——Add Routers中提前分配好A、B、C网段对应的zerotier网段
在这里插入图片描述
下图区域内的信息为网络ID,复制下来后面填到OpenWrt中
在这里插入图片描述

OpenWrt配置

启用ZeroTier

在OpenWrt系统下打开zerotier管理页面,填入上面复制的网络ID,勾选启用自动允许客户端NAT,然后保存&应用
在这里插入图片描述

添加本地接口

网络——接口——添加新接口...

基本设置

协议选择DHCP客户端
在这里插入图片描述

选择对应的zerotier接口

在这里插入图片描述

创建并分配新的防火墙区域

在这里插入图片描述
保存&应用,查看接口信息,记录接口名称(下图红框部分)在这里插入图片描述

配置防火墙

基本设置

网络——防火墙进入到基本设置
编辑区域基本规则
在这里插入图片描述
点击修改按钮,修改zerotier转发规则
在这里插入图片描述

修改IPTABLES

自定义规则中添加如下信息(zthxxxx替换为刚才获取到的接口名称):

iptables -I FORWARD -i zthxxxx -j ACCEPT
iptables -I FORWARD -o zthxxxx -j ACCEPT
iptables -t nat -I POSTROUTING -o zthxxxx -j MASQUERADE
  • 1
  • 2
  • 3

在这里插入图片描述

Zerotier控制台授权 & 验证

设备授权

登录到zerotier页面配置设备授权。勾选前面的auth复选框,进行设备允许授权
在这里插入图片描述

验证配置是否成功

查看接口信息,是否已经正确获取到了配置的地址
在这里插入图片描述
或者通过命令行执行,查看返回结果

zerotier-cli listnetworks
  • 1
200 listnetworks <nwid> <name> <mac> <status> <type> <dev> <ZT assigned ips>
200 listnetworks 80xxxxxx000001  xx:xx:xx:00:00:00 OK PRIVATE zthxxxx 192.168.192.1/24

  • 1
  • 2
  • 3

至此,第一台路由已经配置完成,另外多台类似方式设置。

验证是否打通

在A局域网下分别pingB、C路由的网关地址,可以看到已经打通:

ping 192.168.2.1
  • 1
64 bytes from 192.168.2.1: seq=0 ttl=64 time=36.784 ms
  • 1
ping 192.168.3.1
  • 1
64 bytes from 192.168.3.1: seq=0 ttl=64 time=36.784 ms
  • 1

至此,所以设置&验证完成~

参考资料1
参考资料2

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/549245
推荐阅读
  

闽ICP备14008679号