IT老兵,爱好胡思乱想、读书和交流,2015年底重新回到IT战场,期待再一次“贯穿”。
分类: 系统运维
2007-04-19 10:49:18
2007.4.19 第一版
分析开源无线宽带路由器DD-WRT、OPEN-WRT,主要有下面几个目的:
一、来源 //参考《Cisco小失误,大麻烦》
Cisco / Linksys 在2003 年发行的WRT54G这款无线路由器非常“经典”。同年有好事者在 Linux Kernel Mailing List 搜索 WRT54G,发现它的IOS 是基于Linux,然而Linux 基于GPL 发布许可证,就是 GNU General Public License. 该许可证规定Cisco 应该把WRT54G 的IOS 的源代码公开。本来Cisco 拒绝公开源代码,最后,03 年三月份的时候,基于公众压力Linksys 公开了WRT54G 的源代码。
故事本来到这里就结束了,然而相反,结果越闹越大:有了源代码以后,开发者便清楚知道代码如何控制路由器的硬件,并且掌握了一些通过增加新的代码到原有的IOS 当中去 —— 使得硬件支持更多的Feature 的技术。这些开发者组成了一个项目开发团队,不断对原来的IOS 进行更新,编码,加入新的特性…… 现在他们手上的WRT54G 无线路由器的能力已经大大超过了原来Cisco 设计的地摊货的设计思路。不但如此,随着这两年互联网Web2.0 技术的发展,不同的开发团队之间找到了更好的协同工作平台,其规模不亚于TAC. 他们最近建立了一个DD-WRT 项目的Wiki 站点将全套文档以及代码公开发布。使用DD-WRT 项目提供的源代码,重新升级WRT54G 以后你就能够获得一台相当于$600 左右的中端无线路由器了。支持的特征集见附录二:
二、支持开源的无线路由器硬件平台
Linksys WRT54G/GS/GL () 或其他基于Broadcom参考设计的802.11g无线路由器,具体参考 Supported Devices:
1,使用BoardCom芯片的基本都可以适用,但常见的Dlink、TpLink不是这种芯片。比较容易买到的有LinkSys、华硕、贝尔金(Belkin)、Buffalo(其WHR54也是常用平台,可惜是日货)、Motorola的Wr850g也有卖的(V2、V3配置和WRT54G差不多)。
2,以LinkSys WRT54G最为正宗。注意版本V1-V4是基于Linux的,可以刷OpenWRT等,主要只能在taobao上购买了,版本V5以上LinkSys都改为Vxworks操作系统,就不行了,作为替代,LinkSys发行基于Linux的WRT54GL,专门给发烧友玩的。WRT54GS,带speedboost功能的WRT54G,就是108MB。WRT54GL、WRT54GS都没在国内发售。
3,taobao上比较常见的是v1.x、v2.0和v2.2,都是二手货。见support device表,v2.2的配置比较高,Broadcom4702芯片,216MHz主频,4MB Flash,16MB RAM,大概接近¥300元。作为开发平台是不错的选择。
三、软件平台-firmware的版本
参考:
http://tonitu.bloggles.info/2006/12/16/linksys-%E5%92%8C-%E7%AC%AC%E4%B8%89%E6%96%B9-firmware/
大体上比较有名的有:
【注意】刷任何Firmware,都有失败的风险。Firmware失效,也许意味着你不能连接你的硬件了,这样就很难弥补过失了。这里是如何修复失败的硬件:The WRT54G Revival Guide, 。建议在刷Firmmware前,如果你只有一个router,那就先下载恢复文档或是打印出来。(1,reset router;2,使用factory setting,里面有个恢复默认设置并clear NVRAM。)
附一,各个版本的序列号:
CDF0 = WRT54G v1.0
CDF1 = WRT54G v1.0
CDF2 = WRT54G v1.1
CDF3 = WRT54G v1.1
CDF5 = WRT54G v2.0
CDF7 = WRT54G v2.2
CDF8 = WRT54G v3.0
CDF9 = WRT54G v3.1
CDFA = WRT54G v4.0
CDFB = WRT54G v5.0
CDFC = WRT54G v5.1
CDFD = WRT54G v6.0
CDFE = WRT54G v7.0
CL7A = WRT54GL v1.0
CL7B = WRT54GL v1.1
CGN0 = WRT54GS v1.0
CGN1 = WRT54GS v1.0
CGN2 = WRT54GS v1.1
CGN3 = WRT54GS v2.0
CGN4 = WRT54GS v2.1
CGN5 = WRT54GS v3.0
CGN6 = WRT54GS v4.0
CGN7 = WRT54GS v5.0
CGN8 = WRT54GS v5.1
CGN9 = WRT54GS v6.0
CJK0 = WRTSL54GS v1.0