05
2023
09

红米 AX6000 保姆级教你刷 OpenWrt 小白也不怕变砖


开始

红米路由 AX6000 作为小米公司发布的中端无线路由器

其搭载的联发科 Filogic 830,经测试确实已经接近入门级双核的软路由

可以满足千兆上网需求,性能可以说是非常强悍的。

本期教程呢既不是不扩容刷机(分区),也不是扩容刷机,而是 U-Boot 刷机

U-Boot 刷机的部分我认为还是比较愉快的,虽然恢复条件较多听我一一讲清楚相信你也可以搞定

这边建议刷机有风险,玩机需谨慎!建议在刷入前完整将视频看完再下手

我也是冒着变砖的风险,连夜修复固件问题。坑已经给你们踩过了,这还不值得大家的一键三连吗。

PS: 提示本期视频搭配固件已有更新,如果你有追新习惯可以参与抢先更新测试版,具体详见  CatWrt-v23.2

在使用最新固件后本博客内容依旧适用,如测试版有问题需要反馈请加我们群聊进行反馈,请放心使用。

准备

本期用到

  • 红米 AX6000 无线路由器

  • 两根网线

  • 牙签

  • WinSCP

  • Telnet/SSH 客户端

  • 小米路由固件 1.2.8 版本

  • CatWrt for Redmi AX6000

恢复需要

  • 小米路由官方修复工具

  • 小米路由固件 1.0.48 版本

 附件下载

提取码:miao

无线固件之前传错了,已更新为视频同款 MD5: 32e9af36859d02c1f5d54e4fa6be82fa

除了还原小米原厂其他部分全部需要联网操作,U-Boot 和 CatWrt 默认网口 1 为 Wan 其他为 Lan 不存在自适应。

安装相关软件

下载视频博客里提供提供的附件,下载后解压到你知道的位置。



演示下 Telnet 的安装,键盘按 Windows 微标直接键入 添加或删除程序 选择  可选功能 滑到底部 更多 Windows 功能 选择 Telnet 客户端 旁的勾 √,这样 Telnet 就安装好了。

打开附件中里的 WinSCP 安装包,选择为所有用户安装,在 UAC 里同意无脑下一步即可。


降级

因为解锁需要小米固件为 1.2.8 版本

在小米路由器后台 (192.168.31.1),右上角选择系统更新,在接下来点击手动更新

选择刚刚下载好的 1.2.8 版本的固件,系统将会降级或更新到 1.2.8

重启后重新进入后台

解锁 Telnet

开启调试模式

在浏览器地址栏 如 http://192.168.31.1/cgi-bin/luci/;stok=1145141919

复制小米路由地址后面的 stok,如这里的 1145141919,替换博客里提供的链接然后回车

这里可以直接点击右边的 COPY 按钮快速复制。
http://192.168.31.1/cgi-bin/luci/;stok={token}/api/misystem/set_sys_time?timezone=%20%27%20%3B%20zz%3D%24%28dd%20if%3D%2Fdev%2Fzero%20bs%3D1%20count%3D2%202%3E%2Fdev%2Fnull%29%20%3B%20printf%20%27%A5%5A%25c%25c%27%20%24zz%20%24zz%20%7C%20mtd%20write%20-%20crash%20%3B%20

如 api 输出

 {"code":0}

就说明我们的步骤没问题,可以接着继续

将重启链接中的 stok 也替换一下,我也不知道为啥要这样重启既然教程是这样做就照做吧~,输入后回车

http://192.168.31.1/cgi-bin/luci/;stok={token}/api/misystem/set_sys_time?timezone=%20%27%20%3b%20reboot%20%3b%20

开启 Telnet



机器重启后再次进入小米路由器后台,再次复制 stok,注意重启后的 stok 可不一样不要搞混

