Chinaunix首页 | 论坛 | 博客
  • 博客访问: 779123
  • 博文数量: 231
  • 博客积分: 3217
  • 博客等级: 中校
  • 技术积分: 2053
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-04 12:01
文章分类

全部博文(231)

文章存档

2015年(1)

2013年(10)

2012年(92)

2011年(128)

分类: LINUX

2011-08-26 14:44:27

 DD-WRT早期是基于sveasoft的开发的(就是现在我们在DD-WRT里仍能见到sveasoft的身影),Openwrt的强项用户可以随意的安装软件,和使用linux的命令像配置一台硬件防火墙一样的配置路由器,DD-WRT基于Openwrt但重点放在的Web配置方式上,这使得DD-WRT的Web功能比Openwrt强大N多,正因为DD-WRT功能强大而且很易用,使得DD-WRT的用户比Openwrt多很多,DD-WRT不断壮大,现在的DD-WRT以经和Openwrt没多大关系了,从里至外基本都是自己开发了,现在的DD-WRT也可以自己装软件,但只能装在jffs或mmc(前提是你自己加了mmc或sd卡)目录中,DD-WRT中除jffs,mmc,tmp目录其它的目录是不可写的,所以你是不能修其它目录中的文件的,改了一重起又恢复了,命令的话如果你想其能永久生效你要把它保存到NVRAM的Startup表或Firewall表中(Web页中的Commands页就能很直观的完成这一操作),因此DD-WRT和Openwrt各有优缺点,熟悉linux的高级用户Openwrt是不错的选译,对命令不太懂的用户用DD-WRT更适合。
        Linksys WRT54G/GS的用户还用一个不错的选译那就是HyperWRT(一个基于LINKSYS WRTG54官方固件修改的第三方固件,但功能比官方的多很多,特点就是不逊于官方固件的兼容性和稳定性,但功能还是不及DD-WRT)
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 ( ))
DHCP Server (udhcp ( ) or Dnsmasq ( ))
DNS forwarder (Dnsmasq ( ))
DMZ
Dynamic DNS (DynDNS ( ), TZO ( ), ZoneEdit ( ))
Hotspot Portal (Sputnik Agent ( ) ,Chillispot ( ))
IPv6 Support
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 ( ))
PPTP VPN Server & Client
Ntop Remote Statistic
Syslog to remote server
RFlow/MACupd
Routing: Static entries and Gateway, BGP, OSPF & RIP2 via (BIRD ( ))
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 ( ))
Startup, Firewall, and Shutdown scripts (startup script (
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 ( ))
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 ( ))

什么是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 处理器专用的内核, 因为这些在网上已有人为你做好, 你只需懂得如何安装和使用就行了, 不过你也可以去 找到相关的资料。如果你对 Linux 系统有一定的认识, 并想学习或接触嵌入式 Linux 的话, OpenWRT很适合你, 你将学会一些无线路由器的基本知识, 以及一般嵌入式 Linux 的开发过程, 你会发现无论是 ARM, PowerPC 或 MIPS 的处理器, 都必需经过以下的开发过程:
1. 创建 Linux 交叉编译环境
2. 建立 Bootloader
3. 移植 Linux 内核
4. 建立 Rootfs (根文件系统)
5. 安装驱动程序
6. 安装软件
7. 调试
        随着 Linux 的成熟, 大量不同的处理器内核和应用软件相继出现, 当你熟悉这些嵚入式 Linux 的基本开发流程后, 你不再局限于 MIPS 处理器和无线路由器, 你可以尝试在其它处理器, 或者非无线路由器的系统移植嵌入式 Linux, 定制合适自己的应用软件, 并建立一个完整的嵌入式产品。

阅读(5097) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~