找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 5461|回复: 15

网件PR2000随身路由器备份原厂固件以及刷这刷那

[复制链接]
本帖最后由 whc2001 于 2020-12-26 02:53 编辑

之前在某淘宝店发现有卖这玩意16块钱一个(车已经开走了),MT7620N+16M+64M,没事干撸俩来玩,试图硬改结果工具不趁手玩坏了一个,剩下这个不拆了纯软件折腾,写个帖子给自己做一下备份

>备份原厂

用网件的传统艺能打开Telnet:顶部开关拨到Wired(靠近交流电插头一侧),黄色网口连接电脑,确认可以打开管理页面后(默认IP地址是192.168.168.1用户名admin密码password)浏览器访问 http://192.168.168.1/setup.cgi?todo=debug ,提示"Debug Enable!"说明已经打开Telnet端口,用对应的工具(我用的PuTTY)连入,用户名root,无密码,敲回车直接出现Ralink的Logo并出现命令提示符#

查看分区情况:执行
# cat /proc/mtd
  1. dev: size erasesize name
  2. mtd0: 00040000 00010000 "Bootloader"
  3. mtd1: 00200000 00010000 "Kernel"
  4. mtd2: 00020000 00010000 "English UI"
  5. mtd3: 00020000 00010000 "Chinese UI"
  6. mtd4: 00020000 00010000 "Russian UI"
  7. mtd5: 00020000 00010000 "Portuguese UI"
  8. mtd6: 00020000 00010000 "German UI"
  9. mtd7: 00020000 00010000 "Other UI"
  10. mtd8: 00010000 00010000 "WiFi Data"
  11. mtd9: 00010000 00010000 "SC Private Data"
  12. mtd10: 00010000 00010000 "POT"
  13. mtd11: 00010000 00010000 "Traffic Meter"
  14. mtd12: 00010000 00010000 "Traffic Meter2"
  15. mtd13: 00010000 00010000 "SC Nvram"
  16. mtd14: 00010000 00010000 "DPF"
  17. mtd15: 00c60000 00010000 "Rootfs"
  18. mtd16: 00010000 00010000 "Ralink Nvram"
  19. mtd17: 00010000 00010000 "Reserved Block1"
  20. mtd18: 00010000 00010000 "Reserved Block2"
复制代码

可以发现里面东西不少,先全部备份一下吧,因为目前只有Telnet没法传文件,而机器上正好有个USB接口,那么找个不用的U盘格成FAT32插进去,之后/mnt/shares/这个路径底下应该会自动挂载上U盘,我这边是/mnt/shares/U这个文件夹,不知道为啥这个机器没有mtd,所以使用dd干活:
  1. 备份第一个分区(Bootloader)
  2. # dd if=/dev/mtd0 of=/mnt/shares/U/mtd0.bin
  3. 512+0 records in
  4. 512+0 records out

  5. 校验备份出来的文件
  6. # md5sum /mnt/shares/U/mtd0.bin
  7. d1022451fc2b39cc959cae97dca0c389  /mnt/shares/U/mtd0.bin

  8. 校验分区内的数据,两者MD5应一致
  9. # md5sum /dev/mtd0
  10. d1022451fc2b39cc959cae97dca0c389  /dev/mtd0
复制代码

如法炮制备份所有分区,之后umount /mnt/shares/U卸载U盘,如果提示Device or resource busy那么可以保存一下之前
所有mtd分区各自的MD5值以备查验,然后直接reboot

到此备份完成,可以折腾了

>刷入BREED


这个稍微麻烦一点,因为这个机器没有mtd,所以只能dd刷入

由于dd无法直接擦除分区,所以这里用了一个比较迷惑的方法:根据分区大小(0x40000=262144字节)创建一个二进制文件,之后将文件内容全部填充为0xFF(用你喜欢的方式,十六进制编辑器或写程序生成都可以),把这个文件dd进分区,就相当于对分区进行了擦除,这个文件我暂且命名为erase.bin

到H大的帖子里下载breed-mt7620-blank.bin,这里我将BREED的内容写入到了刚才那个擦除用的erase.bin的头部,也就是前面内容是BREED,后面全部是0xFF,这个文件应该就是刷入之后mtd0应该成为的状态,暂且命名为breed-padded.bin,获取一下它的MD5值作为刷入之后的校验,我这里得到的值是654F4C512AE249759BADFA1B2E0F22B3

把前两个bin文件(blank.bin和breed-mt7620-blank.bin)复制到U盘,插回USB口,回到刚才的Telnet,开始刷(注意这里写入的时候设备要用mtdblock0不能用mtd0否则写不进去,我也不知道为啥):
  1. 刷入全是0xFF的erase.bin,清除分区所有内容
  2. # dd if=/mnt/shares/U/erase.bin of=/dev/mtdblock0

  3. 刷入breed-mt7620-blank.bin,正式刷BREED
  4. # dd if=/mnt/shares/U/breed-mt7620-blank.bin of=/dev/mtdblock0

  5. 校验一下分区内容,这里的输出应该是和刚才拼接起来的breed-padded.bin的MD5完全一致,否则有问题
  6. # md5sum /dev/mtd0
  7. 654f4c512ae249759badfa1b2e0f22b3  /dev/mtd0
