当前位置: 首页 > news >正文

小米 R3G 路由器刷机教程(Pandavan)

小米 R3G 路由器刷机教程(Pandavan)

一、前言

小米 R3G 路由器以其高性价比和稳定的性能备受用户青睐。然而,原厂固件的功能相对有限,难以满足高级用户的个性化需求。刷机不仅可以解锁路由器的潜能,还能通过第三方固件实现更丰富的功能,如 DNS 解析、KMS 服务器、USB 管理等。Pandavan 固件基于俄罗斯大佬提取自华硕路由器的固件开发,以其稳定性和功能性著称,俗称为老毛子是小米 R3G 路由器的理想选择。

本文旨在为小米 R3G 路由器用户提供详细的刷机教程,同时也作为个人的一个过程记录,涵盖从准备工作到固件刷入的全过程。本文将使用 OpenWRTInvasion 工具开启路由器的 telnet 功能,刷入 Breed 引导程序,并最终安装 Pandavan 固件。刷机完成后,用户将获得更高的自由度,能够根据自身需求自定义路由器功能。

二、准备

  1. 路由器升级固件:miwifi_r3g_firmware_12f97_2.25.124.bin

  2. Pandavan 固件(R3G 纯净版):MI-R3G_3.4.3.9-099_纯净版

  3. windows 在控制面板中打开程序,找到其中的启用或关闭 Windows 功能,勾选启用 telnet ,方便在 powershell 中使用 telnet.

  4. 安装 MobaXterm.

  5. 恢复出厂设置,并使用路由模式(是否连接互联网均可,区别在于路由器断网情况下需要本地上传已准备的 breed 文件)。

  6. 设置一个简单的管理密码,比如 12345678.

  7. 使用 PC 连接小米路由器(无线或者有线都可以,只要在小米路由器的网段下即可)。

  8. 安装 Python 3(记得添加至环境变量中Add to ... PATH).

  9. 至 Github 项目 OpenWRTInvasion 下载项目文件,并解压。

三、着手刷机

1、PC 环境安装依赖

进入解压的 OpenWRTInvasion 文件夹中,在上方的地址栏输入 powershell, 将会弹出 powershell 命令行窗口,在命令行中输入命令:

pip install requests

提示成功安装模块。

2、运行刷机脚本开启 telnet

在刚刚的 powershell 命令行窗口中继续输入以下命令:

python remote_command_execution_vulnerability.py

开启运行刷机脚本。

这时会弹出询问:Router IP address [press enter for using the default 'miwifi.com']:

接下来输入小米路由器的地址,默认为:192.168.31.1.

此时提示 Enter router admin password: 输入路由器的后台管理密码:12345678.

接下来将会弹出提示以下内容:

There two options to provide the files needed for invasion:1. Use a local TCP file server runing on random port to provide files in local directory `script_tools`.2. Download needed files from remote github repository. (choose this option only if github is accessable inside router device.)
Which option do you prefer? (default: 1)

询问你是使用(1)本地刷机还是(2)联网刷机。一般默认使用本地刷机,由于网络环境问题,联网刷机往往会失败。

telnet 刷机脚本使用示意图

于是输入 1 并回车即可,等待自动刷机完成。

telnet 刷机脚本完成示意图

3、telnet 连接路由器

在 powershell 中继续输入命令:

telnet 192.168.31.1

提示输入账号密码,默认为:

账号:root
密码:root

输入如下图所示,成功连接。

telnet 成功连接小米路由器示意图

4、备份 eeprom

使用 powershell 的 telnet 成功测试能够连接上小米路由器后,可以使用 MobaXterm 的 ssh 连接路由器,方便将备份的 eeprom 下载至本地。

MobaXterm 使用 ssh 连接

在窗口中输入命令:

dd if=/dev/mtd3 of=/tmp/eeprom.bin

备份 eeprom:

备份 eeprom

继续在窗口中输入:cd /tmp 跳转至 tmp 目录,在右侧目录中找到 eeprom.bin 这个文件,下载至本地,完成备份 eeprom.

下载 eeprom 文件至本地完成备份

5、获取 breed

若路由器连接互联网,则可以直接使用命令:

cd /tmp && wget  http://121.5.163.108/download/breed-mt7621-xiaomi-r3g.bin && mv breed-mt7621-xiaomi-r3g.bin breed.bin

若是路由器未连接路由器,则可以先在下载器中使用链接 http://121.5.163.108/download/breed-mt7621-xiaomi-r3g.bin 创建下载任务。然后使用 MobaXterm 上传至路由器 tmp 目录中,并使用命令 mv breed-mt7621-xiaomi-r3g.bin breed.bin 重命名 breed 文件。若不方便下载 breed 文件,可以使用该链接中的文件:breed-mt7621-xiaomi-r3g

6、刷入 breed

