小米路由器R3D刷机常用软件安装
刷机后常用软件:
1) EntWare
2) MixBox
3) TailScale
4) ZeroTier
5) Nps Client
6) Lighttpd
7) Alist
准备工作:
(1) 内置硬盘根目录如果有opt文件夹,就重命名成其他的。
(2) 硬盘根目录建立/tools文件夹,后续操作用到的软件包和脚本统一放这个目录,省的找不到。
(3)安装EntWare需要/root和/opt两个目录可读写,从内置硬盘 /userdisk/data/opt挂载。这个需要脚本自动检测和挂载,并备份原有文件。
1、EntWare
这个优先安装,安装前如果内置硬盘根目录下有以前的/opt文件夹,就给换个新名字,安装脚本:
curl http://192.168.31.1/backup/share/tools/entware/dco_entware_miwifi_R3D.sh | /bin/sh
说明一下:在小米路由器R3D上,http://192.168.31.1/backup/share 这个路径指向内置硬盘根目录,即 /userdisk/data。
安装脚本就是在官方脚本基础上做了一些是适配,另外增加了dco.PATH、dco.openwrt两个文件,以前从网上下载的,现在找不到了。
如果网路好,很快就能安装完成,不行就多试几次,目前正在拷贝到路由器硬盘。
后续作业:
1) 如果存在/userdisk/data/opt就退出安装。
2) 把官方镜像复制到本地,国外网络说不定哪天就又不能访问了😡。
2、MixBox安装
MixBox已经停止更新好长时间了,组件都过时了,但部分功能还能凑合着用。
目前网络上搜索到的安装脚本都不可用,用以前保存下来的一个副本安装。安装命令:
sh -c "$(curl -kfsSl http://192.168.31.1/backup/share/tools/mixbox/install.sh)" && source /etc/profile &> /dev/null
按照里面的提示安装就行,安装路径按照建议选择。
后续作业:
1)里面有些软件确实过时了,待清理
2)修改默认安装目录,后续统一安装到/opt文件夹下
3、TailScale
搭建虚拟局域网软件,
3.1下载arm版本的TailScale软件,目前最新版本tailscale_1.78.1_arm.tgz,上传到 /userdisk/data/tools/tailscale 文件夹下。
3.2目前用的是网上下载的教程,脚本:
#!/bin/sh
BINDIR=“/opt/tailscale”
# 解压缩软件包,不存在目标路径会自动创建
tar -zxvf /userdisk/data/tools/tailscale/tailscale_*_arm.tgz -C $BINDIR/
# 检测是否解压成功
if [[ ! -d "$BINDIR" ]] ; then
echo "安装未成功"
exit
fi
cd $BINDIR
# 增加权限
chmod +x tailscaled #可以理解为后台服务
chmod +x tailscale #可以理解为前台任务
# 添加开机自动运行脚本
# cp /userdisk/data/tools/tailscale/init.d/tailscale.sh /etc/init.d/tailscale
# cp /userdisk/data/tools/tailscale/init.d/tailscaled.sh /etc/init.d/tailscaled
# 添加服务
cat > "/etc/init.d/tailscale" <<-TAILSCALE
#!/bin/sh /etc/rc.common
START=99
start() {
cd $BINDIR
./tailscale up --accept-dns=false --advertise-routes=192.168.31.0/24 &
}
stop() {
kill tailscale
}
TAILSCALE
cat > "/etc/init.d/tailscaled" <<-TAILSCALED
#!/bin/sh /etc/rc.common
START=88
start() {
cd $BINDIR
./tailscaled --state=tailscaled.state &
}
stop() {
kill tailscaled
}
TAILSCALED
#增加权限
chmod +x /etc/init.d/tailscale
chmod +x /etc/init.d/tailscaled
# 增加开机启动项目
/etc/init.d/tailscale enable
/etc/init.d/tailscaled enable
# 先运行后台服务
# ./tailscaled --state=tailscaled.state
/etc/init.d/tailscaled start
3.3看见它开始跑代码了,先放在一边不要动,再新建一个ssh连接到路由器。执行下面命令
cd /opt/tailscale
./tailscale up --accept-dns=false --advertise-routes=192.168.31.0/24
3.4tailscale 首次运行后,会给出一个网站,复制这个网址到浏览器(Putty中鼠标选中后自动会复制到剪贴板),SSH连接窗口不要关闭,也不要打断程序运行,只需最小化。
3.5打开刚刚复制的网址,输入自己tailscale的邮箱账号。此时路由器就加入到tailscale的网络中了。
3.6接着在tailscale网站中,修改自己刚刚加入的路由器设备:
由器的名称:Edit machine name..
证书不过期:Disable key expiry
设置子网:Edit route settings
3.7将“192.168.31.0/24”前面的按钮打开,如此操作,路由器下面所有的192.168.31.X的IP都可以在虚拟局域网中相互访问。网站中操作完成后,SSH窗口会出现连接成功提示。
检查一下,/etc/rc.d文件夹里面有没有S88tailscaled.sh和S99tailscale.sh。然后reboot重启路由器。
4、ZeroTier
这个一直没有安装成功,能连接根服务器,但就是无法和其他客户端ping通。
EntWare版本的,官网有以前旧版,有空一个个测试。
这个只能算是TailScale的补充吧,两个软件功能相同,但ZeroTier已经搭建好了根服务器。
5、Nps Client
下载客户端软件包linux_arm_v7_client.tar.gz,上传到路由器硬盘根目录/userdisk/data/tools/nps;
修改开机脚本npc.sh 的连接参数,IP地址、端口、密匙vkey:
-server=192.168.31.1:8024 -vkey=12345678 -type=tcp
npc.sh脚本放在/userdisk/data/tools/nps目录下,跟软件包同一文件夹。
运行安装脚本:
#!/bin/sh
# 建立tailscale安装目录
mkdir /opt/nps
cd /opt/nps
# 解压缩软件包
tar -zxvf /userdisk/data/tools/nps/linux_arm_v7_client.tar.gz -C /opt/nps/
# 增加权限
chmod +x npc
# 添加到开机启动项目
cp /userdisk/data/tools/nps/npc.sh /etc/init.d/npc
chmod +x /etc/init.d/npc
/etc/init.d/npc enable
/etc/init.d/npc start