红米 AC2100 刷 OpenWrt 教程

这台路由器的关键是先拿到 SSH,再刷 Breed,最后从 Breed 刷入 OpenWrt。不要把小米 AC2100 和红米 AC2100 的固件混在一起。

红米 AC2100 是一台比较经典的 Wi-Fi 5 双频路由器。它的优点是硬件便宜、OpenWrt 支持时间长、资料多,刷入 Breed 后可以在多个固件之间切换,也比较容易救回来。

项目配置
处理器MediaTek MT7621A,双核四线程,880MHz
运行内存128MB RAM
闪存128MB NAND
无线规格Wi-Fi 5,2.4GHz 最高 300Mbps,5GHz 最高 1733Mbps
天线6 根外置高增益天线
有线接口1 个千兆 WAN + 3 个千兆 LAN
USB没有 USB 接口

它适合做家用主路由、旁路由、透明网关、广告过滤和轻量 VPN 网关。128MB 内存可以运行常见插件,但不适合安装太多大型服务。它没有 USB,不能像一些新款路由器那样直接接硬盘或 USB 网卡。

刷机前一定要确认型号

红米 AC2100 的型号一般写作 Redmi Router AC2100,常见型号代号是 RM2100。小米也有一台外观和配置很接近的“Mi Router AC2100”,两台机器的固件文件名不同,不能混刷。不要只看 AC2100 三个字:下载固件时要确认文件名里是 xiaomi_redmi-router-ac2100,不要使用 xiaomi_mi-router-ac2100

刷机前准备

  1. 准备电脑和网线,刷机全程使用有线连接。
  2. 准备红米 AC2100 对应的原厂固件、Breed 文件和 OpenWrt 文件。
  3. 先备份原厂设置;如果已经能进 Breed,也要备份 Breed 里的分区和编程器信息。
  4. 准备好当前固件的校验值。网上很多旧教程仍在使用 21.02 文件,不要直接照搬版本号。
  5. 刷机期间不要断电。红米 AC2100 的闪存写入出错后,通常需要串口才能处理。

推荐方法:原厂系统获取 SSH → 刷 Breed → 刷 OpenWrt

第一步:准备能开启 SSH 的原厂版本

目前 OpenWrt 官方 Wiki 记录的网页漏洞路线要求原厂固件使用 2.0.23,同时也提到 2.0.503 可以使用。部分中文教程使用 2.0.7,这是不同资料对应的另一条路线,不能把版本、Payload 和教程混在一起。

如果你的原厂版本太新,先根据参考教程降级到对应版本。降级前确认下载的是红米 AC2100 的原厂固件,并核对 MD5。

第二步:获取 SSH

登录原厂后台,常见地址是 192.168.31.1。登录后从浏览器地址中找到 stok 参数,再按照 OpenWrt 官方 Wiki 或文末的中文教程执行对应的 Web Exploit。

这个过程的作用是打开 SSH,并设置 root 密码。不同教程的命令和固件版本可能不一样,不建议把一篇教程里的版本号换成另一篇教程里的命令。如果页面返回成功但路由器没有重启,先等一两分钟,再用 SSH 测试。不要连续重复写 Bootloader 命令。

第三步:通过 SSH 刷入 Breed

拿到 SSH 后,把 breed-mt7621-xiaomi-r3g.bin 放到路由器的 /tmp 目录。OpenWrt 官方 Wiki 说明,这个 R3G Breed 文件可用于红米 AC2100。cd /tmp md5sum breed-mt7621-xiaomi-r3g.bin mtd -r write breed-mt7621-xiaomi-r3g.bin Bootloader

确认校验值正确后再执行写入。命令执行完路由器会重启,等待一会儿再操作。

第四步:进入 Breed

断电,按住 Reset,再插电,等指示灯开始闪烁后松开。电脑通过网线连接路由器,浏览器访问 192.168.1.1,即可进入 Breed Web 控制台。

第一次进入 Breed 后,建议先备份 Breed 能备份的分区。特别是要保留原厂 MAC、校准数据和无线相关分区,不要一上来就点“格式化”或批量擦除。

第五步:设置启动变量

刷入 OpenWrt 前,在 Breed 的环境变量里新增:变量名:xiaomi.r3g.bootfw 变量值:2

也可以在 Breed 终端里执行:env set xiaomi.r3g.bootfw 2 env save

这个设置是为了让设备从 OpenWrt 对应的分区启动。没有设置好时,常见现象是刷完后反复重启。

第六步:刷入 OpenWrt 临时底包

从 OpenWrt Firmware Selector 下载红米 AC2100 对应的安装文件。Breed 路线通常先上传 initramfs-kernel.bin,等待设备进入临时 OpenWrt。

进入临时系统后,再从“系统 → 备份与升级”上传正式的 squashfs-sysupgrade.bin。第一次迁移建议不要保留旧配置,按全新配置启动。文件名要分清:initramfs-kernel.bin 是临时启动/安装用的,squashfs-sysupgrade.bin 是已经运行 OpenWrt 后升级用的。不要拿错文件。

另一种刷法:直接写入 kernel1 和 rootfs0

部分教程会在拿到 SSH 后直接把两个镜像写入对应分区:mtd write openwrt-…-squashfs-kernel1.bin kernel1 mtd -r write openwrt-…-squashfs-rootfs0.bin rootfs0

这种方法不需要先装 Breed,但对文件、分区和固件版本要求更严格,写错就可能无法启动。新手更建议先刷 Breed,再用 Breed Web 页面刷系统。

刷完之后怎么检查

刷完 OpenWrt 后,电脑重新自动获取地址,访问 192.168.1.1。设置 root 密码,配置 WAN、无线名称和密码,再检查 2.4GHz、5GHz、LAN 和 WAN 是否正常。

如果无线信号异常,先检查有没有保留原厂的校准数据和无线相关分区。不要为了“清理干净”把 factory、EEPROM 或校准数据分区擦掉。

刷回原厂和救砖

进入 Breed 后,可以通过 Web 页面刷回适配的原厂固件。刷回原厂前,需要把启动地址改回原厂方式:env set autoboot.command “boot flash 0x200000” env save

如果从原厂切回 OpenWrt,则使用 OpenWrt 对应的启动地址:env set autoboot.command “boot flash 0x600000” env save

如果进不了 Breed,可以尝试断电后按住 Reset 上电,等橙色指示灯闪烁后访问 192.168.1.1。仍然没有反应,就需要 UART 串口或 TFTP 救援,不能继续盲目刷写。

常见问题

为什么很多教程的文件名和版本不一样?红米 AC2100 的刷机资料跨越多个 OpenWrt 版本,早期教程常使用 21.02,当前可以通过 Firmware Selector 获取更新版本。安装阶段的 kernel1/rootfs0 和升级阶段的 sysupgrade 也不是同一个文件。

为什么刷完一直重启?常见原因是 Breed 启动变量没有设好、用了小米 AC2100 固件、kernel1/rootfs0 文件不匹配,或者直接把 sysupgrade 当作 Breed 初次安装文件。

能不能直接刷第三方固件?可以,但第一次建议先把官方 OpenWrt 跑通。第三方固件的分区布局、默认地址和启动变量可能不同,出现问题时不要用官方教程硬套。

站外参考与详细教程

资料核对日期:2026-09-22。正文图片均保存在本目录;文末保留站外参考链接。刷机有风险,尤其是 Bootloader 和 MTD 分区写入。请确认是 Redmi AC2100(RM2100),备份原厂数据后再开始操作。

如需转载请保留该博客链接!OpenWrt flashing tutorials, firmware, routers, ipks and apps - ttcoder » 红米 AC2100 刷 OpenWrt 教程

相关文章