|
发表于 2008-4-9 21:50:54
|
显示全部楼层
Post by xblx;1836503
很环保的一个方案,为什么路由器生产商直接提供一个这样的环境?
这其实是个很有趣的故事:
Cisco小失误,大麻烦
Linksys Wireless-G Router (model WRT54G),Cisco / Linksys 在2003 年发行的这款无线路由器使用802.11g 标准使得带宽在理论上能够达到54M(2003年的时候),相对于当时业界普遍使用802.11b 的11M 带宽,不能不说实现了一次飞跃。它可以通过自带的DSL / Cable 接口接入宽带互联网,对于内网则支持4 个以太口交换与无线广播接入。2005 年初国内开始销售这款路由器。国外销售价格大概为$60,相对于其他产品来说的话就跟摆地摊的货差不多了。好了,我不是像跟你谈这些参数的问题。关键是:同年有好事者在 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 左右的中端无线路由器了。支持的特征集包括:
13 languages
802.1x (EAP (Extensible Authentication Protocol) encapsulation over LANs)
Access Restrictions
Adhoc Mode
Afterburner
Client Isolation Mode
Client Mode (supports multiple connected clients)
Client Mode WPA
DHCP Forwarder (udhcp (http://udhcp.busybox.net/))
DHCP Server (udhcp (http://udhcp.busybox.net/) or Dnsmasq (http://thekelleys.org.uk/dnsmasq/doc.html))
DNS forwarder (Dnsmasq (http://thekelleys.org.uk/dnsmasq/doc.html))
DMZ
Dynamic DNS (DynDNS (http://www.DynDNS.org/), TZO (http://www.TZO.com/), ZoneEdit (http://www.ZoneEdit.com/))
Hotspot Portal (Sputnik Agent (http://www.sputnik.com) ,Chillispot (http://www.chillispot.org/))
IPv6 Support
JFFS2 (http://sourceware.org/jffs2/)
MMC/SD Card Support
NTP client in a client-server basis
Port Triggering
Port Forwarding (max. 30 entries)
QoS Bandwidth Management (Optimize for Gaming and Services / Netmask / MAC / Ethernet Port Priority)
QoS L7 Packet Classifier l7-filter (http://l7-filter.sourceforge.net/))
PPTP VPN Server & Client
Ntop Remote Statistic
Syslog to remote server
RFlow/MACupd
Routing: Static entries and Gateway, BGP, OSPF & RIP2 via (BIRD (http://bird.network.cz/))
Samba FS Automount
Rx/Tx Antenna (Select or Auto)
Show Status of Wireless Clients and WDS with System Uptime/Processor Utilization
Site Survey
SNMP
SSH server & client (dropbear (http://matt.ucc.asn.au/dropbear/dropbear.html))
Startup, Firewall, and Shutdown scripts (startup script (http://wrt-wiki.bsr-clan.de/index.php?title=Startup_Scripts))
Static DHCP Assignment
Style (Changeable GUI; v.23)
Supports New Devices (WRT54G V3, V3.1, V4, V5 and WRT54GS V2.1, V3, V4)
Telnet server & client
Transmit Power Adjustment (0-251mW, default is 28mW, 100mW is safe)
UPnP
VLAN
Wake On Lan client (WOL (http://ahh.sourceforge.net/wol/))
WDS Connection Watchdog
WDS Repeater Mode
Wireless MAC Addresses Cloning
Wireless MAC filter
WMM (Wi-Fi MultiMedia QoS)
WPA over WDS
WPA/TKIP with AES
WPA2
Xbox Kaid (Kai Engine (http://www.teamxlink.co.uk/))
[原贴地址]http://www.bizwiki.cn/nigel/?p=59
什么是OpenWRT?
1. 关于 OpenWrt
当Linksys 释放 WRT54G/GS 的源码后,网上出现了很多不同版本的 Firmware 去增强原有的功能。大多数的 Firmware 都是99%使用 Linksys的源码,只有1%是加上去的,每一种 Firmware 都是针对特定的市场而设计,这样做有2个缺点,第一个是难以集合各版本Firmware的长处,第二个是这版本距离 Linux 正式发行版越来越远。
OpenWrt 选择了另一条路,它从零开始,一点一点的把各软件加入去,使其接近 Linksys 版 Firmware的功能,而OpenWrt 的成功之处是它的文件系统是可写的,开发者无需在每一次修改后重新编译,另它更像一个小型的 Linux 电脑系统,也加快了开发速度。
2. 为什么使用 OpenWrt因为 Linux 为我们提供了很多免费的软件,我们可以用一个很低的价钱购买像WRT54G的硬件,做成一个小型的 Linux 系统,现在OpenWrt已经提供了100多个已编译好的软件,而且数量还在不断增加,而 OpenWrt SDK 更简化了开发软件的工序
3. OpenWrt 的历史OpenWrt 项目由 2004 年 1 月开始, 第一个版本是基于 Linksys 提供的 GPL 源码及 uclibc 中的 buildroot 项目, 这个版本称为 “stable” 版, 在网上至今仍有很多项目使用这个版本, 较为有名 Freifunk-Firmware 和 Sip@Home.
到了2005年初, 一些新的开发人员加入了这项目, 几个月后他们释出了第一个 “experimental” 版本, 这和以前版本不同的是, 这版本差不多完全舍弃了 Linksys 的 GPL 源码, 使用了 buildroot2 作为核心技术, 将 OpenWrt 完全模块化,OpenWrt 使用 Linux 正式发行的核心源码(2.4.30),加上了一些补丁和网络驱动,开发队伍更为OpenWrt添加了许多免费的工具,你可以直拉把Image写入 Flash (mtd)里面,设定无线功能和VLAN交换功能,这个版本名为“White Russian”,而1.0版本大概于2005年底公布。
4. 为什么是OpenWrt?
虽然几年前已看过一些和嵌入式 Linux 相关的报道, 但由于我的工作和 Linux , 甚至嵚入式 Linux 完全扯不上关系, 所以一直没有机会接触嵌入式 Linux。而且在香港, 要找到嵚入式系统的开发工具并不是那么容易的。有一次, 我为了在宿舍内安装无线网桥, 买了一对Linksys WRT54G, 回来后才知道买错了(应该买WAP54G才对), 于是我上网看看有没有其他办法, 在这偶然的情况下, 我发现 OpenWRT 可以实现这功能, 便开始了改装这路由器的研究...Linksys WRT54G 是一个几乎在任何电脑商场都可以买到的无线路由器, 只需拿出4-5百元, 你就可以拥有一个配备 200MHz CPU, 4MB Flash, 16MB Ram的嵌入式开发系统, 而且在你完成你的开发后, 你还可以应用在生活上, 一点都不浪费。由于它使用 Linux 作为操作系统, 并公开源码及驱动, 在网络上已有很多为它而设计的开源项目, 包括HyperWRT, OpenWRT, SIP Phone等等, 实在是学习嵌入式 Linux 的入门级首选。为什么学习OpenWRT?你不需要对 MIPS 处理器有很深入的了解, 也不用懂得如何去设计一个 MIPS 处理器专用的内核, 因为这些在网上已有人为你做好, 你只需懂得如何安装和使用就行了, 不过你也可以去 http://www.linux-mips.org 找到相关的资料。如果你对 Linux 系统有一定的认识, 并想学习或接触嵌入式 Linux 的话, OpenWRT很适合你, 你将学会一些无线路由器的基本知识, 以及一般嵌入式 Linux 的开发过程, 你会发现无论是 ARM, PowerPC 或 MIPS 的处理器, 都必需经过以下的开发过程:1. 创建 Linux 交叉编译环境2. 建立 Bootloader3. 移植 Linux 内核4. 建立 Rootfs (根文件系统)5. 安装驱动程序6. 安装软件7. 调试随着 Linux 的成熟, 大量不同的处理器内核和应用软件相继出现, 当你熟悉这些嵚入式 Linux 的基本开发流程后, 你不再局限于 MIPS 处理器和无线路由器, 你可以尝试在其它处理器, 或者非无线路由器的系统移植嵌入式 Linux, 定制合适自己的应用软件, 并建立一个完整的嵌入式产品。
[原贴地址]http://www.cublog.cn/opera/showart.php?blogid=5101&id=81902 |
|