使用 ZeroTier 三层路由实现内网访问
ZeroTier 配置内网访问 VPN 的步骤存档
首先到 ZeroTier 官网 按照教程下载并安装 ZeroTier.
在 my.zerotier.com 创建网络, 认证客户端, 并且在 Advanced -> Managed Routes 配置路由:
via 框内填写内网设备对应的地址
内网设备还需要其他一些额外配置:
首先,设置防火墙允许转发和 IP masquerade
其中 eth0
是本地网络接口, ztbtotfrd7
是 ZeroTier 的网络接口名, 替换成实际名称
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o ztbtotfrd7 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i ztbtotfrd7 -o eth0 -j ACCEPT
另外在 sysctl.conf
加入 net.ipv4.ip_forward=1
允许转发, 或者直接使用下面的命令
sysctl -w net.ipv4.ip_forward=1
然后就可以通过 ZeroTier 访问内网中的其他机器了
对于 IPv6, 需要使用 ip6tables
和改变 sysctl.conf
中相应的设置
ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
ip6tables -A FORWARD -i eth0 -o ztbtotfrd7 -m state --state RELATED,ESTABLISHED -j ACCEPT
ip6tables -A FORWARD -i ztbtotfrd7 -o eth0 -j ACCEPT
sysctl -w net.ipv6.conf.all.forwarding=1