写在前面

前段时间买了台红米ac2100路由器,原生固件无法调整至160Hz的频宽,以及第三方固件支持更多的功能,所以决定将其刷成第三方固件。

在这之前,需要刷入 r3G breed,有了 breed 的控制面板,再进行刷入其他的第三方固件就会方便很多。

开箱路由器

红米ac2100路由器内包含:

  • 路由器本体 * 1

  • 电源适配器 * 1

  • 超五类网线 * 1

踩坑过的方法

BiliBili - 许迎果 红米AC2100刷老毛子Padavan固件 全流程教程

在”离线刷入Breed“时路由器没有进行重启,等待20分钟左右后断电重启,路由器指示灯三色互闪…

之后就使用了返厂维修大法~

CSDN - 小米 红米【AC2100】一键刷BREED【30秒刷完】小白脑残专用 无需工具TELNET + 检查坏块

降级后访问文中刷breed的链接(stock已经替换)后仅显示 {code: 0} 路由器不重启 没有反应

参考的方法

文中使用的刷机方法参考了以下网页:

红米(小米)AC2100 Breed和Padavan固件教程及刷回官方教程

由于自己刷固件的时候没有截图,所以部分图片来源于网络和上述页面。

其它的方法

恩山论坛 - 小米 红米【AC2100】一键刷BREED【30秒刷完】小白帅小伙专用 检查坏块 | 无需Telnet

准备工作

  1. 进行刷机操作之前,需要将 WAN 口联网
    我连接的是电脑使用的网线 即旧路由器 LAN 口连接到 ac2100 的 Internet(WAN) 口

  2. 关闭电脑上的防火墙与杀毒软件,将 ac2100 LAN 口接上网线,连接至电脑

  3. 下载以下文件以便后续使用

文件信息:

名称: miwifi_r2100_firmware_4b519_2.0.722.bin

大小: 16422920 字节 (15 MiB)

SHA256: 63866D47388AFFE8BAF70708B85BFDEF7258B3C895AB134F61A90A36A10F9CA3

名称: miwifi_rm2100_firmware_d6234_2.0.7.bin

大小: 16424012 字节 (15 MiB)

SHA256: BFD7E9A021B291CFF769D36A8D72A570BB49BB553ACD52502104026F6486FCF8

1. 反向更新固件至漏洞版本

接好路由器后打开 miwifi.com (或 192.168.31.1)进入小米路由器设置向导

(新的路由器固件默认网关地址可能为 192.168.28.1)

正常配置路由器后进入管理面板,点击常用设置——更多设置 ——> 固件升级

将下载好的带漏洞的固件上传至路由器进行升级,升级完后路由器会自动重启。

2. 登录管理面板 获取 stok 值

访问网关地址,登录管理面板 在链接中会有一个 stok 值,将stok值复制出来备用

3. 注入漏洞,开启 ssh 服务

在浏览器地址栏中输入以下链接,注意替换链接中的<STOK>部分,否则将没有效果:

如果你的网关不是192.168.31.1,请自行将链接中的IP地址替换为你的网关地址

1
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

不出意外的话 将会返回 {"code": 0}

如果出现以下情况:

返回401:固件版本可能不正确,或<STOK>值错误,或链接输入不完整

返回404:输入地址错误,检查固件版本或链接地址

注入后请等待一段时间,保证路由器处理完信息后再重启

重启后即可开启 ssh 服务

4. 更改 root 密码

同上一步骤,在浏览器访问以下链接,注意重新获取并替换链接中的<STOK>部分,以及检查网关地址,否则将没有效果:

1
http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20echo%20-e%20'admin%5Cnadmin'%20%7C%20passwd%20root%3B

访问成功后,ssh 的密码将被改为 admin

5. 登录 ssh

使用下载好的 MobaXterm 20.0 登录SSH会话页面

新建一个 ssh 会话,远程主机输入网关地址,选中“指定用户名”复选框,输入root

设置完成后打开会话,输入密码并回车即可

6. 刷入 breed

通过 ssh 连接到路由器后,在左边的资源管理器(SFTP)界面中前往目录 /tmp/ 中

将先下载好的 breed-mt7621-xiaomi-r3g.bin 上传至路由器的 /tmp/ 目录中

在 ssh 会话界面(终端)中复制以下命令并回车

1
mtd -r write /tmp/breed-mt7621-xiaomi-r3g.bin Bootloader

命令成功运行后等待路由器重启即可

(当电脑获取到IP地址 或路由器只有一个蓝灯亮时,breed 引导官方固件成功)

如果你接了 WAN 口 两个灯都会亮蓝灯 没有问题

7. 等待 5 分钟后进入 breedweb 界面

为防止变砖,强烈建议等待5分钟后拔电

用牙签插进 reset 孔中的按钮,按住按钮接电,等待蓝灯闪烁,松开 reset 键

浏览器访问 192.168.1.1 即可进入 breedweb 界面

用户名和密码都是 admin

只有通过上述方法才可以进入 breedweb 界面,正常启动路由器将自动引导至对应固件的系统

如果进不去请一定要确定你的网络连接里面的本地连接或无线网卡里面的IP和DNS是自动获取状态!(在自动获取状态下还进不去,就禁止下网卡然后再启用下)《网络连接(网络和共享中心)–鼠标右键属性–本地连接状态(无线网络连接状态)–属性–Internet协议版本4(TCP/IPv4))确保IP和DNS为自动获取状态,才能进入breedweb界面》。

如果重启路由器后进不去 breedweb,清除浏览器 cookie 和缓存后即可正常进入

8. 编辑环境变量

在 breedweb 界面中,从左侧菜单栏中点击 “环境变量编辑”,更改环境变量

新增字段:xiaomi.r3g.bootfw 值设置为:2,然后保存即可

9. 刷入固件

点击 breedweb 左侧菜单栏中的“固件更新”,勾选“固件”复选框,选择后缀为trx的固件文件上传

(自动重启选项将自动勾选,如果没有自动勾选,请手动勾选)

确认更新信息,点击“更新”,等待路由器重启即可

这个配图有问题,不过页面没问题

10. 进入路由器后台

固件默认配置:

固件网关:192.168.123.1

管理页面:http://my.router/

管理页面:http://192.168.123.1/

管理账号:admin

管理密码:admin

wifi密码:1234567890

刷机不恢复默认值,网关账号及密码都可以自己再设置的。

撒花

🎉 成功刷入固件,开始为自定义功能发烧吧~

PS: 不推荐 ac2100 的配置跑 clash,尤其是做主路由的情况下,而且这个固件在跑 clash 的时候会有很多报错,需要查看 log 手动修复

网速对比:

未刷固件:
5GHZ:
下载:347Mbps 上传:78.2Mbps
下载:338Mbps 上传:79.0Mbps
下载:356Mbps 上传:80.9Mbps

2.4GHZ:
下载:54.2Mbps 上传:62.4Mbps
下载:46.1Mbps 上传:47.8Mbps
下载:47.9Mbps 上传:75.1Mbps

已刷固件: