小米路由器3潘多拉固件刷机教程

article/2025/9/13 21:02:05

小米路由器的官方固件优化不够好,很多人都出现限速、断流的现象。我之前也出现过限速的情况,最后没办法只能设置路由器定时重启。前几天突发奇想把定时重启关了,发现路由器居然连着好几天都没啥问题,我以为从此以后就能安心用了,可惜今天又出现了无法上网的情况。我实在是忍无可忍,遂寻找路由器的刷机办法。

小米路由器3刚出来的时候,由于闪存类型变为了NAND,导致很长时间都没有第三方刷机包出来。不过过了这么长时间,终于有了适配。本文参考了OpenWrt网站小米路由器3页面和MassMesh维基,如果英语好的话可以直接看原文。另外由于是外网的教程,所以用到的网盘等资源可能无法正常访问,请自备加速器。另外再说一下,本文讨论的是小米路由器3的刷机教程,注意别弄错了。由于涉及到终端linux命令,建议没有Linux使用经验的同学先去在虚拟机里练习一下基本命令,免得到时候手忙脚乱,命令输错了就麻烦了。最后注意一下,一旦获取了SSH权限乃至刷了机,就失去了保修资格,大家在刷机之前还是要好好考虑一下。

不过最后我想了一下,还是把资源上传到了百度网盘( 提取码: 3533)。文件夹点进去就能看到路由器刷机资源了,包含2.11.20降级包和潘多拉固件。潘多拉压缩包解压之后有几个文件夹,bootloader和firmware里面用最新的就可以了,stock文件夹用于刷回官方固件。

获取SSH权限

首先将路由器降级为2.11.20,降级包在此。降级方法很简单,在小米路由器管理界面中选择系统升级,手动上传ROM包即可。

降级系统

然后正常设置并登录路由器管理界面,注意地址栏路径的STOK,注意这个参数很重要,后面经常要用到。当然现在也不用着急把它记下来,这个参数每次登录路由器的时候都会变,你只要记下来这次登录的stok就行了。

stok参数

然后依次访问下面的URL,注意将替换为实际的字符串值。OLD_PASSWORD就是刚才设置路由器时候设置的密码,NEW_PASSWORD随便设,别忘了就行,新旧密码我都设置的8个1。这几步操作涉及到字符串复制和替换,很有可能出错,大家在执行的时候一定要注意。

* http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/api/xqnetwork/set_wifi_ap?ssid=Xiaomi&encryption=NONE&enctype=NONE&channel=1%3Bnvram%20set%20ssh%5Fen%3D1%3B%20nvram%20commit
* http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/api/xqnetwork/set_wifi_ap?ssid=Xiaomi&encryption=NONE&enctype=NONE&channel=1%3Bsed%20%2Di%20%22%3Ax%3AN%3As%2Fif%20%5C%5B%2E%2A%5C%3B%20then%5Cn%2E%2Areturn%200%5Cn%2E%2Afi%2F%23tb%2F%3Bb%20x%22%20%2Fetc%2Finit.d%2Fdropbear
* http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/api/xqnetwork/set_wifi_ap?ssid=Xiaomi&encryption=NONE&enctype=NONE&channel=1%3B%2Fetc%2Finit.d%2Fdropbear%20start* http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/api/xqsystem/set_name_password?oldPwd=<OLD_PASSWORD>&newPwd=<NEW_PASSWORD>

前三条命令比较安全,顺利的话应该返回{"msg":"未能连接到指定WiFi(Probe timeout)","code":1616},如果不是这个结果可以重来一遍,直到返回结果是这个为止。其实如果学过计算机的应该可以看出来,这大概算是利用了旧版固件的漏洞,直接在地址栏上附带参数进行渗透攻击。最后一条命令应该返回的结果是{"code":0}

这时候应该已经可以用SSH访问路由器了。然后需要一个可以SSH到Linux的软件,Windows 10的WSL、Git for Windows、MobaXterm等软件都可以。我这里用的是MobaXterm。然后用下面的命令SSH到路由器里面。SSH密码就是刚刚最后一条URL的NEW_PASSWORD。

ssh root@192.168.31.1

成功的话应该会显示出欢迎信息,并进入到了一个新终端。
进入路由器终端

成功进入到终端之后,依次输入下面的命令重新激活串口功能,最后用reboot命令重启路由器使之生效。建议一条一条复制。

nvram set flag_last_success=1
nvram set boot_wait=on
nvram set uart_en=1
nvram commit
reboot

刷入潘多拉固件