复制代码
校验MD5正确之后就是激动人心的时刻,电脑IP地址调192.168.1.100,把网络适配器除了连机器的那个其他的全部禁用(重要,否则可能不能成功中断BREED启动,每次都忘),打开BREEDEnterPlus开始监听,Telnet敲reboot,等待一会,BREEDEnterPlus提示中断成功之后就可以打开Web界面了,建议第一时间去备份编程器固件以备不时之需

>检测各种GPIO


进入BREED的Telnet,执行btntst,发现GPIO63一直刷屏(可能是某种时钟信号),重启后先btntst disable 63再检测,发现RESET键是GPIO1低电平有效,启用并写入环境变量gpio.customized.reset=1L


另外机器上面那个电源开关有2档,反复测试发现拨动到Wired档(靠近交流电插头一侧)导致GPIO20为高电平GPIO21为低电平,拨动到Wireless档(靠近天线一侧)导致GPIO20为低电平GPIO21为高电平,理论上可以考虑在Op里写开机启动脚本还原原版固件的功能,但是暂时懒得搞

未完待续,接下来要编译和刷入Op,有空再说,咕咕咕


补个手头这个机器备份出来的完整固件(BREED备份出来的编程器固件和dd备份出来的各分区固件):https://pan.baidu.com/s/1FtXtDX-F_3T8vMnrGgDdBQ 提取码: ugm7

评分

参与人数 1恩山币 +2 收起 理由
chu*** + 2 2333

查看全部评分

看了下 openwrt 官网是有支持网件 JWNR2010 v5 的,也是 MT7620N 的平台 https://openwrt.org/toh/hwdata/netgear/netgear_jwnr2010_v5
回复

使用道具 举报

 楼主| | 显示全部楼层
jshensh 发表于 2020-12-20 22:23
看了下 openwrt 官网是有支持网件 JWNR2010 v5 的,也是 MT7620N 的平台 https://openwrt.org/toh/hwdata/n ...

我用的Lean的仓库,找了一下没找到这个型号,倒是华硕RT-N14U的强行刷进去能起来,可以在这个基础上改,但是还要调整很多玩意
回复

使用道具 举报

本帖最后由 jshensh 于 2020-12-22 17:32 编辑
whc2001 发表于 2020-12-22 05:08
我用的Lean的仓库,找了一下没找到这个型号,倒是华硕RT-N14U的强行刷进去能起来,可以在这个基础上改, ...

JWNR2010 目前还是 snapshot,官网有 dts https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob;f=target/linux/ramips/dts/mt7620n_netgear_jwnr2010-v5.dts;hb=d6cb50c7ba8447f018139401d0d3821069e5f389
刚搜了下 openwrt 支持的 mt7620n 设备其实还是挺多的,https://openwrt.org/toh/views/toh_extended_all?dataflt%5BSwitch*~%5D=MT7620N
回复

使用道具 举报

来自手机 | 显示全部楼层
头大,求一份eep
回复

使用道具 举报

 楼主| | 显示全部楼层
jshensh 发表于 2020-12-22 17:26
JWNR2010 目前还是 snapshot,官网有 dts https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob;f=tar ...

有dts模板就好办了,之前用breed测了一下LED的引脚,eth是GPIO44,wifi是FPIO72,USB不知道为啥死活弄不亮,有空再研究研究,完事改个dts应该就舒服一些了
回复

使用道具 举报

 楼主| | 显示全部楼层

传了,发链接要审核
回复

使用道具 举报

whc2001 发表于 2020-12-26 02:48
有dts模板就好办了,之前用breed测了一下LED的引脚,eth是GPIO44,wifi是FPIO72,USB不知道为啥死活弄不 ...

snapshot 的这个 dts 不太全其实
回复

使用道具 举报


可以了,朋友弄了个 dts https://github.com/openwrt/openwrt/pull/4247

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

网件PR2000随身路由器备份原厂固件以及刷这刷那

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

编译了一个纯净版的固件,只添加了中文翻译
可以使用breed刷固件,固件布局选0x40000
https://www.z2os.com/openwrt-21. ... shfs-sysupgrade.bin

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

可以出个系统的教程不?贴中的连接基本也都失效了
回复

使用道具 举报

这个帖子中 居然都是新手ID 不可思议
回复

使用道具 举报

jshensh 发表于 2021-9-25 14:02
可以了,朋友弄了个 dts https://github.com/openwrt/openwrt/pull/4247

求给编译好的固件链接 我什么插件都没添加的initramfs-kernel可以刷入,但是openwrt上升级squashfs-sysupgrade传到百分之六七十对话框就消失,再传两次直接崩溃重启,breed直接刷squashfs-sysupgrade无限重启,再次重新编译添加了两个插件,initramfs-kernel刷入也是无限重启,选择0x400的闪存布局或则公版布局都一样无限重启。
回复

使用道具 举报

zhangchaozjc06 发表于 2021-9-28 21:08
编译了一个纯净版的固件,只添加了中文翻译
可以使用breed刷固件,固件布局选0x40000
https://www.z2os.c ...

求补链接
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-5-21 18:36

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

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