修改固件在TL-WRD3310安装DD-WRT

家里的无线路由已经用了接近10年,加上随着设备的日渐增多,每次访问Google都要翻墙实在是一件麻烦的事情,于是动了自己写个DD-WRT的念头路由器。刚好公司有个TP-LINK的TL-WRD3310旧路由,刚好利用周五下午无心工作的时间做做试验。

上网找了一下,没能找到WRD3310的rom(严重鄙视)。继续Google,得知WRD3310在国外的对应型号是WRD3600,在DD-WRT官网可以找到WRD3600的rom,所以打着用这个rom刷到WRD3310的念头。翻墙下载了最新的Beta rom,连上WRD3310,选择刚下载的rom升级,结果报了一个“上传文件版本与机型不符”的错误,升级自动退出。

上传文件的版本与机型不符

一时卡壳了,但如果这样就认输不弄了,怎么能称爱折腾呢?重新上TP-Link的中国官网,下载了官方固件,用WinHEX打开固件文件,与DD-WRT的固件比较,终于找出通过修改固件写入的办法。

首先,把DD-WRT固件文件开头Offset=0x00000040处把机型从3600改为3100.

3

 

WRD3310

再把Offset=0x0000004C开始的16个字节暂时改为DC D7 3A A5 C3 95 98 FB DD F9 E7 F4 0E AE 47 38,然后保存。

MD5

用Hash计算出修改后固件文件的MD5,并复制下来。

Hash

再次用WinHex打开修改后的固件文件,用上面算出来的MD5替换掉刚才修改过的从Offset=0x0000004C开始的16个字节并保存。

更新MD5

再次通过网页连接WRD3310,用修改后的固件升级,这次顺利升级成功。

Update

升级成功后第一次登录设置路由器的用户名与密码,可以玩DD-WRT的各项设置了,把Shadowshocks写入,就可以实现自动翻墙功能了。同时,设备型号也变成了WRD3600了。

DD-WRT

 

PS: 别说我没提醒你,这个方法适用于所有型号的无线路由写入固件:)