刷入bootloader

上面的步骤做完了之后,就可以刷入潘多拉固件了。固件下载地址在Mega网盘上,或者用我上传的百度网盘资源也行。下载并解压了潘多拉固件之后,在SSH软件中切进该目录,然后用scp命令将BootLoader复制到/tmp文件夹中。

scp pb-boot-xiaomi3-20181021-fd6329c.img root@192.168.31.1:/tmp

这里我改用了WSL,不过不管用啥SSH道理都一样,大家注意终端里的相对路径就行了。不懂这个的最好先去虚拟机里面建一个Linux练一练。
上传BootLoader

然后SSH登录到路由器上。

ssh root@192.168.31.1

然后依次执行以下命令。其实说白了就是切进/tmp目录把刚刚上传的固件刷到BootLoader里面去。刚刚scp上传的是哪个文件,这里刷的就是哪个文件。最后一条命令重启路由器,等到路由器再次启动,离大功告成也就差不多了。

cd /tmp
mtd write pb-boot-xiaomi3-20181021-fd6329c.img Bootloader
reboot

如果用ls命令看一下,可以发现/tmp里面东西还是挺多的。观察一下,固件上传成功就好。
/tmp目录文件

刷入固件

上面的命令执行完之后,路由器会重启,等待4-5分钟左右。这时候路由器应该一直处于黄灯状态。

然后拔掉电源线来关闭路由器,找根曲别针插到路由器后面的RESET按钮上,不要松开,然后插上线重启路由器,路由器通电后等1-2秒钟在松开RESET,这时候路由器应该会处于黄灯闪烁的状态。然后浏览器打开192.168.1.1,应该会看到潘多拉恢复模式。

潘多拉恢复固件

这时候就很好办了,点击浏览文件,选择PandoraBox Firmware里面的固件(形如*-sysupgrade.bin的文件),然后点击恢复固件。

选择固件文件

等待一段时间之后,就可以进入到路由器管理页面了,默认密码是admin。如此一来,潘多拉固件就成功刷入了!
潘多拉固件一览

刷回原厂固件

如果你觉得潘多拉固件不好用,还可以刷回原厂固件。原厂固件相关文件在Revert to Stock文件夹中。

  1. 首先进入潘多拉恢复模式,然后选择openwrt-ramips-mt7620-xiaomi_miwifi-r3-squashfs-pb-boot.bin文件并上传。
  2. 浏览器中登录192.168.1.1,不需要密码直接登录,然后在里面设置密码并开启SSH。
  3. 用scp命令将必要的文件(Bootloader.bin和kernel0.bin)传到/tmp目录中。
  4. 在SSH中执行以下命令。
cd /tmp
mtd write Bootloader.bin Bootloader
mtd write kernel0.bin kernel0_rsvd
reboot
  1. 等路由器重启之后,再次进入SSH,输入以下命令:
fw_setenv flag_try_sys2_failed 1
reboot
  1. 重启之后,路由器应该会显示为红灯闪烁状态,说明进入了恢复模式。然后准备一个FAT32格式的U盘,将miwifi.bin固件放入,然后插到路由器上。
  2. 按住RESET按钮1-2秒,直到红灯闪烁变为黄灯闪烁。
  3. 等待4-5分钟,然后登录192.168.31.1设置路由器。

潘多拉固件网络设置

我虽然是计算机专业的,学过计算机网络这门课程,不过也就是随便看看混过去的水平。不过就算我这样的,配置一般的路由器也是不在话下。因为这些路由器自带的固件设置一般都是简化过的。不过在配置潘多拉固件的时候真是难倒我了,我自己摸索了大半天也没弄明白。所以在我成功配置好后,我还是决定写点东西,免得有人和我一样弄不明白。

潘多拉固件里面功能也挺多的,如果遇到看不明白的选项,建议不要瞎改,让它保持默认即可。如果搞出问题了,按住RESET几秒钟,重置路由器,然后重头再来。另外我觉得潘多拉固件比较不方便的一点就是好像有些东西改了之后不会自动重启,需要我手动拔电源线。

另外在设置的时候也要明确自己的光猫和路由器作用,是光猫直连、路由器拨号,还是光猫拨号、路由器直连。我是路由器直连、光猫拨号的,所以理论上我只需要将路由器设置为DHCP,就直接有网了。但是由于光猫和路由器的默认IP都是192.168.1.1,导致了冲突,所以我这种情况需要将路由器IP改一下。

路由器IP设置

