52

红米 AC2100 刷入 OpenWrt 固件

 3 years ago
source link: https://cyrusyip.org/post/2021/06/19/ac2100-openwrt/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

红米 AC2100 刷机的主要步骤:获取 SSH 访问权限、刷入 bootloader(Breed)、刷入固件。

  • 红米 AC2100
  • 牙签或卡针
  • 2 条网线1
  • 带网线插口的电脑(没有就买 USB 网口)
  1. AC 2100 WAN 口连接调制解调器或者原路由器 LAN 口,或者通过无线中继的方式联网
  2. AC2100 的 LAN 口连接电脑,全程都要保持网线连接
  3. 访问 192.168.31.1,配置网络,保证 AC2100 可以联网
  1. 下载 2.0.7 固件备用链接),接下来就利用这个固件的漏洞来刷机
  2. 在浏览器访问 192.168.31.1->常用设置->系统状态->手动升级->加载固件,保留数据->开始升级

获取 SSH 访问权限

  1. 访问 http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/web/home#router,输入密码登陆,登陆后记下网址里面 <STOK> 位置那串字符,例如 c8630022ae04sjf92af0ejd83e0330f1
  2. 把刚刚获取的 <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,然后访问,网页会显示 {"code":0}

修改 root 账户密码

  1. 访问 http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/web/home#router,记下 <STOK>
  2. <STOK> 填入 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,访问,此时密码设置为 admin
  3. 如果要设置其他密码就重复前两步,把网址的 admin 改为你想设置的密码,记下密码

刷入 Breed

Breed 是由 HackPascal 开发的 bootloader,有了它之后 AC2100 刷成砖也能再刷机。

  1. 打开终端程序,例如:Windows PowerShell

  2. 依次执行以下代码,一次一行,# 开头的不需要执行

    # 登陆 root 账户,输入 root 账户密码
    ssh [email protected]
    # 下载 Breed
    curl https://breed.hackpascal.net/breed-mt7621-xiaomi-r3g.bin --output  breed-mt7621-xiaomi-r3g.bin
    # 备用链接
    # curl https://cdn.jsdelivr.net/gh/CyrusYip/blog-static/other/breed-mt7621-xiaomi-r3g.bin --output  breed-mt7621-xiaomi-r3g.bin
    # 刷入 Breed
    mtd write /tmp/breed-mt7621-xiaomi-r3g.bin Bootloader
    # 重启
    reboot
    
  3. 等待重启,只有蓝灯常亮代表重启完毕

刷入临时固件

  1. 下载临时固件
  2. 拔下 AC2100 的电源,用牙签按住 Reset 键,插电,蓝色闪烁时松开
  3. 访问 192.168.1.1,增加环境变量,字段为 xiaomi.r3g.bootfw,值为 2,保存。不做这一步 AC2100 就无法启动了。
  4. 备份固件(可跳过)
  5. 固件更新->固件->选择文件->选刚刚下载的临时固件->勾选自动重启->上传->更新

刷入 OpenWrt

  1. 下载 OpenWrt 固件

    恩山论坛有很多 OpenWrt 固件选择一款合适自己的就行。我用的是这个,下载地址在这里,下载文件名含有 sysupgrade 的文件。自己编译也行。

  2. 重启完后访问 192.168.1.1,如果被占用了就拔掉 WAN 口的网线

  3. System -> Backup / Flash Firmware -> Flash image -> 取消勾选 Keep settings and retain the current configuration -> continue

  4. 访问 10.0.0.1,配置 AC2100

第一次给路由器刷机,一搞就是几个小时,天都亮了,太艰难了。一开始我是连着 WIFI 弄的,结果一直不行,后来才发现要接网线。网上有各种方法,有些方法要安装软件,看着就头疼啊。我觉得现在我这个方法还算简单,只需要终端和浏览器,这两个软件每台电脑都有。

看了那么多教程,我觉得 OpenWrt 网站的资料写的最清晰易懂。可以先从这里入手,不行再看其他教程。不过我没测试过这里面的所有内容,我也不知道是不是都有效。另外,这个帖子提到了 AC2100 有内存坏块可能导致无法刷机。


  1. 1 条网线从 LAN 口连接到电脑,另 1 条从 WAN 口连接到调制解调器(猫)。如果本来就有路由器的话,可以只用 1 条网线从 LAN 口连接到电脑,然后用无线中继的方式连接原有的 WI-FI。 ↩︎


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK