恩山无线论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 37831|回复: 86

【更新】大麦DW22D不拆机刷breed和padavan

    [复制链接]
发表于 2018-4-5 11:51 | 显示全部楼层 |阅读模式
本帖最后由 keke1023 于 2018-5-29 20:11 编辑

本着研究的精神,我又专门去收了两台203回来尝试了用这个方式刷breed,毫无问题…所以不清楚评论里说是失败的朋友做了什么操作,希望大家多注意吧~我测试下来十几台没有任何问题,倒是遇到一个,进了breed后刷padavan无限重启,后来证明是5V1A的电源问题,换成5V2A即可

经过坛友以及自己的多次测试,目前发现的问题是,除了dw22d外,与它配置基本相同的其他大麦型号(好像是202,203)貌似不能用这个方式,会变砖,而dw22d也推荐先刷breed(某些版本的原始固件直接刷系统也会变砖),而我亲自刷了七台dw22d的breed都没有发现问题,另外两个相近型号等我正好有设备了会测试一下再找出适合的办法

估计是最后一次更新了,已经把步骤简化到两步,且不需要putty或者winscp。。相信不会再有朋友学不会了

1.打开http://192.168.10.1/upgrade.html
2.在升级里上传你要刷的固件,并且改个容易拼写的名字比如 fw.bin (openwrt系统)或者 fw.trx (padavan系统),密码处填写 password | mtd -x mIp2osnRG3qZGdIlQPh1 -r write /tmp/fw.trx firmware

然后等个两分钟机子刷好了会自动重启,中间什么也不用做,重启后就已经是你要刷的系统了
唯一要注意的就是固件的名字(比如fw.trx)和最后在密码栏输入的指令里/tmp/后面的名字要一样
想刷breed就上传breed.bin然后把密码那一栏最后改成/tmp/breed.bin Bootloader即可
接下来还想研究一下看能不能在常规的原版系统里实现,如果实现了会再次更新

【2018-04-07】
更新一下,受坛友ysc3839的提醒,我也去看了/lib/upgrade/common.sh,发现了正常使用mtd无法生效的原因,在升级的流程走到最后发现指令跟普通的openwrt不一样之处在于它的是“mtd -x mIp2osnRG3qZGdIlQPh1 write ”,也就是这个-x mIp2osnRG3qZGdIlQPh1相当于使用mtd的密码,我查看了两个不同的编程器固件,发现这串值是一样的,所以这个指令应该通用,开启ssh后直接用mtd来升级固件或者breed都是可以的,此方法已经亲测成功

顺便验证自己关于在原始固件的工程后台直接更新固件的想法,我又去解开原始固件的包查看了一下/ezwrt/bin/文件夹里的内容,发现工程后台的脚本就是local_upgrade.sh
它的逻辑就是,将你输入的密码用md5sum处理然后跟upgrade_passwd文件里的md5值比较,这也就是之前开ssh时第一条指令的目的,通过注入改变upgrade_passwd里的值为我们自己设定的
(这里有个坑就是计算这个md5不能在线计算,不然总是不对,我是在另一台路由器里通过echo “paswword” | md5sum计算得出的,所以此处也可以换成自己想要的密码,后面的rsa秘钥同理)
然后直接在工程后台升级固件也是没有问题的,它的校验方式是首先看是否是tgz格式的压缩包,其次将其解包,通过对解包后的*.bin文件做md5sum来和解包后的*.txt里记载的md5值进行对比,
原来这个md5值是自己指定的,那么就简单了,把padavan的.trx文件改后缀名为.bin,然后计算md5值写在md5.txt文件里,再将两个文件一起打包(Windows下用7zip先打成tar,再打gzip即可),
然后通过工程后台直接上传,密码填自己计算注入的值(看打开ssh那篇帖子的留言,有朋友的工程后台是没有打开ssh选项的,可能可以通过这种办法直接升级不打开ssh,注入密码也可以在升级固件那里进行,每次上传一个不同名称的小文件即可,这些文件都会存到/tmp文件夹里)可以直接升级成padavan,不需要打开ssh,此方法已经亲测成功

