小米路由器4a开发版固件_小米路由器 4A 刷入lean 的 openwrt/lede

本教程同时适用于 小米路由器 4A 以及其千兆版

缘由

作为一只攻城狮,开发的时候经常要下一堆lib,然而很多依赖都在国外,虽然也有国内的源,但是也常用例外情况,因此下载依赖时比较慢;(所以,懂我意思吧)

然后我并不想在挂客户端,并且要局域网都能用,因此就产生了这个想法

路由器固件切换

1.无法切换固件?

咳咳...我特地查询了下,我的路由器是 “小米路由器4A(R4AC)” 并不支持切换固件,而且也没用 USB 插槽,于是我产生了拆开直接刷的冲动;实际上也拆了,但是发现不大好操作。

2.那是不可能的!

经过我仔细地搜索伟大的互联网,发现了一位 github 的大佬给出了解决方案(非常感谢这位大佬)

该解决方案是通过小米路由器登录后产生的 stock 值来进入路由器进行操作

3.打通路由器命令行通道

具体的操作请前往 Python3 环境、telnet 以及 git ,

Windows 10 系统的话,可以直接打开 WSL(ubuntu 18.04 以上) 操作,如下# 克隆仓库

git clone https://github.com/acecilia/OpenWRTInvasion.git

# 进入目录

cd OpenWRTInvasion

# 安装依赖

pip3 install -r requirements.txt

然后再执行python3 remote_command_execution_vulnerability.py

根据提示,输入路由器 IP 地址(小米路由器默认一般是 192.168.31.1 )和登录后产生的 stock 值

4.链接到路由器命令行

上述操作完成后,可尝试执行如下指令telnet 路由器 IP 地址

如果连接被拒绝,可多尝试几次,或者重启路由器并重复第3步

5.固件切换

进入到路由器命令行通道以后,执行如下# 进入到临时目录

cd /tmp

# 下载固件

curl https://raw.githubusercontent.com/yeliulee/openwrt-ramips-mt76x8-xiaomi_mir4a/main/mt76x8/openwrt-ramips-mt76x8-xiaomi_mir4a-100m-squashfs-sysupgrade.bin --output firmware.bin

# 校验固件完整性 (具体看下面仓库)

./busybox sha256sum firmware.bin

# 如校验和一致,则刷入硬件

mtd -e OS1 -r write firmware.bin OS1

刷写过程中请勿触碰路由器或断电,以免变砖,刷写完成以后会重启

等待重启以后即可进入 web 管理界面,路由器默认信息如下192.168.1.1 # 路由器地址

root # 用户名

password # 密码(与 ssh 密码相同,自行更改)

进入 WEB 管理界面以后

我编译固件的时候,选择的 luci 的 material 主题(官方默认主题比较辣眼),有其他需求的可自行编译固件

固件仓库

lean 的 openwrt/lede 项目仓库 (感谢大佬)

仓库地址

本文中的主角,为 小米路由器 4A (R4AC) 刷入 lean 的 openwrt/lede ,仓库中仅包含编译结果(已内置必需组件);

仓库地址 本固件同时适用于 小米路由器 4A 以及其千兆版

相关资源:自编译 极路由2 大麦DW22D/DW203D/DW204D openwrt路由器固件分享
 

上一篇:极路由2刷机为openwrt固件


下一篇:openwrt源码下配置文件目录指引