http://192.168.31.1/cgi-bin/luci/;stok={token}/api/misystem/set_sys_time?timezone=%20%27%20%3B%20bdata%20set%20telnet_en%3D1%20%3B%20bdata%20set%20ssh_en%3D1%20%3B%20bdata%20set%20uart_en%3D1%20%3B%20bdata%20commit%20%3B%20

成功执行 api 后也会输出 {"code":0}接着输入以下链接替换后回车路由器将进入重启

http://192.168.31.1/cgi-bin/luci/;stok={token}/api/misystem/set_sys_time?timezone=%20%27%20%3b%20reboot%20%3b%20

解锁 SSH

重启过后呢,我们的 Telnet 就开了,我们连接一下小米路由器,在 cmd 或者 Windows Terminal 这里简称为终端,键入 telnet 192.168.31.1

即可进入 telnet 了,接下来我们需要解锁 SSH 才能完成刷入 U-Boot

这里非常感谢 @Timochan 为本期节目特地编写的解锁脚本,感激不尽

将下列代码鼠标直接按 COPY 复制嗷,不需要拉横幅选中再复制

cd /tmp && curl --silent -O https://fastly.jsdelivr.net/gh/miaoermua/unlock-redmi-ax6000@main/setup.sh && chmod +x setup.sh && ./setup.sh

执行完成后会提示 遗失对主机的连接。这里就代表解锁 SSH 脚本执行成功并且重启了

重启后再进入终端输入 ssh [email protected]

即可进入 SSH 了

备份和刷入 U-Boot

接下来使用 hanwckf 大神修改编译好的 U-Boot 和配套脚本

将备份一下原本的引导分区后进行下载 U-Boot

cd /tmp && curl --silent -O https://fastly.jsdelivr.net/gh/miaoermua/unlock-redmi-ax6000@main/uboot.sh && chmod +x uboot.sh && ./uboot.sh

完成后会有一段代码飘过其中前面的是下载并且校验 U-boot 文件的哈希值,备份引导分区和提示部分



其中提示 Backup success! Please download it to your computer 是备份成功,请下载到你的电脑里

我们就使用 WinSCP 连接小米路由器,协议选择 scp 主机填 192.168.31.1

账号 root 密码 admin 点击链接,同意保存并信任证书文件

如果默认进入 /root 目录需要双击 .. 返回根目录

进入 /tmp 目录就可以看到 mtd4_Factory.bin 和 mtd5_FIP.bin 将这两选中复制或者直接拖动到本机的目录里,有需要的小伙伴可以传到别的进行备份,

这点非常重要,没有他你就不能恢复到小米原厂系统!

在保存间余我瞄到了 U-Boot 文件,其实你可以不用担心 U-Boot 脚本有没有下成功的,没有下成功脚本就会提示相关错误

例如:Error: mt7986_redmi_ax6000-fip-fixed-parts.bin download failed 和 Error: mt7986_redmi_ax6000-fip-fixed-parts.bin md5 is not correct

接下来就是刷入 U-Boot 文件到本机了,这里强调需要终端中依次输入,这点很重要!

mtd erase FIP
mtd write /tmp/mt7986_redmi_ax6000-fip-fixed-parts.bin FIP
mtd verify /tmp/mt7986_redmi_ax6000-fip-fixed-parts.bin FIP

输出参考,提示 Success 即可,并且内容需要一模一样。

root@XiaoQiang:~# mtd erase FIPUnlocking FIP ...
Erasing FIP ...
root@XiaoQiang:~# mtd write /tmp/mt7986_redmi_ax6000-fip-fixed-parts.bin FIPUnlocking FIP ...

Writing from /tmp/mt7986_redmi_ax6000-fip-fixed-parts.bin to FIP ...
root@XiaoQiang:~# mtd verify /tmp/mt7986_redmi_ax6000-fip-fixed-parts.bin FIPVerifying FIP against /tmp/mt7986_redmi_ax6000-fip-fixed-parts.bin ...
72a110768c7473200b863a3c5d4dd975 - FIP
72a110768c7473200b863a3c5d4dd975 - /tmp/mt7986_redmi_ax6000-fip-fixed-parts.bin
Success
root@XiaoQiang:~#