我这种情况需要修改一下路由器IP,如果你是路由器拨号,就不需要设置。在潘多拉固件里面找到接口设置,然后在LAN上点击修改。
接口设置

然后将IPv4地址修改即可。本来我改为了小米路由器的默认IP地址192.168.31.1,不过修改之后发现有线网络居然连不上了,只能用手机WIFI来修改。所以最后还是改成了192.168.1.2 。另外保存之后可能需要手动重启路由器。
修改IP

WAN设置

接下来就是WAN设置了,说简单点就是设置路由器拨号。可以看到还有一个WAN6,这是IPv6的设置,可惜我这里还没支持IPv6,所以也就不用管它了。直接点击WAN右边的修改按钮。
WAN设置

进入WAN设置之后,根据你的情况选择协议。如果是光猫里面设置好拨号,那么这里用DHCP客户端就可以了,只要保证IP地址不冲突即可。如果是路由器拨号,那么就在这里选择PPPoE。修改之后点击切换协议,网页就会刷新,然后输入相关信息即可。
图片.png

无线设置

潘多拉默认已经设置好了双频WIFI,不过默认WIFI没有密码,所以我们还得自己修改。

无线设置

以2.4G信道为例,点击右边的修改进入具体设置。基本设置里面可以修改WIFI名。
修改SSID

然后在无线安全里面设置密码,加密算法用安全性最高的WPA2-PSK,然后填写至少8位的WIFI密码,WPS模式有漏洞,禁用就好了,况且小米路由器3上面也没有WPS按键。
修改密码

5G信道的设置方法类似,就不介绍了。


http://chatgpt.dhexx.cn/article/9uKixFmK.shtml

相关文章

pandora固件运行c语言,潘多拉固件设置单线多播教程

由于小编手懒&#xff0c;就直接在网上找了教程&#xff0c;在这里转载过来。 1、进入路由管理界面后点击左侧的“接口”&#xff0c;选择“WAN”。 2、点击“协议”选项栏里的“DHCP客户端”改为“PPPoE”,点击“切换协议”。 3、在“PAP/CHAP用户名”输入你宽带的用户名&…

pandorabox 潘多拉固件路由器作为无线打印机服务器记录

为了省下无线打印机服务器的一两百元&#xff0c;我开始了路由器的折腾之旅 首先我想到了最熟悉老毛子固件&#xff0c;老毛子固件里确实有打印机选项&#xff0c;而且提供了下载print.exe的网址&#xff0c;我兴高采烈的下载下来&#xff0c;试用之后却发现极其不稳定&#xf…

async和await的作用

词法定义 async async 是“异步”的简写&#xff0c; async 用于申明一个异步的 function await await 可以认为是 async wait 的简写&#xff0c;await 用于等待一个异步方法执行完成。 特点&#xff1a; asayc的用法&#xff0c;它作为一个关键字放到函数前面&#xff0c…

Vue中async和await的使用

在使用vue中如果返回的值是一个Promise对象&#xff0c;那我们就可以用async和await简化这段代码 async是作为一个关键词放在函数的最前面&#xff0c;而await是放在async函数里面的&#xff0c;async表示这个函数是异步的&#xff0c;await是等待的意思&#xff0c;它的后面我…

async与await

1.基本概念:async await号称异步的终极解决方案&#xff0c;async await之后再无回调. 2.基本使用: async用于修饰一个函数, 表示一个函数是异步的. 如果async函数内没有await, 那么async没有意义的, 全是同步的内容. 只有遇到了await开始往下, 才是异步的开始. 我们用代码…

async/await 用法

目录 1、 async 函数1.1、例子&#xff1a;async函数不写返回值1.2、例子&#xff1a;async函数写了返回值&#xff0c;返回值为一般数据1.3、例子&#xff1a;async函数写了返回值&#xff0c;返回值为一个promise对象 2、await 函数2.1、例子&#xff1a;await 右侧表达式是p…

c# async/await的用法

转于&#xff1a;https://www.cnblogs.com/liqingwen/p/5831951.html 关键&#xff1a; 异步方法&#xff1a;在执行完成前立即返回调用方法&#xff0c;在调用方法继续执行的过程中完成任务。 async/await 结构可分成三部分&#xff1a; &#xff08;1&#xff09;调用方法&a…

async/await详解

&#x1f431;个人主页&#xff1a;不叫猫先生 &#x1f64b;‍♂️作者简介&#xff1a;专注于前端领域各种技术&#xff0c;热衷分享&#xff0c;期待你的关注。 &#x1f4ab;系列专栏&#xff1a;vue3从入门到精通 &#x1f4dd;个人签名&#xff1a;不破不立 &#x1f36c…

