小米路由器4c刷入openwrt并成功进行锐捷认证
小米路由器4C 刷入openwrt 并成功进行锐捷认证
前言:
在大学中,宿舍有个路由器当然是刚需,然而,我们学校的校园网需要进行锐捷认证,常规的路由器还用不了,需要自己刷路由器或是从奸商处购买。初入大学学习计算机专业的我,年轻气盛,不愿屈服于奸商。曾尝试购买小米路由器4c并尝试自己刷,然后,就寄了。。
于是乎,我们宿舍用了隔壁宿舍Wi-Fi一年。
经过一年的学习,我又觉得自己行了,遂将差一个月过保的给自己刷寄的路由器返厂换货,拿到了一台全新的路由器,又开始了自己的折腾之旅。
大致过程
刷入breed >>> 刷入openwrt >>> *编译对应的minieap插件 >>> 安装插件并进行配置 >>> 成功
前期准备
当然是下载一堆东西。
- 一台 小米路由器4c
- R3GV2 patches 用于破解路由器使其可以与我们建立连接
- breed 刷入breed可以保证我们路由器不会成砖(救砖利器)
- 小米路由器4c 适用的 openwrt固件 (有很多版本可以去openwrt官网下载,故不放链接)
- minieap插件 用于锐捷认证,需要对应固件版本,可以自行编译
- 对应固件版本的sdk源码 (同样需要去openwrt官网下载用于编译minieap插件,已有对应版本的插件就不需要下载了)
- telnet软件 可以使用XShell、MobaXterm,去官网下载
1.刷入Breed
此步骤是为了方便后续出问题了可以救砖
刷入后,路由器断电,用牙签按住reset口,再插电,等指示灯黄灯和蓝灯同时闪4下后,即可进入breed模式
1.1 进入路由器官方后台,并进行路由器初始化
将路由器通电后,可在电脑Wi-Fi那看到一个xiaomi_xxxx(应该是叫这个)的无密码Wi-Fi。连上后,在浏览器输入:
miwifi.com 进入官方后台
进行初始化(跟着提示来就好,可以说是很傻瓜式了),主要目的是给它改个后台密码(一定要记住!!!)
1.2 开启路由器telnet与ftp功能
连接上Wi-Fi,解压R3GV2 patches,并运行其中的 0.start_main.bat 文件,在cmd窗口输入刚才记住的后台密码,等待出现Done提示便完成了。
注意:此操作是链接运行一个python文件,需要电脑本身有python环境,具体安装方法网上有很多详细的教程,此处不再赘述
1.3 使用telnet连接路由器,做备份与将breed固件放入路由器
使用前期准备的telnet软件,
- 类型:telnet
- 主机地址:192.168.31.1
- 用户名:root
- 密码:空
连接路由器,登陆成功后会有ARE U OK的提示。
1.3.1 备份eeprom
注意:此步骤很重要!!!我之前就因为备份失败,寄在了这。
在终端输入:
# 输入备份指令 备份路径为 /tmp/eeprom.bin
dd if=/dev/mtd3 of=/tmp/eeprom.bin
不知道为啥,本操作在小米路由器4c多次使用均不成功,建议使用网络上的64kb的备份文件。
1.3.2 进入FTP,下载eeprom备份与上传breed固件
这里直接使用Windows自带资源管理器的FTP功能即可。

输入:ftp://192.168.31.1 回车即可进入。
把之前下载的breed文件更名为breed.bin,然后放入/tmp文件夹中
同时,将该文件夹中的eeprom.bin 下载到本机电脑(直接复制或者拉出来就行了,记得保存到一个记得的路径下)。
(需要注意一下eeprom.bin的大小,一般是64kb的,如果小了很多说明有问题,需要重复一遍1.3.1操作)
1.4 刷入breed
在telnet连接的终端中输入:
# 其中 /tmp/breed.bin 为我们上传 breedin 的路径
mtd write /tmp/breed.bin Bootloader
刷完 Breed 之后,提示成功后,给路由器断电,然后按住reset口后通电,等待指示灯闪四下就进入breed了,重启完成后无法使用 WIFI 扫描到网络了,所以需要用网线连接电脑和路由器,在浏览器打开 192.168.1.1 就可以看见 Breed 界面了。
1.4.1 恢复eeprom
此处,我们刚刚备份的文件就派上用场了。
进入固件更新,勾选EEPROM,上传刚刚备份的eeprom.bin,然后更新。
2.刷入openwrt
由于官方的openwrt固件是基于官方的bootloader设计的(估计是这样),导致breed无法正确引导进入系统,如果使用官方的openwrt固件,会出现无限重启的情况,无法使用。估计的情况是闪存分区问题,breed的闪存启动区与官方bootloader不同,所以无法正确启动。
在这里,我们直接使用某大佬魔改编译的固件,可以breed直刷进入系统,省去繁琐的操作。
刷入官方openwrt固件的方法放在后面,可供选择。(真的麻烦很多)
使用魔改版openwrt,直接在breed的固件更新界面勾选固件,并上传相应的openwrt固件,勾选自动重启(一般会默认勾选的),点击更新。
等待路由器亮蓝灯后,即刷入成功。
在浏览器输入192.168.1.1 可以进入openwrt后台,默认密码为password

