首先到这个网站ZeroTier – Global Area Networking注册登陆,注册及创建网络的过程可以参考网上及其他UP主的教程,我就不重复了。
本篇主要讲述的是hiboy大佬编译的固件在没有USB接口或没有外置存储设备的情况下安装使用ZeroTier的方法,如果外接U盘或者硬盘等存储设备可参考文章末尾的”附“。
一、启用SSH服务
按下图所示开启Padavan的SSH服务
二、打开opt强制安装
如下图,开启“opt强制安装”后一定不要忘了点击最下面的“应用本页面设置”
三、下载run-zerotier.sh脚本并修改网络ID和路由
如图,将脚本中红框部分替换为自己的NETWORK ID和ZeroTier官网配置好的路由地址
四、上传脚本到路由器/etc/storage目录并赋予执行权限
使用WinSCP等工具将run-zerotier.sh文件上传至/etc/storage目录下
SSH登陆到Padavan,赋予run-zerotier.sh执行权限
chmod +x /etc/storage/run-zerotier.sh
五、将脚本添加到路由器“自定义脚本”中实现开机启动
浏览器打开Padavan Web界面,依次找到“高级设置” -> “自定义设置” -> “脚本” -> “自定义脚本0(功能配置):”,点击“自定义脚本0(功能配置):”,打开输入框,拖动滚动条到最后,粘贴以下内容:
# 启动ZeroTier killall run-zerotier.sh /etc/storage/run-zerotier.sh > /tmp/zerotier_log.txt 2>&1
然后点击最下方的“应用本页面设置”
此时脚本会自动执行并将日志保存到/tmp/zerotier_log.txt文件中
在SSH中使用以下命令查看输出日志
tail -f -n50 /tmp/zerotier_log.txt
opt环境已经安装好的话会正常启动
最后出现“【ZeroTier程序】已启动”的字样就表明ZeroTier已经启动了
六、到ZeroTier官网勾选认证并配置路由表
打开ZeroTier Central,点击创建好的网络ID
滚动到下面的Members,点击未认证的方框,等待一会儿便会分配到一个IP地址
此时在SSH中输入ifconfig,在最后会看到ZeroTier虚拟网卡的信息
图中画红线的分别是ZeroTier网卡名称和IP地址,复制出来备用。
如果其他ZeroTier成员想访问Padavan的话只需要记住上面的IP地址(192.168.195.99)即可,若要访问Padavan路由下的其他设备的话还需要做一些设置。
在ZeroTier网站页面翻到Advanced部分,按下图所示填写好Destination和(Via)后,点击Submit。
七、配置防火墙规则使ZeroTier各成员及各路由下的内网设备互访
按下图所示,找到“在防火墙规则启动后执行:”,在文本框中添加以下内容并点击最下面的“应用本页面设置”
# ZeroTier防火墙规则 iptables -A INPUT -i ztxxxxxxxx -j ACCEPT iptables -A FORWARD -i ztxxxxxxxx -o ztxxxxxxxx -j ACCEPT iptables -A FORWARD -i ztxxxxxxxx -j ACCEPT iptables -t nat -A POSTROUTING -o ztxxxxxxxx -j MASQUERADE iptables -t nat -A POSTROUTING -s 192.168.195.0/24 -j MASQUERADE logger -t "【ZeroTier防火墙规则】" "添加完成"
注意将红字部分替换为自己的ZeroTier网卡名称和IP地址段
八、重启路由器测试是否配置成功
附:Padavan外接U盘或硬盘等存储设备后安装ZeroTier并设置开机启动的方法
一、安装启动ZeroTier
插入U盘,在Padavan页面中依次找到:“高级设置”->“USB应用程序”->“其他设置”->“允许运行Optware”,选择“Entware”,点击页面最下方的“应用本页面设置”。
看日志,opt环境安装完成后,输入以下命令安装ZeroTier
opkg update opkg install "http://bin.entware.net/mipselsf-k3.4/archive/zerotier_1.4.6-5_mipsel-3.4.ipk"
安装好ZeroTier后,启动ZeroTier
zerotier-one -d
加入网络
zerotier-cli join xxxxxxxxxxxxxxxx
二、配置开机启动脚本
vi /etc/storage/run-media_zerotier.sh
加入以下内容(修改为自己在ZeroTier官网配置的路由表)
#!/bin/sh if [ ! -e "/opt/bin/zerotier-one" ]; then logger -t "【ZeroTier程序】" "不存在,停止启动" exit 1 else COUNT=$(ps | grep zerotier-one | grep -v grep | wc -l) while [ $COUNT -eq 0 ] do logger -t "【ZeroTier程序】" "未启动,尝试启动" zerotier-one -d sleep 30 # 添加ZeroTier官网配置的路由表,本机的不用加 route add -net 192.168.33.0/24 gw 192.168.195.33 COUNT=$(ps | grep zerotier-one | grep -v grep | wc -l) done logger -t "【ZeroTier程序】" "已启动" fi
保存退出
给脚本添加可执行权限
chmod +x /etc/storage/run-media_zerotier.sh
到Padavan页面,依次找到“高级设置” -> “自定义设置” -> “脚本” -> “自定义脚本0(功能配置):”,点击“自定义脚本0(功能配置):”,打开输入框,拖动滚动条到最后,粘贴以下内容:
# 启动ZeroTier killall run-media_zerotier.sh /etc/storage/run-media_zerotier.sh
点击最下面的“应用本页面设置”。