U-Boot

在接下来的步骤网口 1 将作为 Wan 口,网口 234 为 Lan;不支持自适应!

请将连接电脑的网线插入到 234 任意 Lan 网口里。

接下来需要设置一下 U-Boot 的静态地址

点击左下角 Windows 微标在键盘上输入 控制面板 回车,打开 控制面板 - 查看网络状态和任务 选择到 以太网 - 属性-Internet 协议版本 4 (TCP/IPv4)-属性

或者在 Windows 设置中  IP 分配 - 编辑 - IPv4

选择使用下面的 IP 地址,依次填入

IP 地址192.168.31.2

子网掩码255.255.255.0

网关地址192.168.31.1

如果使用 Windows 设置而并非控制面板还需添加 首选 DNS : 192.168.31.1 (视频中并未演示)

点下确定即可

Tip: 此时 U-Boot 不会亮 LED 灯,可以观察电脑的网口是否闪烁以检查路由器是否运行,reset 可以多按几秒不能少于 15 秒!

接下来拔掉红米 AX6000 的电源,将牙签戳入路由器的 reset 口上同时接入电源,按住心里默念 15 秒然后松开 reset

就进入到大神编译好的 U-Boot 程序了,这里点击选择文件找到下载我编译好的 CatWrt For RedmiAX6000 的固件

全称 catwrt-v22.12-mediatek-filogic-xiaomi_redmi-router-ax6000-squashfs-sysupgrade.bin

然后点击 Update,固件将会上传到 U-Boot 里点击刷入,就会检查你的包是否兼容

第一次这里我这里就提示 Update Failed 报错的,这里很正常,返回再次上传固件

这次就很轻松就刷入固件了,刷入当出现 Upgrade complete! 并且伴随 LED 白灯亮起 U-Boot 这块就完成了


设置

进入 U-Boot 需要设置静态,退出回到 OpenWrt 需要关闭静态改为自动获取。

固件的默认地址是 192.168.1.4

这里还得将我们之前设置的静态地址改为 DHCP 自动获取

在浏览器中登录路由器后台  192.168.1.4

账号 root 密码 password

即可进入 CatWrt



首先需要设置 Lan 口配置,点击 网络 - 接口-Lan-编辑

地址我们这里不修改,挺好的

网关这里设置本机地址 192.168.1.4

广播这里设置 192.168.1.0

DNS 我这里就设置阿里和腾讯的公共 DNS 地址 119.29.29.99 , 223.5.5.5

IPv6 是默认打开,DHCP 这里默认 50 起也不是不行我这里我喜欢改到 20,因人而异吧

IPv6 这里的 DNS 我们设置在 240C::6666

保存并应用,如果你修改了本机的地址这里路由器可能无限转圈圈,就需要重启一下重新在地址栏里输入你的地址即可

接下来接着设置 Wan 口,点击 网络 - 接口-Wan-编辑



如果你是光猫拨号的,这里就不需要修改,如果是光猫桥接路由器拨号的,这里改为 PPPoE 协议,点击切换协议填入宽带账号和密码

保存并应用

接着优化设置,找到网络底下的 Turbo ACC 网络加速

PS: 后面咨询了暗云大佬,硬件加速移植过来就集成在了开源的 Flow Offloading 里了,无需担忧千兆下的性能问题。

流量分载是 Flow Offloading 也没有开出来联发科的 HNAT 即硬件加速,这里还是稍有遗憾的需要等待 Lean 大佬们的支持

这里仅需要打开 DNS 缓存并且保留几个 DNS,这里我还是只保留的阿里和腾讯的 DNS

然后我们打开服务找到 UPNP 将 启动 UPnP 与 NAT-PMP 服务 打上勾就可以开启 UPNP 了

这里注意,OpenWrt 的端口转发这里可以使用 Socat 可以为转发 IPv4/v6 的端口

