共计 826 个字符,预计需要花费 3 分钟才能阅读完成。
之前写了 Zerotier 搭建私有根服务器及创建虚拟局域网完整教程。
但是这遇到了一个问题,那就是异地组网的话,如果想要访问设备,那么不管是客户端还是服务端那么都需要安装 zerotier 的客户端。
公司有多台机器,那么根据上面的教程不但每个机器都需要安装客户端,而且还需要替换 planet 文件,非常的麻烦。
设置静态路由
用公司的一台虚拟机充当路由器,那么只需要配置公司内网的 ip 静态路由到这台虚拟机,然后这台虚拟机再转发到内网机器。
如公司内网的 ip 网段有几个,172.21.9.0/24
、172.26.1.0/24
、172.30.1.0/24
,公司内网的虚拟机的异地组网 ip 为 10.0.0.201
,那么进行如下配置即可。
虚拟机开启转发
修改下面的两个网卡名称,然后执行命令即可。
# 虚拟机的物理网卡
PHY_IFACE=eth0;
# 虚拟机的 zerotier 虚拟网卡
ZT_IFACE=ztlya2ak2b
# 源地址进行NAT转换
iptables -t nat -A POSTROUTING -o $PHY_IFACE -j MASQUERADE
# 允许转发来自zerotier网卡,去往物理网卡的数据
iptables -A FORWARD -i $ZT_IFACE -o $PHY_IFACE -j ACCEPT
# 允许转发来自物理网卡,去往zerotier网卡的数据,并且这些数据的连接状态为 RELATED、ESTABLISHED 才允许转发
iptables -A FORWARD -i $PHY_IFACE -o $ZT_IFACE -m state --state RELATED,ESTABLISHED -j ACCEPT
# 保存上面的规则
iptables save
#保存iptables-save > /etc/sysconfig/iptables
#恢复iptables-restore < /etc/sysconfig/iptables
然后就可以使用内网 ip 进行访问了。
使用tracert
命令进行路由跟踪,和ping检测,结果如下。
提醒:本文发布于662天前,文中所关联的信息可能已发生改变,请知悉!