局域网B:路由器192.168.9.1 openwrt路由器自带zerotier已加入;群晖DS918一台192.168.9.118,已加入zerotier。
功能需求:两个局域网内的所有设备都可以互访,包括没安装zerotier的局域网设备。
(如果只是希望B访问局域网A的内网资源,配置好A群晖的zerotier,局域网B的电脑安装个zerotier就行了)
一、配置局域网A
群晖DS920安装zerotier加入网络,参考教程:https://imnks.com/3175.html
1、SSH连接执行以下命令,自动在群晖系统 /etc/sysctl.conf 中增加
(ipv6按需,没的话可以不加)
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p /etc/sysctl.conf
2、ifconfig查看出口网卡,添加计划任务
ifconfig
如上图所示,因为开了虚拟机套件,192.168.31.111实际出口网卡名称是ovs_eth0(一般情况是eth0)
控制面板-任务计划-新增-触发的任务,注意用户账号:root,按照你网口实际情况修改ovs_eth0
sleep 1m
iptables -t nat -A POSTROUTING -o ovs_eth0 -j MASQUERADE
注意:对于猫盘这些armv8群晖,仅DSM7可以完整使用iptables。控制面板-计划任务,新增-触发的任务,root权限。
(2022.5.25更新的三合一修复也集成了,重新修复下就不需要添加计划任务了)
添加到:sleep 1m前面
modprobe ip_tables
modprobe iptable_filter
modprobe iptable_nat
modprobe ip_conntrack
modprobe ipt_state
二、配置局域网B
路由器openwrt配置zerotier,并勾选:自动允许客户端 NAT
如果。。。路由器不支持安装zerotier呢???可以按照局域网A配置,在局域网B中群晖DS918一样的操作即可!!!
如果。。。路由器不支持安装zerotier呢???可以按照局域网A配置,在局域网B中群晖DS918一样的操作即可!!!
如果。。。路由器不支持安装zerotier呢???可以按照局域网A配置,在局域网B中群晖DS918一样的操作即可!!!
三、配置zerotier路由表
如图,在zerotier后台Advanced-Managed Routes里Add Routes增加两个路由表
192.168.31.0/24 192.168.192.15
192.168.9.0/24 192.168.192.34
192.168.192.15是局域网A中群晖920+在zerotier的ip地址
192.168.192.34是局域网B中openwrt路由器在zerotier的ip地址
四、完活,互访测试
在局域网B直接可以访问局域网A的路由器和群晖DS920