在 ssh 窗口中输入命令:

mtd write breed.bin Bootloader

开始刷入 breed.

刷入 breed

关于其他机型的 breed 文件及命令如下所示:

# 小米4A千兆版
cd /tmp && wget  http://121.5.163.108/download/breed-mt7621-pbr-m1.bin && mv breed-mt7621-pbr-m1.bin breed.bin# 小米3G 和 小米4
cd /tmp && wget  http://121.5.163.108/download/breed-mt7621-xiaomi-r3g.bin && mv breed-mt7621-xiaomi-r3g.bin breed.bin# 小米3A,3C,4A百兆版,4C
cd /tmp && wget  http://121.5.163.108/download/breed-mt7688-reset38.bin && mv breed-mt7688-reset38.bin breed.bin

7、breed 备份

断开路由器的电源,按住 RESET 重置键,插入电源,等待 3 秒左右松开按键进入 breed 控制台模式。

此时,在浏览器中输入 192.168.1.1 访问控制台。

breed 控制台

点击固件备份,将所有文件都下载到本地备份:

breed 备份

更新并重启,完成刷入 eeprom

8、breed 恢复出厂设置

选择恢复出厂设置,固件类型选择原厂(小米R3G原厂),点击执行。

breed 恢复出厂设置

9、breed 刷入 Pandavan 固件

在固件更新中上传固件,并选择自动重启,刷入 Pandavan 固件。

刷入 Pandavan 固件

10、进入 Pandavan 后台进行双清

浏览器中进入该固件默认管理后台页面: 192.168.2.1.

账号:admin
密码:admin

进入 系统管理 选择 配置管理 依次选择路由器设置和路由器内部存储的 恢复出厂模式

Pandavan 双清

至此完成刷机!

四、参考

  1. 米3G 3a 3c 4c 4a百兆千兆版本等开启telnet刷breed

相关文章:

小米 R3G 路由器刷机教程(Pandavan)

小米 R3G 路由器刷机教程(Pandavan) 一、前言 小米 R3G 路由器以其高性价比和稳定的性能备受用户青睐。然而,原厂固件的功能相对有限,难以满足高级用户的个性化需求。刷机不仅可以解锁路由器的潜能,还能通过第三方固…...

某大型业务系统技术栈介绍【应对面试】

微服务架构【图】 微服务架构【概念】 微服务架构,是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。在微服务架构中,服务与服务之间通信时,通常是…...

【区块链】零知识证明基础概念详解

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 零知识证明基础概念详解引言1. 零知识证明的定义与特性1.1 基本定义1.2 三个核心…...

建筑行业安全技能竞赛流程方案

一、比赛时间: 6月23日8:30分准时到场;9:00-10:00理论考试;10:10-12:00现场隐患答疑;12:00-13:30午餐;下午13:30-15:30现场…...

数据结构:图;邻接矩阵和邻接表

