前言

红米 AC2100 是一个很好折腾的路由器,所以刷机教程已经满天飞了。我在这里再写一个教程的原因是,教程太多了都不知道应该跟着哪个走,并且那些教程基本上对应了教程作者的 OpenWrt 固件。

本文的内容大部分来源于官方的 Wiki,而 Breed 部分的教程则来源于其他教程。

注意,本文提供了两种刷机方式,仅需按照自己的需求选择一种即可。

Part A. 获取 Root 权限

首先使用小米路由修复工具 更新/降级固件版本至 2.0.23

使用浏览器打开你的路由登录界面,登录。复制地址栏的地址,我们需要地址里面的stok参数。参数如下所示,下文中的所有 <STOK> 字符串均指代这一stok参数。

http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/web/home#router

复制下面的这一行地址到浏览器的地址栏,替换stok参数并访问。

http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20nvram%20set%20ssh_en%3D1%3B%20nvram%20commit%3B%20sed%20-i%20's%2Fchannel%3D.*%2Fchannel%3D%5C%22debug%5C%22%2Fg'%20%2Fetc%2Finit.d%2Fdropbear%3B%20%2Fetc%2Finit.d%2Fdropbear%20start%3B

此命令的作用是启用SSH服务器

复制下面的这一行地址到浏览器的地址栏,替换stok参数并访问。

http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/api/misystem/set_config_iotdev?bssid=gallifrey&user_id=doctor&ssid=-h%0Aecho%20-e%20%27<PASSWORD>%5Cn<PASSWORD>%27%20%7C%20passwd%20root%0A

此命令执行完毕后,会将你的路由器的root用户密码修改为 <password>

执行完毕后,你已经可以通过ssh访问路由器了。

Part B. 安装 Breed (可选)

如果你想刷多个固件玩,你可以选择使用 Breed 替换掉原厂的 Bootloader。

下载 小米R3G的Breed,丢进路由器内。(或者直接 wget 下载也行)

使用SSH登录后,用下面的命令刷 Bootloader

mtd -r write breed-mt7621-xiaomi-r3g.bin Bootloader

刷新完毕后,你就可以重启进入 Breed 了。

Part C. 安装 OpenWrt

0. 获取 OpenWrt 固件

我们强烈不建议使用任何闭源第三方固件。建议使用 OpenWrt 官方固件。

截止本文写作时,官方 OpenWrt 只有 21.02 版本支持红米 AC2100,而这一版本还处于RC(发行预选版)。虽然不建议在生产环境使用rc版本的固件,但也只能使用这一版本。

转到固件下载页面(21.02-RC2),找到xiaomi_redmi-router-ac2100开头的几个文件。

当前可用的文件列表为:

  • xiaomi_redmi-router-ac2100-initramfs-kernel.bin
  • xiaomi_redmi-router-ac2100-squashfs-kernel1.bin
  • xiaomi_redmi-router-ac2100-squashfs-rootfs0.bin
  • xiaomi_redmi-router-ac2100-squashfs-sysupgrade.bin

请对应下面的两种刷机方法分别下载对应的固件文件。

1. 在原厂系统下直接安装 OpenWrt 固件

首先下载后缀为squashfs-kernel1.binsquashfs-rootfs0.bin的两个文件,放入路由器中。然后使用下面的命令安装固件:

mtd write openwrt-ramips-mt7621-xiaomi_redmi-router-ac2100-squashfs-kernel1.bin kernel1
mtd -r write openwrt-ramips-mt7621-xiaomi_redmi-router-ac2100-squashfs-rootfs0.bin rootfs0

执行完毕后,系统将会自动重启进入OpenWrt。

2. 在 Breed 下安装 OpenWrt 固件

进入 Breed 后,首先修改环境变量。新增一个名为xiaomi.r3g.bootfw的环境变量,其值为2

保存后进入刷机页面,选择下载的后缀为 initramfs-kernel.bin 的固件,将其刷入路由器中。

等待路由器重启进入系统。此时正在运行的并不是一个完整的OpenWrt系统,无法安装任何软件包。

进入固件更新页面,选择下载的后缀为 squashfs-sysupgrade.bin 的固件,更新系统。

就此,OpenWrt就更新完毕了。

分类: Linux

0 条评论

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注