不拆机修改路由器CFE的两种方法

2014-11-08 20:59:35 +0800


该方法适合绝大多数带miniweb系统的路由器。

方法一:使用miniweb刷机

1、按住路由器的reset(刷机完成前不要松手),打开路由器电源,此时路由进入CFE miniweb模式。
2、打开浏览器输入:http://192.168.1.1进入miniweb。
3、先点击清空NVRAM,然后点继续。
4、创建一个本地目录,放入TFTP32,并且在目录中放下CFE文件:比如 cfe.bin。
5、打开tftp32程序备用。
6、在浏览器地址栏输入:

http://192.168.1.1/do.htm?cmd=flash+-noheader+192.168.1.2:cfe.bin+flash0.boot

并回车。这时候tftp32会闪一下,把CFE传入到路由上并刷入。等浏览器提示完成时再点继续。再reboot,这样就可以进入新的CFE的miniweb了。

上面的192.168.1.2 是操作机器的IP,根据实际情况填写。

理论上也可以通过如上相似的命令在原厂的CFE下进行固件强行刷新

http://192.168.1.1/do.htm?cmd=flash+-noheader+192.168.1.2:TEST.bin+flash0.trx

原文:

http://www.360doc.com/content/14/0508/17/14797374_375861508.shtml

方法二:利用 Telnet 登陆路由器后,用路由器内的 mtd 设备来完成

  1. 用 Telnet 命令登陆路由器(要注意一点,用户名一定要写 root,哪怕你自定义过用户名,但在这里也还是要用 root 才可以)。
  2. 输入:cat /proc/mtd ,一般会返回如下信息:
    dev: size erasesize name
    mtd0: 00040000 00010000 "cfe"
    mtd1: 003b0000 00010000 "linux"
    mtd2: 002bd000 00010000 "rootfs"
    mtd3: 00010000 00010000 "nvram"
    mtd4: 00010000 00010000 "ddwrt"
    

    从返回的信息中,我们可以看到 cfe 其实就是放在 mtd0 区内的。有时cfe会显示为prom。

  3. 现在我们先把 cfe 备份出来,使用命令:dd if=/dev/mtd/0 of=/tmp/cfe.bin ,一般返回如下信息:
    512+0 records in
    512+0 records out
    

    这样就把路由 FLASH 中的 cfe 备份到了 /tmp/cfe.bin 中去了。

  4. 获取现在路由的 MAC 地址,这个方法有很多种了,你可以访问一下 http 方式的管理页,然后把 Lan MAC 记下来(必须是 LAN MAC ,千万别记成 WAN MAC 或者 WLAN MAC 了),也可以用命令: ifconfig eth0 来获取(命令中最后一个字符是数字 0 ,别输入成字母 0 了)。
    假设这里获取到的 MAC 地址是 00:16:11:17:91:95 。
  5. 用 sed 命令把 cfe 中的 MAC 地址改掉,假设改成 00:16:11:17:81:95,改好后的 cfe 保存到 cfe.new 文件中。
    命令格式如下:
    sed "s/00:16:11:17:91:95/00:16:11:17:81:95/g" /tmp/cfe.bin > /tmp/cfe.new
    

    由于该命令是没有回显的,所以只要运行结束显示提示符,就可以了。

  6. 最后用 mtd 命令把新的 cfe 内容写回 cfe 。
    mtd write /tmp/cfe.new cfe
    

    如果有提示错误,可以改用以下2条命令进行:

    mtd unlock cfe
    mtd write -f /tmp/cfe.new cfe
    

    如果提示信息是类似下面的这行,就说明更新完毕:

    Writing from /tmp/cfe.bin to cfe ... [w]
    
  7. 完成,您可以在 http 方式的管理页面中,选择恢复出厂默认设置一下,也可以按路由器背后的 RESET 强制恢复。现在路由器的 MAC 地址已经是新的了。
    可能有人会问,你只改了 LAN MAC 地址,那路由器还有 WAN MAC 和 WLAN MAC 呢,这两个又怎么改?其实这两个根本不用改的,如果打开 cfe 看的话也可以发现,里面根本没有这两个 MAC 地址,只有 LAN MAC 地址的。那这两个 MAC 地址怎么生成呢?其实很简单,cfe 会自动用 LAN MAC 地址 + 1 和 +2 来自动生成 WAN MAC 和 WLAN MAC 地址的,所以你改掉了 LAN MAC 就可以了。

原文:

http://wangyuicq.blog.163.com/blog/static/46395730201011105512277/


上一篇:在dd-wrt路由器上使用虚拟AP架设收费热点

下一篇:配置Nginx强制跳转