无线部分简单设置一下,可以正常使用是开源的无线驱动而不是闭源的,Mesh 功能也废了我尝试过在 LEDE 里编译简单 Mesh 的都以失败告终

其他功能自行研究,我也编译好了软件源,作为小补充,有兴趣的可以了解一下

因为我们刚刚修改过 Lan 口配置,重启红米 AX6000 即可正常使用了

性能

我这里只有 300-400Mbps 的宽带上网性能 CPU 也就占用 30%

CpuMark : 27555.110220 Scores 接近入门级双核软路由的水准

chacha20-poly1305

16 BYTES64 BYTES256 BYTES1024 BYTES8192 BYTES16384 BYTES
61971.58k129798.61k262005.95k304262.25k322272.73k320474.33k

aes-256-gcm

16 BYTES64 BYTES256 BYTES1024 BYTES8192 BYTES16384 BYTES
98082.86k276013.40k515196.76k663414.10k722504.26k721534.98k

4k 视频呢也可以轻松秒杀 20w


刷回小米原厂固件

如果对 OpenWrt 的功能或者无线部分不满意想刷回原厂系统也是可以的

如果你使用 U-Boot 刷入了其他固件可能不包含 kmod-mtd-rm 即不能解锁分区并还原,请使用 CatWrt v22.12 恢复

恢复分区

首先我们使用 WinSCP 链接上红米 AX6000 此时机器运行的还是我编译好的 CatWrt



将我们事先备份好的 mtd5_FIP.bin 分区文件上传到 /tmp 目录里后执行命令解锁 FIP 分区即可恢复官方 U-Boot 分区

insmod mtd-rw.ko i_want_a_brick=1md5sum /tmp/mtd5_FIP.bin
mtd write /tmp/mtd5_FIP.bin FIP
mtd verify /tmp/mtd5_FIP.bin FIP

后面就可以断电用小米官方修复工具来修复了

小米恢复工具

小米修复工具这里比较多注意事项,首先呢 Windows Defender 防火墙和杀软得暂时关掉,有多个网卡的记得得把多余的网卡禁用掉,拔掉 Wan 口网线(网口 1)和电源线

在小米官方修复工具中把我们预先下好的官方固件选上,下一步网卡这里我这里只有一个继续,

接着一手牙签戳进 reset 孔,一手插电,长按直到蓝色 LED 灯长亮转为了橙灯闪烁后松开 reset



等待一会就会出现刷入弹窗,等进度跑完路由器的蓝色的 LED 灯闪烁提示你拔掉电源重启

我们拔掉电源重新插上等待少会我们就恢复了原厂固件


结束

本期视频就到这里了,这款红米 AX6000 的固件有几个小遗憾就是 160mhz 暂时没有测试到需要大家自行测试,也有可能是我的配置不正确开不出来

在状态概览中会看到莫名其妙有个 2.5G 的 eth0 其实接口里是没有绑定任何接口的

总得来说这款红米 AX6000 打包开发对我并不难,难的是脚本为我们处理好的部分这里特别感谢 Timochan PR 的脚本,还有老板购买并提供机器适配,我到底需要刷 x-wrt 还是 CatWrt 还得看你自己。

最后刷了我们 CatWrt 的可以加入我们的粉丝群,感谢大家支持我是喵二我们下期家庭数据中心再见。

帮助

编译不是十全十美的活,难免会有 Bug,如遇到问题在下方评论留言或者加群询问,使用了我的固件可以进行简单免费的咨询,要是有偿是再好不过的!

欢迎多多留言鼓励 ( ´・・) ノ (._.`)

引用

U-Boot

解锁 Telnet/SSH 教程

刷入 U-Boot 教程

解锁 SSH 权限

unlock-redmi-ax6000

视频实拍授权于 @卡卡的鼓捣日记

感谢遇见大佬对 CatWrt 的无线驱动部分解答

感谢暗云大佬对硬件加速方面部分解答


« 上一篇

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。