注意:若192.168.1.1 无反应,可能是默认的地址不是这个,可以进入网络适配中心查找

我这里是macOS的系统,Windows下也是类似,我的后台地址就是192.168.5.1
3.*编译对应的minieap插件
若有对应版本的minieap插件,则可跳过这一步
minieap是在openwrt上用于自动进行锐捷认证的插件(注意:这个只是让你的路由器有能够像电脑一样进行锐捷认证上网的插件,并不是说你装上了就不用交网费了,还是要交钱让学校那边提供网络给你的)
由于minieap需要严格对应路由器主控型号和openwrt版本,所以网上几乎找不到别人做好的(因为适用性很差),所以需要我们自行编译。
首先,我们需要一个Linux环境,可以使用服务器,或者安装虚拟机。(此处操作方法有很多,自行搜索教程,不再赘述)
3.1 下载对应的sdk
首先,我们需要知道自己路由器对应的主控芯片型号,直接百度一般都可以搜到。

比如此处小米路由器4c的主控型号是MT7628
然后我们还需要知道我们刷入的openwrt的版本,如果是在官网下载的固件,直接就有版本号,如果是别人魔改的固件,就需要自己想办法去找到版本号(有一些很难找到具体版本号,最后一个小版本很难确定)
如本次的工作,我们现在已知自己的设备主控型号和openwrt版本:
- 主控型号:MT7628
- openwrt版本:18.06-SNAPSHOT
接下来就是到官网下载对应的sdk源码

注意:需要下载对应主控型号和对应openwrt版本的sdk源码
3.2 在Linux环境下配置编译所需的环境
在编译之前,我们需要保证自己的Linux环境通网(涉及git的使用,需要用上那个)
以下指令均在Linux的shell中运行
- Git的安装:
$ sudo aptitude install git
$ sudo aptitude install git-doc git-svn git-email gitk
- 编译openwrt所需的环境的安装:
sudo apt-get install libncurses5-dev zlib1g-dev gawk flex patch git-core g++ subversion
可能会存在环境漏装的情况,具体可通过查看报错后排查缺失的环境
这里有一个大佬的错误情况总结,可以用作参考:csdn
3.3 解压sdk
我们知道,在官网下载的sdk是一个.tar.xz压缩包,需要解压后才可进行编译。
我们可以直接利用shell进行解压
cd <sdk所在文件夹> #到文件夹下
xz -d <xxxx.tar.xz> #先进行第一层解压
tar -xvf <xxxx.tar> #再进行第二层解压
#xxxx指的是sdk的文件名,两层解压的后缀是不同的,注意区分
3.4 下载minieap源码并利用其进行编译
- 我们先cd进入解压后的sdk目录下
cd <解压后sdk文件夹内>
- 使用git下载minieap源码(此处最好有那个)
git clone https://github.com/KumaTea/openwrt-minieap.git package/minieap
- 选择要编译的包
make menuconfig
如果没有报错,就会进入下面这个界面

使用方向键可以更改选中,回车确定
我们依次选择Network、选中minieap(按y键选中,选中后左边会显示[*])、选择Save、ok、Exit,再连选两次Exit退出。
- 开始编译
make package/minieap/compile V=s
- 保存插件
在编译完成后,我们可以在bin\package\aarch64_generic\base目录下找到minieap_0.93-1_aarch64_generic.ipk插件软件包,保存下来。
4.安装插件并进行配置
注意,此操作需要保证路由器和电脑在同一内网中,可以是有线也可以是无线
4.1 有两种安装方法:
使用web界面直接安装:
浏览器输入192.168.1.1(不一定是这个,同第2步)进入openwrt的web后台,然后进入系统->软件包->上传软件包上传安装即可。
使用opkg指令安装:
有一种情况可能发生,openwrt的web后台无法上传软件包,这时候我们就需要想办法把软件包上传到路由器中,并使用ssh连接路由器使用opkg指令安装。
- 上传软件包:
在Windows下可以使用WinScp软件(自行下载)连接路由器,其中ip地址同上后台地址,用户名为root。
若是在linux或macOS下,则需在shell中使用scp指令上传
cd <软件包所在目录下>
scp <软件包文件名> root@192.168.1.1:/tmp
- 安装插件:
先使用ssh连接路由器:
ssh root@192.168.1.1 #ip地址可能不同,具体看第2步,若无法成功进入,请查看最后面的*部分内容
opkg install <软件包在路由器中的路径> #安装软件
4.2 配置minieap
先使用ssh连接路由器:
ssh root@192.168.1.1 #ip地址可能不同,具体看第2步
输入命令配置minieap:
到这一步,需要将路由器LAN口接入学校的网口
minieap -u <学号> -p <密码> -n <网卡名> -b 2 --save --module rjv3
其中<网卡名>可以在openwrt的web后台中查看,样式为eth1类似(不一定是这样)
提示成功后,minieap认证成功,测试是否可以正常上网
4.3 设置minieap开机自启动
进入openwrt的web后台,系统->启动项->本地启动脚本
将上述的minieap的配置命令复制到脚本中并保存。
为保证路由器稳定,建议设置每天凌晨自动重启。
至此,如果顺利的话,那么恭喜你已经成功破解路由器锐捷认证,
以下是一些扩展话题
* openwrt配置Wi-Fi名和密码
浏览器输入192.168.1.1进入openwrt的web后台
网络->无线->无线概括中的SSID那一项->修改
在基本设置中,ESSID指的是Wi-Fi的名称
在无线安全中,可以设置密码
* 官方openwrt固件breed刷入无限重启的问题(一些想法,未求证)
由于官方openwrt固件是针对小米官方的bootloader设计的,但是我们通常为了保险起见,都是先刷入breed,再通过breed刷写固件。而官方openwrt固件可以说是并没有适配breed。
据网上资料,官方openwrt固件的分区是从0x160000开始,而breed的web刷机方法并不能选择这个起始位置,如果使用breed刷,是会刷入0x60000开始的分区内,虽然kernel可以启动,但是由于文件位置不同,kernel无法找到对应的文件系统,最终导致无限重启。
所以如果想要刷入官方的openwrt固件,我们需要在breed下手动将固件刷入0x160000的分区下,并且设置环境变量使breed可以在我们指定的位置进入kernel。
具体操作可以参考草帽哥的博客:草帽哥
*ssh连接出错
若出现以下错误:

需要先输入:
ssh-keygen -R <后台ip地址>
再重新连接。
小米路由器4c刷入openwrt并成功进行锐捷认证的更多相关文章
- OpenWRT TP_LINK703N 校园网 锐捷认证解决办法
OpenWRT TP_LINK703N 校园网 锐捷认证解决办法 一.准备的工具 1) SSH登录工具,推荐使用MobaXterm_Personal下载链接https://moba.en.s ...
- 小米路由器3-R3 刷固件
1.刷机前的路由器升级准备 1-1.首先进入路由器原声后台:miwifi.com 1-2.在右上角,点击系统升级.在系统版本下边选择手动升级,选择资源包里的:“miwifi_r3_all_55ac7_ ...
- 中大东校小米路由器mini实现inode上网,ipv6 wifi【中大】【东校】【inode】【ipv6】
还有不到4个月就要毕业了,前几天半夜没事捣鼓小米路由没想到竟然实现了wifi的ipv6. 正好又安利了同学一台小米路由mini,从刷机到inode到ipv6全搞了一遍. 这里将教程写出来,服务学弟妹. ...
- 极路由2(极贰)ROOT并刷了OpenWrt
绕过官方的ROOT 查了一下root教程, 如果还需要保留保修, 则需要自己想办法回退版本, 下载搜狐插件到sd卡, 找个linux系统修改sd卡上程序的执行权限, 然后才能开启ssh, 具体的方法可 ...
- wr720n v4 折腾笔记(二):刷入不死Uboot
0x01 前言 接着上节刷入Openwrt开始说起,此次开始刷入不死Uboot,刷入之后就可以在Uboot里面随便刷机,再也不怕成砖了. 固件附件地址: 下载地址1(还是之前一的包) flash文件地 ...
- 小米路由器3G R3G 刷入Breed和OpenWrt 20.02.2 的记录
小米 R3G 参数 Architecture: MIPS Vendor: Mediatek Bootloader: U-Boot System-On-Chip: MT7621 family CPU/S ...
- 小米路由器4a千兆版刷openwrt
现在网上搜小米路由器4a千兆版刷机的都是刷的padavan的,很少能找到openwrt的刷机教程. 首先刷openwrt系统的时候要先刷入引导程序breed,网上有一篇帖子写的很详细(https:// ...
- 小米路由器刷Xiaomi Mi WiFi Mini openwrt
Current Stable Release - OpenWrt 18.06.1,released on August, 18th 2018. there is also PandoraBox fir ...
- OpenWrt固件刷入后串口终端没有反应的问题
[路由器开发板硬件固件配置] MTK双频:MT7620a + MT7612e 内存:256 MB 闪存:16 MB 固件:MTK自带SDK中的OpenWrt固件(mtksdk-openwrt-2.6. ...
- 小米4c刷LineageOS
注意,本文仅限于小米4c,其他手机仅可参考步骤.如下rom,su,gapps包的下载都是小米4c的,深刷miflash也仅适用于小米手机.准备工作:请自行备份好手机内的个人资料. 电脑环境,usb驱动 ...
随机推荐
- 什么是ip协议二
前言 续前面一章. 正文 看下ip选项: 看一张图: 这个ip选项一般我们不用看,即使你去搞硬件,那么做c++或者c的人会告诉你填啥,按照他们设置即可. 那么ip是如何传输的呢? 先看这张图,这张图的 ...
- MRBS(Meeting Room Booking System)开源的会议室预订系统搭建使用
前一家公司所有的办公系统都是自己开发的,包括排班.工单.会议室预定等等,很方便. 目前所在的公司,每周部门例会找行政预订了会议室,但多次去都被人占了,很烦,于是网上找了一个评价不错的系统,python ...
- 构建RAG应用-day01: 词向量和向量数据库 文档预处理
词向量和向量数据库 词向量(Embeddings)是一种将非结构化数据,如单词.句子或者整个文档,转化为实数向量的技术. 词向量搜索和关键词搜索的比较 优势1:词向量可以语义搜索 比如百度搜索,使用的 ...
- git默认忽略文件名称大小写
0. 现象 当将文件名称test 修改为 Test时,git提交记录检测不到变化 1.原因 Git默认设置忽略文件名大小写是因为不同操作系统对文件名大小写的处理方式不同,为了避免在不同操作系统之间出现 ...
- 第二課:Mirth培養興趣之旅 ——由定時刷庫接口編程講起
1.准备工作 1.1 本机安装vs2019:(https://visualstudio.microsoft.com/zh-hans/) 1.2 本机安装win64的MariaDB 10.3.27版本数 ...
- 力扣23(java)-合并k个升序链表(困难)
题目: 给你一个链表数组,每个链表都已经按升序排列. 请你将所有链表合并到一个升序链表中,返回合并后的链表. 示例 1: 输入:lists = [[1,4,5],[1,3,4],[2,6]]输出:[1 ...
- 阿里云荣获可信云容器安全能力先进级认证, ACK/ACR为企业级安全护航
阿里云关注企业级用户的Kubernetes生产落地痛点,结合企业生产环境的大量实践,全面帮助企业真正落地云原生架构.安全侧问题,是众多大中型或金融领域企业的核心关注点. 端到端云原生安全架构 早在20 ...
- 如何发起 MQTT 亿级连接和千万消息吞吐性能测试
简介:MQTT 协议凭借简单易实现.支持 QoS.报文小等特点,占据了物联网协议的半壁江山. 作者:亦炎 随着 5G 时代的来临,万物互联的伟大构想正在成为现实.联网的物联网设备 在 2021 年已 ...
- OpenYurt 之 Yurthub 数据过滤框架解析
简介:OpenYurt 是业界首个非侵入的边缘计算云原生开源项目,通过边缘自治,云边协同,边缘单元化,边缘流量闭环等能力为用户提供云边一体化的使用体验.在 Openyurt 里边缘网络可以使用数据过滤 ...
- 从KPI到OKR,高阶产品人如何推动业务高速增长
简介: 不管是核心大目标,还是O(Objectives),或者北极星指标,奇妙等式等等,最后都需要核心组织协同方式来推动整个目标聚焦以及过程的落地. 作为产品经理人,相信很多人都遇到过以下的灵魂拷问: ...