C# 中的Async 和 Await 的用法详解

1 众所周知C#提供Async和Await关键字来实现异步编程。在本文中&#xff0c;我们将共同探讨并介绍什么是Async 和 Await&#xff0c;以及如何在C#中使用Async 和 Await。 写在前面 自从C# 5.0时代引入async和await关键字后&#xff0c;异步编程就变得流行起来。尤其在现在的.NET…

async、await

词法定义 async async 是“异步”的简写&#xff0c; async 用于申明一个异步的 function await await 可以认为是 async wait 的简写&#xff0c;await 用于等待一个异步方法执行完成。 借检https://www.cnblogs.com/airen123/p/9543490.html 特点&#xff1a; asayc的用…

C# 彻底搞懂async/await

关键&#xff1a; 异步方法&#xff1a;在执行完成前立即返回调用方法&#xff0c;在调用方法继续执行的过程中完成任务。 async/await 结构可分成三部分&#xff1a; &#xff08;1&#xff09;调用方法&#xff1a;该方法调用异步方法&#xff0c;然后在异步方法执行其任务的…

async、await总结

一、async用法 async作为一个关键字放到函数前面&#xff0c;用于表示函数是一个异步函数。异步函数也就意味着该函数的执行不会阻塞后面代码的执行。 异步函数语法很简单&#xff0c;就是在函数前面加上async 关键字&#xff0c;来表示它是异步的。 那怎么调用呢&#xff1f;a…

async和await

async和await 概念 先从字面意思来理解。async 是“异步”的简写&#xff0c;而 await 可以认为是 async wait 的简写。所以应该很好理解 async 用于申明一个 function 是异步的&#xff0c;而 await 用于等待一个异步方法执行完成。 另外还有一个很有意思的语法规定&#xff0…

被说一知半解,await不懂你别乱用

文章目录 1.前言2.await是否阻塞主线程&#xff1f;3.await是否同步&#xff1f;4.总结 1.前言 这篇文章我是不想写的&#xff0c;因为之前已经写过了&#xff08;异步回调Async Await与Promise区别&#xff09;&#xff0c;此时此刻的心情是非常的不满&#xff0c;为什么呢&a…

async、await详解

一、async/await是什么&#xff1f; 简而言之&#xff0c; async用于申明一个function是异步的&#xff1b; 而await则可以认为是 async await的简写形式&#xff0c;是等待一个异步方法执行完成的。 二、async和await的基础使用 async/awiat的使用规则: async 表示这是一个a…

理解异步函数async和await的用法

定义 1. async 是异步的意思&#xff0c;await则可以理解为 async wait。所以可以理解async就是用来声明一个异步方法&#xff0c;而 await是用来等待异步方法执行 2. async作为一个关键字放在函数前面&#xff0c;表示该函数是一个异步函数&#xff0c;异步函数意味着该函数的…

(一)概述:NGS测序在病原微生物检测中的应用

❝ NGS 技术在临床上的应用逐步趋于成熟&#xff0c;从早期的肿瘤基因检测&#xff0c;到如今大热的微生物病原核酸检测&#xff0c;NGS 技术以其快速、准确和高分辨率的特点&#xff0c;发挥着无可替代的作用。 ❞ 微生物在地球上无处不在&#xff0c;从陆地到海洋&#xff0c…

肿瘤NGS测序公司生信工程师水平划分

生信工程师能力划分 1、大头兵&#xff08;1&#xff09;初级生信工程师工作职责任职要求 &#xff08;2&#xff09;中级生信工程师工作职责任职要求 &#xff08;3&#xff09;高级生信工程师工作职责任职要求 2、主管/经理职位描述任职要求 3、总监参考资料&#xff1a; 去年…

NGS数据分析实践:04. 准备测序数据

NGS数据分析实践&#xff1a;04. 准备测序数据 文接上篇&#xff1a;NGS数据分析实践&#xff1a;03. 涉及的常用数据格式[5] - vcf格式 本次NGS数据&#xff0c;采用多重PCR靶向扩增子测序技术&#xff0c;在Illunima Hiseq X Ten测序平台上进行双末端&#xff08;paired-end…

NGS_panel的CAP认证学习笔记

对于基因的定义总体可以划分为两类 GAD: Gene associated with Mendelian disorder; GADs include genes that meet criteria for definitive, strong, or moderate evidence for association with disease as described by ClinGenGUS: Gene of uncertain significance; GUSs …