Sunday, February 28, 2010

Netgear WGR614L无线路由器firmware切换

半个月前,从taobao购得一台Netgear WGR614L(同WGR614V8)无线路由器,这是一台开源的路由器,支持各种开源的firmware,例如:DD-WRT,Tomato,OpenWRT等。
购买之前已经让店主给我刷好了DD-WRT V24SP2最新版,功能的确强大,但是十几天肤浅的使用,发现两个问题:
1 中继模式不稳定。中继模式我只试验过里面的中继桥接模式,这种模式配置起来简单,而且可以使电脑跟远程AP在同一个sublan中。在桥接模式下面,本地端连接方式有两种,第一种就是直接用有线连接在路由器的LAN口上,自动从远程AP获取IP地址,另外一种就是在我的路由器里面创建虚拟无线接口,让路由器接收远程AP信号的同时,发送无线信号,本地端就可以用本本的无线来连接。无论是哪种方式,都不稳定,有时候速度很快,有时候让我抓狂!
2 由于网线不够长,我想让这台路由器与大厅里面的另外一台串接起来,方法有二,第一,把这个路由器WAN口关闭,作为交换机使用,LAN口与大厅的路由器的LAN口连接,这样可行,但是让我觉得,我还不如买个交换机;第二,路由器的WAN口与大厅路由器LAN口连接,我的本本从我的路由器上获得IP地址,保持本本在另外一个独立的sublan中,可是很失败,为了这个我研究了一天,最终还是就没搞定。(用了Tomato之后,才知道这是DD-WRT的bug)
于是,我决定试试传说中超稳定的Tomato,Tomato没有中继模式,但是有客户端(桥接)模式。这两者唯一区别就是,中继模式可以再虚拟出一个无线信号出来,而客户端模式只能用网线连接。而事实上,中继模式虚拟出来的那个无线信号非常弱和不稳定,经不起下载的摧残。鉴于此,我决定舍弃中继模式。
但是我的这款路由器刷tomato并非那么容易,首先,我当前安装的是DD-WRT,无法直接刷到Tomato上,需要先刷netgear的官方固件,其次Tomato官方并未明确表示支持我的路由器,不过有个开源论坛,对我的这款路由器支持很好,我刷机基本上参考上面的文章。
那么,我开始写这次刷机的经历:
刷机可以在windows下面进行,也可以在linux下面进行,最好在linux下面,因为很多工具现成就有,而且开源的firmware都是基于linux。
第一步,刷机工具
1. mtd_erase –用于清空本机的固件,并打开一个tftp端口,以便上传新的固件。
2. ssh(linux)或者putty(windows)或者telnet –用于连接路由器的ssh或者telnet端口,以便进入路由器,执行命令
3. scp(linux)或者pscp(windows)–用于将mtd_erase上传到路由器的/tmp文件夹中,采用ssh协议,供运行。
4. tftp(linux)或者tftp32(windows)–用于上传新的firmware到路由器中,注意这个是tftp协议。
5. Tomato固件 ,这个是论坛牛人根据tomato源代码编译的适合WGR614L的最新固件
6. netgear官方固件,从dd-wrt到tomato,中间必须要刷着个固件
第二步,刷机过程
1. 确保路由器已经开启telnet,ssh,记住路由器的永久用户名为root(而非你设置的用户名),密码为你设置的密码。电脑已经连接路由,假设路由的ip为192.168.1.1
2. 上传mtd_erase到路由器
linux下面运行:
scp mtd_erase root@192.168.1.1:/tmp
windows下面运行:
pscp -scp mtd_erase root@192.168.1.1:/tmp
过程中,会要求输入密码。成功后会提示。
3. 用putty,ssh通过登录到路由器,或者telnet到路由器,效果一样。
你会进入路由器的linux root命令提示符 #,依次输入以下命令
cd /tmp
chmod 777 mtd_erase
(这一步就是让这个东东任何用户都可以执行,话说我是root登录的,但是如果不运行这个,执行会出错)
./mtd_erase -d linux
(清空路由器的linux分区,也就是相当清空了当前的dd-wrt固件)
但是这个时候,你的路由器还是正常运行的,因为linux运行在16M的内存中 然后进入路由器界面,找到重启的地方,点重启
4. 重启后,路由器的电源灯会不停的闪烁,这时候,该上传netgear的firmware了
linux下:
tftp -m binary 192.168.1.1 -c put wgr614l.chk
windows下:
打开tftp32,点tftp client,输入路由器ip,端口保留空白,local file选中wgr614l.chk,然后点put,几秒钟就上传了。
好了,路由器会自动重启。
5. 至此,netgear的firmware就已经刷进去了,接下来就很简单了,进入路由器,找到upgrade,选中Tomato的firmware就,等待升级完毕。注意,此处必须用IE浏览器,否则出问题。
6. 好了,基本上这么样就行了,从Tomato刷行到DD-WRT或者Open-WRT过程跟这个差不多。

2 comments:

  1. 挖坟!这个路由器已经被我给弄坏了,现在用wrt54GS V3

    ReplyDelete
  2. Sant Ritz is more than just a home. Its combination of condominium status with contemporary ville living.
    the interlace condo

    ReplyDelete