【2018-04-05】
大麦DW22D之前我也只尝试过TTL(失败,无法中断启动)和编程器,一向以为没法不拆机刷
昨晚搜到了坛友dfc643发布的开启ssh的方法,尝试了一下开启成功(是从工程后台页面进行注入),但是问题来了
ssh登进去后,发现常用的mtd指令并没有生效,应该是固件对它进行了限制,所以只能另寻他路
我首先尝试了在工程后台直接上传padavan固件,第一次提示格式不对,因为页面上说要tgz压缩包,我直接上传了trx
第二次我压缩成tgz后上传,提示是md5不符,应该是有对固件合法性的校验(今天写的时候也想到,是不是能替换掉校验的md5值)
直接说上传行不通,就又换个思路,在ssh里打开openwrt自己的uhttpd进程,从https页面进到标准的openwrt管理页面
这时候就可以从ssh里用passwd更改个root密码,直接登进管理页面去升级固件为padavan,再从padavan里刷breed
下来就是整个的完整流程,在此感谢dfc643的开启ssh方法,原帖地址:https://www.right.com.cn/forum/thread-258052-1-1.html
1. 打开 http://192.168.10.1/upgrade.html
2. 开启 ssh 选:【开】,密码输入这个【最后面有一个空格】
123 | echo 6c216b27c8c9b051106c969e2077d4e9 > /ezwrt/bin/upgrade_passwd
3. 点确定,然后提示密码错误没关系
4. 再次打开 http://192.168.10.1/upgrade.html
5. 开启 ssh 选:【开】,密码输入这个【最后面有一个空格】
123 | echo ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEA2tA3frFlnGsWmZeJMQuTzELWSplJN27FwXvVjan70bxnWSUvbGNV2rWD3zZo9jKoW5XmnZm46XCanWae8+LdIAk2HMG+IscjBCjfQBSHet0j2ODOt/WWOyMB67p5HGpa63kaWi4uT+ikB+xhNLRFOAxkHpnOpdnhFdU05mJ2GucEO3WEXeXnOaktJcFTcETC2VwbRPIzClsY9hero+3wNQS5CC0fU9r3J+XHqB+j8U/4wgIBBu5sflrwSofpS+g9a4vt+qJrqeXgDtz3SjxLUN2i5K6B0AxjxnC+R6a3+rtPPA3XEafaw7G58NjfnKOCu1A82gc3PhtdH60yzIPMGQ== dm > /etc/dropbear/authorized_keys
6. 点确定,然后提示密码错误没关系
7. 再次打开 http://192.168.10.1/upgrade.html
8. 开启 ssh 选 【开】,密码填写【dfc643】,点确定
9. 看到 start ssh success 即可
10. 然后用 ssh 软件连接如 putty,记得载入私钥(请去原帖地址下载),用户名是 root

-----------------------------以上就是打开ssh的方法,之后就是我尝试的刷机-----------------------------

11. ssh登入后,用passwd指令更换root密码
12. mtd被锁,所以无法直接刷机,通过打开openwrt的管理界面来刷机,使用指令/etc/init.d/uhttpd enable && /etc/init.d/uhttpd start
13. 访问https://192.168.10.1,root的密码是刚才设置的,注意是https
14. 在openwrt标准系统中刷padavan,我用的是ji2的固件,双频带usb,但是复位键无效
15. 重启后ssh登录192.168.123.1,用户名admin密码admin
16. 使用wget从本地web服务器下载breed到/tmp文件夹,然后mtd_write -r write /tmp/breed-mt7620-reset13.bin Bootloader即可刷入breed

ssh-http.jpg dw22d-web.jpg



评分

参与人数 4恩山币 +6 收起 理由
jidu + 1 很棒,dw22d和DM203都刷机成功
mx0cz4 + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!
dfc643 + 3 方法不错感谢分享
nczzz + 1 强大的恩山!(以下重复1万次)

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
发表于 2018-4-5 14:28 | 显示全部楼层
密码这些都是自己研究的?好厉害啊
来自安卓客户端来自安卓客户端
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-4-5 14:31 | 显示全部楼层
nazca001 发表于 2018-4-5 14:28
密码这些都是自己研究的?好厉害啊

开ssh那段是三位坛友的努力一起实现的注入,在他的原贴里有写~我只是完成了之后的刷机过程,因为mtd被限制,所以尝试了新的方法
来自苹果客户端来自苹果客户端
我的恩山、我的无线 The best wifi forum is right here.
发表于 2018-4-5 21:11 | 显示全部楼层
小白,能不能后面过程再详细点,截点图。谢谢
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-4-5 22:25 | 显示全部楼层
nczzz 发表于 2018-4-5 21:11
小白,能不能后面过程再详细点,截点图。谢谢

后面指的哪一步?

来自苹果客户端来自苹果客户端
我的恩山、我的无线 The best wifi forum is right here.
发表于 2018-4-5 22:39 | 显示全部楼层
都不太明白,从10开始。用哪个软件,哪个菜单。。。在哪输入命令。。希望有能一步一步学到做就能成的教程

点评

我和你一样,越往后越看不懂,装了楼主说的那个putty就更懵逼了  详情 回复 发表于 2020-2-26 15:07
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-4-5 22:44 | 显示全部楼层
nczzz 发表于 2018-4-5 22:39
都不太明白,从10开始。用哪个软件,哪个菜单。。。在哪输入命令。。希望有能一步一步学到做就能成的教程

这里用到两个软件,一个是ssh连接用的putty,一个是web server用来把文件下到路由器里,其实也可以用winscp来传输文件,更方便
来自苹果客户端来自苹果客户端
我的恩山、我的无线 The best wifi forum is right here.
发表于 2018-4-6 20:40 | 显示全部楼层
多谢,本来已经买了USB-TTL,看到你的文章,省了不少麻烦,不过使用指令/etc/init.d/uhttpd enable && /etc/init.d/uhttpd start这一句,我没成功,只运行 /etc/init.d/uhttpd start成功了!谢谢楼主
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-4-6 21:23 | 显示全部楼层
abcris 发表于 2018-4-6 20:40
多谢,本来已经买了USB-TTL,看到你的文章,省了不少麻烦,不过使用指令/etc/init.d/uhttpd enable && /etc ...

这个指令是两段我用&&连在一起啦~第一段是允许这个服务,第二段是运行这个服务,所以如果你直接运行服务成功是一样的~
来自苹果客户端来自苹果客户端
我的恩山、我的无线 The best wifi forum is right here.
发表于 2018-4-6 22:38 | 显示全部楼层
为了看看,不择手段
我的恩山、我的无线 The best wifi forum is right here.
发表于 2018-4-6 22:56 | 显示全部楼层
我觉得,既然 luci 可以升级,那估计还是有办法直接刷入的。
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-4-6 23:37 | 显示全部楼层
ysc3839 发表于 2018-4-6 22:56
我觉得,既然 luci 可以升级,那估计还是有办法直接刷入的。

大麦的系统是有固件校验的,过不去就没法刷,除非能找到校验的md5改成要刷的固件的,而且有可能只是校验某部分,这个就不清楚了,只能是一种思路

点评

不是这个意思。我指的是你后面通过 https 模式下可以刷入,说明是有办法写入 mtd 的。 另外如果可以的话能发一下官方的固件吗?  详情 回复 发表于 2018-4-6 23:51
来自苹果客户端来自苹果客户端
我的恩山、我的无线 The best wifi forum is right here.
发表于 2018-4-6 23:51 | 显示全部楼层
keke1023 发表于 2018-4-6 23:37
大麦的系统是有固件校验的,过不去就没法刷,除非能找到校验的md5改成要刷的固件的,而且有可能只是校验 ...

不是这个意思。我指的是你后面通过 https 模式下可以刷入,说明是有办法写入 mtd 的。
另外如果可以的话能发一下官方的固件吗?
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-4-7 00:05 | 显示全部楼层
ysc3839 发表于 2018-4-6 23:51
不是这个意思。我指的是你后面通过 https 模式下可以刷入,说明是有办法写入 mtd 的。
另外如果可以的话 ...

那你可以研究一下,原版系统的mtd不产生任何作用,链接:https://pan.baidu.com/s/1uOf9P8uJk-BOK83tL3rMhQ 密码:6U5q

点评

试试 mtd -x mIp2osnRG3qZGdIlQPh1 write ?  详情 回复 发表于 2018-4-7 00:30
来自苹果客户端来自苹果客户端
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2018-4-7 00:08 | 显示全部楼层
ysc3839 发表于 2018-4-6 23:51
不是这个意思。我指的是你后面通过 https 模式下可以刷入,说明是有办法写入 mtd 的。
另外如果可以的话 ...

按理说openwrt的升级脚本最后也是调用mtd了,不知道这里面动了什么手脚,在大麦的ssh里mtd什么用处都没有
来自苹果客户端来自苹果客户端
我的恩山、我的无线 The best wifi forum is right here.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )|网站地图

GMT+8, 2021-7-24 18:44

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表