准备工作
刷机有风险,操作需谨慎,建议使用备用路由器,以免与世隔绝。
原文教程较为详细,因此本文就文件分享,及操作经验,具体请观看原文。
固件
小米路由器3官方降级固件:
http://bigota.miwifi.com/xiaoqiang/rom/r3/miwifi_r3_all_55ac7_2.11.20.bin
小米路由器3 X-Wrt固件
x-wrt-7.0-b202001120437-ramips-mt7620-xiaomi_miwifi-r3-squashfs-rootfs0.bin
x-wrt-7.0-b202001120437-ramips-mt7620-xiaomi_miwifi-r3-squashfs-kernel1.bin
文件下载
由于原文分享的x-wrt固件文件链接已失效,故分享本人在官网下载的全部所需文件,也可自己下载
官网:https://downloads.x-wrt.com/rom/
gitHub:https://github.com/x-wrt/build-release/releases
// 包含有教程x-wrt7.0,以及最新版9.0,看个人需求均可食用
https://cloud.189.cn/web/share?code=6NjMv2fAvQna
操作(重要)
SSH软件
刷机过程中需要SSH到路由器内部,所以需要一个SSH软件。大家可以使用自己喜欢的SSH软件,我这里使用的是Git Bash。
Window10可使用自带的PowerShell,亲测有效。
降级并开启SSH
首先从192.168.31.1进入官方固件的管理页面,选择右上角的系统升级。然后在点击手动升级并选择官方降级固件(miwifi_r3_all_55ac7_2.11.20.bin),降级时选择清除用户配置。
然后等待路由器降级完成。降级完成之后正常随便设置路由器密码(12345678即可,因为这只是临时的),进入路由器后台,即可看到浏览器地址栏上有一串特殊字符STOK,把它记下来。因为每次登录路由器STOK都会发生变化,只需要记住本次的STOK就好了。
然后依次在浏览器中访问下面几个网址,注意将STOK、OLD_PASSWORD、NEW_PASSWORD替换为实际的值。后面两个是设置路由器管理密码的,OLD是刚才设置的旧密码,NEW是将要设置的新密码,它们都必须至少8位。
命令执行成功之后,应该会显示{"msg":"未能连接到指定WiFi(Probe timeout)","code":1616},最后一条命令显示{"code":0}。
// ssh
> http://192.168.31.1/cgi-bin/luci/;stok=<替换的STOK>/web/home#router
{"msg":"未能连接到指定WiFi(Probe timeout)","code":1616}
> http://192.168.31.1/cgi-bin/luci/;stok=<替换的STOK>/api/xqnetwork/set_wifi_ap?ssid=Xiaomi&encryption=NONE&enctype=NONE&channel=1%3Bnvram%20set%20ssh%5Fen%3D1%3B%20nvram%20commit
{"msg":"未能连接到指定WiFi(Probe timeout)","code":1616}
> http://192.168.31.1/cgi-bin/luci/;stok=<替换的STOK>/api/xqnetwork/set_wifi_ap?ssid=Xiaomi&encryption=NONE&enctype=NONE&channel=1%3Bsed%20%2Di%20%22%3Ax%3AN%3As%2Fif%20%5C%5B%2E%2A%5C%3B%20then%5Cn%2E%2Areturn%200%5Cn%2E%2Afi%2F%23tb%2F%3Bb%20x%22%20%2Fetc%2Finit.d%2Fdropbear
{"msg":"未能连接到指定WiFi(Probe timeout)","code":1616}
> http://192.168.31.1/cgi-bin/luci/;stok=<替换的STOK>/api/xqnetwork/set_wifi_ap?ssid=Xiaomi&encryption=NONE&enctype=NONE&channel=1%3B%2Fetc%2Finit.d%2Fdropbear%20start
{"msg":"未能连接到指定WiFi(Probe timeout)","code":1616}
> http://192.168.31.1/cgi-bin/luci/;stok=<替换的STOK>/api/xqsystem/set_name_password?oldPwd=<刚设置的密码>&newPwd=<新密码>
{"code":0}
命令全部执行完毕之后,应该已经开启了SSH权限,使用SSH软件输入 ssh root@192.168.31.1。
开始刷机
插入U盘
x-wrt-<CURRENT_VERSION>-ramips-mt7620-xiaomi_miwifi-r3-squashfs-kernel1.bin
x-wrt-<CURRENT_VERSION>-ramips-mt7620-xiaomi_miwifi-r3-squashfs-rootfs0.bin
准备好一个文件系统是FAT32(注意格式,不是的可以格式化U盘)的U盘,将前面下载的X-Wrt固件两个文件复制到U盘中,然后插到路由器上面。
输入命令
然后在SSH终端中依次输入下列命令,推荐复制粘贴,防止出现拼写错误。倒数第二条和第三条命令可以先复制mtd write x-wrt,然后按Tab补全,以此类推。
务必确认输入语句正确,控制台并没有报错信息,如有问题重刷即可
> nvram set flag_last_success=1
> nvram set boot_wait=on
> nvram set uart_en=1
> nvram commit
> cd /extdisks/sda1 // 如果这里报错找不到,就是U盘格式不对
// ⚠️ 需要注意这两条最后面还有 kernel1 rootfs0,我就是没留意,因此*重刷
> mtd write x-wrt-<VERSION>-ramips-mt7620-xiaomi_miwifi-r3-squashfs-kernel1.bin kernel1
> mtd write x-wrt-<VERSION>-ramips-mt7620-xiaomi_miwifi-r3-squashfs-rootfs0.bin rootfs0
> reboot
前面的命令输入完毕之后,输入最后一条命令重启路由器。
需要注意reboot会等待一分钟然后重启,不用任何操作, 耐心等待 即可。
一般两三分钟以后,看到以下无线网络并连接,就可以从浏览器http://192.168.15.1访问新的路由器管理页面了。
固件无线默认名称:X-WRT_XXXX,密码:88888888
固件管理界面:http://192.168.15.1/
管理界面账户/密码:root/admin
设置
先跟着 设置引导 就可以配置好网络了,其他操作再去慢慢了解即可。
建议查看官网教程
回退官方固件
如果您决定返回原来的小米固件(而不是OpenWRT),则过程很简单:
下载小米原厂固件,最好是开发版固件并将其重命名为miwifi.bin
使用SSH登录到路由器并运行以下命令:
fw_setenv flag_try_sys1_failed 0
fw_setenv flag_try_sys2_failed 1
fw_setenv flag_boot_success 0
接着:
关闭路由器
将您的U盘格式化为FAT / FAT32,如果还不是FAT32,需要格式化),然后将miwifi.bin文件复制到U盘的根目录(而不是子文件夹)。
将您的U盘连接到路由器,按住重置按钮并打开电源。按住重置按钮,直到黄灯闪烁。等待5分钟,以安装原厂固件。
您现在可以登录到192.168.31.1的路由器。
————————————————
转载申明
版权声明:本文为CSDN博主「过了即是客」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011054333/article/details/104350859