banner
miaoer

miaoer

喵二の小博客 xLog 分站
tg_channel
telegram

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

CatWrt 好用吗,刷完可以 打赏我 哦~

Youtube



视频使用:

BGM:

  • Roa - Feather

  • Children's Music - Bike Rides



  • 开始#

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

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

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

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

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

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

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

    准备#

    本期用到

    • 红米 AX6000 无线路由器
    • 两根网线
    • 牙签(或取卡针)
    • WinSCP
    • Telnet/SSH 客户端
    • 小米路由固件 1.2.8 版本
    • CatWrt for Redmi AX6000

    恢复需要

    • 小米路由官方修复工具
    • 小米路由固件 1.0.48 版本

    附件下载 提取码: miao

    本期视频搭配固件已有更新,详见 CatWrt-v23.8

    1


    安装相关软件#

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

    image

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

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


    降级#

    因为解锁需要小米 MiWiFi 固件为 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,替换博客里提供的链接然后回车

    ::: banner {info}
    这里可以直接点击右边的 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#

    image

    机器重启后再次进入小米路由器后台,再次复制 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 文件的哈希值,备份引导分区和提示部分

    image

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

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

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

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

    进入 /tmp 目录就可以看到 mtd4_Factory.binmtd5_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 FIP
    Unlocking FIP ...
    Erasing FIP ...
    root@XiaoQiang:~# mtd write /tmp/mt7986_redmi_ax6000-fip-fixed-parts.bin FIP
    Unlocking 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 FIP
    Verifying 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#

    ::: banner {warning}
    在接下来的步骤网口 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 这块就完成了


    设置#

    ::: banner {warning}
    U-Boot 进入需要设置静态地址,回到 OpenWrt 需要关闭静态改为 DHCP 自动获取。
    :::

    固件的默认地址是 192.168.1.4

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

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

    账号 root 密码 password

    即可进入 CatWrt

    image

    首先需要设置 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 - 编辑

    image

    如果你是光猫拨号的,这里就不需要修改,如果是光猫桥接路由器拨号的,这里改为 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 的功能或者无线部分不满意想刷回原厂系统也是可以的

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

    恢复分区#

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

    image

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

    insmod mtd-rw.ko i_want_a_brick=1
    md5sum /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

    image

    等待一会就会出现刷入弹窗,等进度跑完路由器的蓝色的 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 的无线驱动部分解答

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

    此文由 Mix Space 同步更新至 xLog
    原始链接为 https://www.miaoer.xyz/posts/network/flash-redmi-ax6000


    Footnotes#

    1. https://www.miaoer.xyz/posts/blog/redmiax6000_openwrt_qanda

    Loading...
    Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.