小米路由器刷入openwrt
可用于解决学校校园网设备限制的问题,一般校园网是只能链接两台设备,一台电脑,一台手机这样,但是刷入这个固件之后你就可以毫无限制的链接网络了。
先读我
刷入breed >>> 刷入openwrt >>> *编译对应的minieap插件 >>> 安装插件并进行配置 >>> 成功
-
本文面向「第一次刷机」的小白,所有命令均可直接复制。
-
全程 30-40 分钟,只要按顺序操作,几乎不会变砖。
-
需要一台 Windows 电脑 + 一根网线 + 小米 4C(R4CM)。
-
所有文件已做国内镜像,下载速度 5-10 MB/s。
软件准备(下载解压即可):
- R3GV2 patches:用于开启小米路由器4C的Telnet和FTP功能。
- Breed固件:用于刷入Breed以便后续刷入OpenWRT。
- OpenWRT固件:适用于小米路由器4C的OpenWRT固件。
- MobaXterm:用于Telnet登录路由器。
- WinSCP:用于通过FTP上传文件。
- PuTTY:用于SSH连接路由器。
开启 Telnet & 备份原厂数据
⚠️ 必须先用官方固件初始化一次,否则会失败。
-
首次开机配置
-
用 Wi-Fi 连接
Xiaomi_xxxx
,浏览器打开 http://miwifi.com -
设置管理员密码(务必记住),完成后重启一次。
-
-
运行 R3GV2 patches
-
解压
R3GV2_patches_v2.1.zip
到任意目录,右键管理员运行0.start_main.bat
-
按提示输入刚才的管理员密码,看到
Done
即成功。 -
此时路由器会重启,Wi-Fi 名称/密码不变。
-
-
备份 EEPROM
-
打开 MobaXterm → Session → Telnet → IP 填
192.168.31.1
→ 用户名root
→ 密码留空 → OK -
执行:
dd if=/dev/mtd3 of=/tmp/eeprom.bin
-
-
打开 WinSCP → 文件协议
FTP
→ 主机192.168.31.1
→ 用户名root
→ 密码空 → 登录 → 把/tmp/eeprom.bin
拖回电脑保存。 -
保存好 eeprom.bin,以后救砖必须用它。
刷入 Breed(不死 Bootloader)
-
上传 Breed 文件
-
在 WinSCP 里把
breed-mt7688-reset38.bin
重命名为breed.bin
,上传到/tmp
。
-
-
刷写 Breed
-
回到 MobaXterm Telnet,执行:
mtd write /tmp/breed.bin Bootloader
-
看到
Writing from /tmp/breed.bin to Bootloader...
后等待 3-5 秒,出现Rebooting
即成功。
-
-
进入 Breed 模式
-
拔电源 → 按住 Reset → 插电源 → 等指示灯蓝灯快闪 5 次后松手。
-
电脑用网线接路由器 LAN 口,设置网卡为自动获取 IP。
-
浏览器打开 http://192.168.1.1 → 看到 Breed Web 控制台,成功!
-
刷入 OpenWrt
通过 Breed 刷机(不推荐)
-
电脑临时开 HTTP 服务器
-
Win+R → 输入
cmd
→ 进入D:\mi4c
→ 执行:python -m http.server 8000
-
-
-
保持窗口不要关。
-
-
在 Breed 里下载固件
-
Breed → 固件更新 → 勾选
固件
→ 输入下载地址:http://192.168.1.2:8000/openwrt-ramips-mt76x8-xiaomi_mir4c-squashfs-sysupgrade.bin
-
点击「下载」,Breed 会显示进度(约 30 秒)。
-
-
刷写并设置启动参数
-
下载完成后,Breed 会提示内存地址,如
0x81000000
。 -
在 Breed 终端执行:
flash erase 0x160000 0xea0000 flash write 0x160000 0x81000000 0x4C013A
-
-
再设置启动参数:
boot flash 0x160000
-
路由器会自动重启,指示灯闪蓝 → 常蓝 → 熄灭 → 重新亮蓝,代表 OpenWrt 启动成功!
-
浏览器打开 http://192.168.1.1 → 出现 OpenWrt LuCI 登录界面。
推荐!
- 找到wrt的文件
- 将大小那里的字节数字转换为16进制:0x4C013A
此处借用breed内置的wget命令将本地的文件上传到路由器内存中:
通过“MobaXterm”连接路由器
先在存放openwrt.bin的目录下运行py -m http.server开启一个本地ftp服务器,一般默认端口为8000,然后通过浏览器打开breed同网段下的该ftp服务器,如http://192.168.1.2:8000 ;然后右键获取openwrt.bin的文件链接,wget [link]通过局域网下载本地文件。下载完成后注意看breed的提示,因为此时下载文件是存放在内存中的,需要记下存放的内存地址。
然后先通过flash erase 0x160000 0xea0000擦除需要写入的系统分区位置,再通过flash write 0x160000 src 0x4C013A刷入openwrt.bin文件,此处的src即为wget时存放openwrt.bin文件的内存起始地址。
刷写完毕后,由于breed的autoboot命令默认从0x60000加载kernel,所以我们需要额外添加参数指定其从0x160000开始加载kernel内核。执行boot flash 0x160000从0x160000加载内核。至此已经可以正常启动openwrt固件,进入openwrt系统了。
锐捷校园网认证(minieap)
上传并安装 minieap
-
SSH 连接 OpenWrt
-
MobaXterm → Session → SSH → IP
192.168.1.1
→ 用户名root
,首次登录无密码。 -
设置 root 密码:
passwd
-
-
上传 minieap 插件
-
WinSCP → SCP 协议 → IP
192.168.1.1
→ 用户root
→ 把minieap-mipsel24kec
传到/tmp
。
-
-
安装并配置
opkg update
opkg install /tmp/minieap-mipsel24kec.ipk
cp /etc/minieap/example.conf /etc/minieap/minieap.conf
vi /etc/minieap/minieap.conf
username=你的学号
password=你的密码
nic=eth0.2 # 校园网 VLAN 口
dhcp_type=1 # DHCP 自动获取
/etc/init.d/minieap enable
/etc/init.d/minieap start
Authentication success
即成功上网!常见问题(FAQ)
现象 | 解决 |
---|---|
刷 Breed 后无法进入 192.168.1.1 | 确认电脑 IP 是 192.168.1.x 网段,关 Wi-Fi 只留网线。 |
OpenWrt 刷完无限重启 | 重新进 Breed → 恢复出厂设置 → 重新刷固件。 |
校园网认证 30 分钟掉线 | 在 minieap.conf 加 heartbeat=30 参数。 |
想恢复官方固件 | Breed → 固件更新 → 选择官方固件 → 勾选「自动重启」。 |
参考与致谢
-
BBSD丿草丶帽的原始博客:https://blog.csdn.net/weixin_xxxx/article/details/xxxx
-
OpenWrt Wiki:https://openwrt.org/toh/xiaomi/mir4c
- 薯条港 : https://www.yuque.com/teacup418/friesport/ruijie-certificate#SoTWt