邻接矩阵: 1.概念: 邻接矩阵是图的存储结构之一,通过二维数组表示顶点间的连接关系。 2.具体例子 : 一.无向图邻接矩阵示例: 示例图(顶点:A、B、C,边:A-B、B-C&…...

DeepSeek-R1论文阅读及蒸馏模型部署

DeepSeek-R1论文阅读及蒸馏模型部署 文章目录 DeepSeek-R1论文阅读及蒸馏模型部署摘要Abstract一、DeepSeek-R1论文1. 论文摘要2. 引言3. DeepSeek-R1-Zero的方法3.1 强化学习算法3.2 奖励建模3.3 训练模版3.4 DeepSeek-R1-Zero的性能、自进化过程和顿悟时刻 4. DeepSeek-R1&am…...

OpenEuler学习笔记(三十三):在 OpenEuler 上搭建 OpenGauss 数据库环境

在 OpenEuler 上搭建 OpenGauss 数据库环境需要按照以下步骤进行。OpenGauss 是华为开源的一款高性能关系型数据库,支持高并发、高可用性和分布式部署。 1. 环境准备 确保你的 OpenEuler 系统满足以下要求: 操作系统:OpenEuler 20.03 LTS 或…...

[C++]多态详解

目录 一、多态的概念 二、静态的多态 三、动态的多态 3.1多态的定义 3.2虚函数 四、虚函数的重写(覆盖) 4.1虚函数 4.2三同 4.3两种特殊情况 (1)协变 (2)析构函数的重写 五、C11中的final和over…...

调用DeepSeek API接口:实现智能数据挖掘与分析

调用DeepSeek API接口:实现智能数据挖掘与分析 在当今数据驱动的时代,企业和开发者越来越依赖高效的数据挖掘与分析工具来获取有价值的洞察。DeepSeek作为一款先进的智能数据挖掘平台,提供了强大的API接口,帮助用户轻松集成其功能到自己的应用中。本文将详细介绍如何调用D…...

ffmpeg-cli-wrapper操作ffmpeg的工具

学习链接 ffmpeg-cli-wrapper - 内部封装了操作ffmpeg命令的java类库,它提供了一些类和方法,可以方便地构建和执行 ffmpeg 命令,而不需要直接操作字符串或进程。并且支持异步执行和进度监听 springboot-ffmpeg-m3u8-convertor - gitee代码 …...

【Qt】QObject类的主要功能

在 Qt 中,QObject 类是所有 Qt 对象的基类,提供了许多基础功能,使得 Qt 的对象系统能够有效地工作。它为其他类提供了核心的机制,比如信号和槽机制、对象树结构、内存管理等。 QObject 类的主要功能: 信号和槽机制&am…...

学习笔记之debian的thonny开发(尚未验证)--从stm32裸机到linux嵌入式系统

这应该算 stm32裸机用户 转 linux嵌入式系统 的入门学习笔记。 【鲁班猫】39-vnc远程桌面连接鲁班猫_哔哩哔哩_bilibili 本集的鲁班猫的视频介绍中,没有清晰明确指出需要linux开发板接入网络,接入网络可以使用有线网口或者wifi路由,有些提示…...

把 CSV 文件摄入到 Elasticsearch 中 - CSVES

在我们之前的很多文章里,我有讲到这个话题。在今天的文章中,我们就提重谈。我们使用一种新的方法来实现。这是一个基于 golang 的开源项目。项目的源码在 https://github.com/githubesson/csves/。由于这个原始的代码并不支持 basic security 及带有安全…...

PyQt组态软件 拖拽设计界面测试

PyQt组态软件测试 最近在研究PyQt,尝试写个拖拽设计界面的组态软件,目前实现的功能如下: 支持拖入控件,鼠标拖动控件位置 拖动控件边缘修改控件大小支持属性编辑器,修改当前选中控件的属性 拖动框选控件,点选控件 控…...

【Python爬虫(1)】专栏开篇:夯实Python基础

【Python爬虫】专栏简介:本专栏是 Python 爬虫领域的集大成之作,共 100 章节。从 Python 基础语法、爬虫入门知识讲起,深入探讨反爬虫、多线程、分布式等进阶技术。以大量实例为支撑,覆盖网页、图片、音频等各类数据爬取&#xff…...

Java中的分布式(概念说明)

1. 分布式的基本概念 1.1 什么是分布式系统? 分布式系统(Distributed System):由多台服务器(或节点)协同工作,对外提供一个整体服务。不同节点之间通过网络通信来协同处理请求或共享数据&…...

Field ‘id‘ doesn‘t have a default value

1.程序测试时,运行到向数据库插入数据时,报以下异常 是id没有默认值; 在测试单元内单独向该数据库插入数据,报同样的异常,确定了异常的定位 2.项目时采用mybatisPlus操作数据库,报异常的数据库和另外一个数据库关联,主键ID和另外一个数据库相同,通过读取另外一个数据库的ID获…...

蓝桥杯 Java B 组之栈的应用(括号匹配、表达式求值)

一、栈的基本概念 栈(Stack)是一种特殊的线性数据结构,遵循后进先出(Last In First Out,LIFO)的原则。就像一摞盘子,最后放上去的盘子总是最先被拿走。栈有两个主要操作: 入栈&…...

Hive之分区表

Hive之分区表 文章目录 Hive之分区表写在前面分区表分区表基本操作引入分区表创建分区表语法加载数据到分区表中查询分区表中数据增加分区删除分区查看分区表有多少分区查看分区表结构 二级分区正常的加载数据分区表和数据产生关联 动态分区开启动态分区参数设置案例实操 写在前…...

Redis之持久化

1.前言 Redis⽀持RDB和AOF两种持久化机制,持久化功能有效地避免因进程退出造成数据丢失问题, 当下次重启时利⽤之前持久化的⽂件即可实现数据恢复。本文内容: • 介绍RDB、AOF的配置和运⾏流程,以及控制持久化的命令,…...

【Linux】shell脚本忽略错误继续执行

在 shell 脚本中,可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行,可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令,并忽略错误 rm somefile…...

大话软工笔记—需求分析概述

需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...

STM32+rt-thread判断是否联网

一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...

JVM垃圾回收机制全解析

Java虚拟机(JVM)中的垃圾收集器(Garbage Collector,简称GC)是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象,从而释放内存空间,避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes&#xff0…...

ServerTrust 并非唯一

NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...

TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案

一、TRS收益互换的本质与业务逻辑 (一)概念解析 TRS(Total Return Swap)收益互换是一种金融衍生工具,指交易双方约定在未来一定期限内,基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...

(转)什么是DockerCompose?它有什么作用?

一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器。 Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...

鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南

1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发,使用DevEco Studio作为开发工具,采用Java语言实现,包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...