青岛专业制作网站的公司吗,长沙官网网站建设,王也天演过的电视剧,国外免费的云服务器前言
小米路由器R3Gv2的硬件配置与小米路由器4A千兆版一致#xff0c;但bootloader有所不同#xff0c;因此openwrt的固件不要互刷。另外#xff0c;R3Gv2和R3G、4A百兆版是不同的设备#xff0c;切勿混淆。
硬件信息
OpenWrt参数页-Xiaomi MiWiFi 3G v2 CPU#xff1a…前言
小米路由器R3Gv2的硬件配置与小米路由器4A千兆版一致但bootloader有所不同因此openwrt的固件不要互刷。另外R3Gv2和R3G、4A百兆版是不同的设备切勿混淆。
硬件信息
OpenWrt参数页-Xiaomi MiWiFi 3G v2 CPU联发科 MediaTek MT7621A双核880MHz 闪存16MB 内存128MB 千兆WAN口1个 千兆LAN口2个 2.4G无线芯片MediaTek MT7603E 5G无线芯片MediaTek MT7612E USB无
需要准备的工具
下面的软件如果电脑上已经有相同功能的软件了可平替
安装 Python3用于执行特殊py脚本获取telnet权限。如果已安装了Anaconda就不用重复安装python了。使用 pip 安装 requests 包pip install requests安装 Xampp用于搭建Http服务器存放并上传固件文件。安装 putty用于telnet、ssh客户端使用。安装 WinSCP用于FTP客户端。下载 OpenWRTInvasion 脚本整个Source Code全下载。下载 breed 固件breed-mt7621-pbr-m1。下载 OpenWrt 固件当前版本 23.05.4openwrt-23.05.4-mirouter-3gv2
正式步骤
路由器接好lan口网线连电脑登录路由器完成初始设置设置好管理员密码、wifi密码将下载好的 OpenWRTInvasion 解压使用文本编辑器打开 remote_command_execution_vulnerability.py 文件这里需要改动几处代码。 如图所示跳过对windows的检测根据原作者描述windows上使用有时会出问题所以对windows加了判断检测windows直接退出。但是脚本代码中并没有什么平台相关的特殊操作我测试在windows上是可以运行的Win11 23H2。router_ip_address强制使用 192.168.31.1防止 miwifi.com 域名解析错误。 在此目录中右击在终端中打开或者命令行中 cd 进入此目录 执行 python remote_command_execution_vulnerability.py根据提示输入路由器ip默认192.168.31.1没变化直接回车然后脚本会尝试获取STOK提示输入管理员密码。如果脚本获取失败则需手动登录网页获取URL中的STOK输入到脚本中。 提示 Which option do you prefer 时选默认直接回车就行。 脚本执行结束后此时路由器就已经开启了 telnet 和 ftp 了使用 putty 登录 192.168.31.1协议选 telnet登录用户名和密码都是 root。 执行cat /proc/mtd查看分区情况
cat /proc/mtd
dev: size erasesize name
mtd0: 01000000 00010000 ALL
mtd1: 00030000 00010000 Bootloader
mtd2: 00010000 00010000 Config
mtd3: 00010000 00010000 Bdata
mtd4: 00010000 00010000 Factory
mtd5: 00010000 00010000 crash
mtd6: 00010000 00010000 cfg_bak
mtd7: 00100000 00010000 overlay
mtd8: 00d00000 00010000 OS1
mtd9: 00b30000 00010000 rootfs
mtd10: 00180000 00010000 disk备份mtd分区文件。 然后使用WinSCP或其他FTP工具将备份文件拷贝至本地电脑。步骤略
cd /tmp
mkdir backupB9AD
cd backupB9AD
dd if/dev/mtd0 of/tmp/backupB9AD/mtd0-ALL.bin
dd if/dev/mtd1 of/tmp/backupB9AD/mtd1-Bootloader.bin
dd if/dev/mtd2 of/tmp/backupB9AD/mtd2-Config.bin
dd if/dev/mtd3 of/tmp/backupB9AD/mtd3-Bdata.bin
dd if/dev/mtd4 of/tmp/backupB9AD/mtd4-Factory.bin
dd if/dev/mtd5 of/tmp/backupB9AD/mtd5-crash.bin
dd if/dev/mtd6 of/tmp/backupB9AD/mtd6-cfg_bak.bin
dd if/dev/mtd7 of/tmp/backupB9AD/mtd7-overlay.bin
dd if/dev/mtd8 of/tmp/backupB9AD/mtd8-OS1.bin
dd if/dev/mtd9 of/tmp/backupB9AD/mtd9-rootfs.bin
dd if/dev/mtd10 of/tmp/backupB9AD/mtd10-disk.bin使用WinSCP或其他FTP工具将下载好的 breed-mt7621-pbr-m1.bin 上传至路由器 /tmp 目录下。 刷入 breedmtd -r write /tmp/breed-mt7621-pbr-m1.bin Bootloader breed刷入完成后会自动重启进入breed刷机模式浏览器访问192.168.1.1即可进入breed web页面。如果没能进入断开路由器电源按住Reset不放插上电源当看到路由器的部分或全部LED连闪4次大约等待5-8秒松开Reset浏览器重新访问192.168.1.1。电脑IP需设置为自动获取DHCP 然后在固件备份中备份 编程器固件 以及 EEPROM 在breed的web页面启用环境变量然后添加一个环境变量变量名autoboot.command值boot flash 0x180000重启 breed 。 官方原版的openwrt固件中firmware地址在0x180000由于breed的web界面上没有对应的闪存布局可以选所以刷入Openwrt时只能命令行手动刷入。breed后台关于文件传输能用的命令只有 wget所以需要准备一个 http 服务器打开 xampp 控制面板启用 Apache。 将下载好的 openwrt 固件复制到Xampp的htdocs目录并改个短点名字。例如 D:\MyTools\Xampp\htdocs\me\op-r3gv2.bin。 使用 putty 登录 192.168.1.1协议选 telnet进入 breed 后台然后输入命令 wget http://192.168.1.2/me/op-r3gv2.bin下载固件到路由器。 下载完成后会有提示信息
wget http://192.168.1.2/me/op-r3gv2.bin
Length: 6554243/0x640283 (6MB) [application/octet-stream]
Saving to address 0x80001000然后手动擦除一块闪存区域。
flash erase 0x180000 0x800000
# 含义为从0x180000的地址开始擦除大小为0x800000的内存区域擦除的区域大小必须大于固件的大小。复制固件到指定位置
flash write 0x180000 0x80001000 0x640283
#从0x180000这个地址写入保存在0x80001000的数据写入的大小为 0x640283打开breed的web页面固件刷入刷入步骤6中备份的EEPROM文件。刷入完成后重启即可。
参考链接
小米路由器4A千兆版 折腾记录 完美刷入官方openwrt 2022-08-09更新 终于解决了breed刷机后不能正常启动的问题 小米路由器4A千兆版刷openWRT保姆级教程