Zerotier 并网 局域网

背景

Zerotier 本身是一个非常好用的工具了,但是一个朋友的另一种玩法,让我觉得 Zerotier 设计的更通用以及更强大。

他是把Zerotier的网络和家里的网络 双向打通了,zerotier的节点可以直接访问家里的任何设备,家里的设备也可以访问zerotier的任意节点 而不需要安装zerotier的客户端。

非常有意思。

我的考虑是,需要访问的设备就那么几个,但是在家里为了访问那几个节点,每个设备都需要安装zt,显然很麻烦。那么需要打通从家里的网络到zt的网络。
但反之暴露家里的所有设备 显得会很危险,所以zt到家则不打通。

事先准备

  1. 确定zt的网段
  2. 确定家里的网段
  3. 在家里的网络中保留一个常开的zt节点(需要Linux的)

开干

step 1. 在家里的常开节点上配置转发

  1. 开启内核转发
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p
  1. 查看zt的路由表
route -n

注意看 Use Iface 下一步配置到 iptables

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.50.1    0.0.0.0         UG    202    0        0 eth0
10.147.20.0     0.0.0.0         255.255.255.0   U     0      0        0 ztkse2f3ua
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
172.18.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-6de8ee8e4ef3
172.20.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-e54fb7c3faa1
172.21.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-3ce49a2ba2c1
192.168.50.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
  1. 配置 iptables nat

记得替换 iface 接口名

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

step 2. 在路由器上配置静态路由表

配置静态路由表, 基本从常开zt节点的路由表上取值,网关设为常开zt节点的ip

网络 / 主机IP               掩码              网关
10.147.20.0         255.255.255.0       192.168.50.123