月归档:2012年10月

简单记下安装redboot/ecos编译环境

手里有个IXP4XX的板子,CPU是400MHZ的很强悍,一直没有合适的redboot,打算自己编译一个玩玩。

系统是ubuntu10.10,安装ecos的过程简单 不详细记录了。

wget –passive-ftp ftp://ecos.sourceware.org/pub/ecos/ecos-install.tcl 

说说安装后配置出错的问题

1.configure不能直接在自身目录下面运行,在/opt/ecos/ecos-3.0/里面直接./configure会报错,提示不能在tree下面运行。

解决办法:切换到其他目录下面 然后执行/opt/ecos/ecos-3.0/configure即可

2.configure: error: unable to locate Tcl configuration file tclConfig.sh

这个是没有安装tcl的包,解决办法apt-get install tcl tcl-dev automake autoconf2.13 texinfo tk tk-dev

基本上可以解决问题。实在不行的话去下载tcl 的源码包自己编译

 

[root src]# wget http://heanet.dl.sourceforge.net/sourceforge/tcl/tcl8.4.19-src.tar.gz

[root src]# tar xfz tcl8.4.19-src.tar.gz

[root src]# cd tcl8.4.19/unix

[root unix]# ./configure –enable-threads

[root unix]# make install

 

基本上可以解决问题

继续阅读

发表在 编译固件 | 留下评论

单线多拨宽带叠加路由器,客户反映使用效果不错

前天卖出的路由器,客户昨天就收到货了,从河南到沈阳,顺丰的速度还是非常给力的。

昨天晚上客户反映收到后不能进行双拨,只能拨上一个连接,达不到双网合并的效果,当时客户说完后有事情要忙,就没办法帮他在线解决问题。

想了一下,应该是各地的ISP针对多拨的检测机制不同,单网口虚拟多拨的话由于MAC地址是一样的,因此可能一条线拨上后,另一条线过一段时间再拨号才能成功。

解决办法是过一段时间再看,如果还是不能拨号成功,那么需要设置成两个WAN口分别插网线,由于MAC地址不同,就可以避开ISP的检测机制,双拨上网。

解决思路有了,就等客户什么时候有空搞了。

今天下午,客户在旺旺上告诉我,已经双拨成功了,正是我之前预料到的第一种情况。

点击查看原图
点击查看原图
点击查看原图

路由器的淘宝链接



http://item.taobao.com/item.htm?spm=a1z10.1.w4.1.CxfZoo&id=17638351227

继续阅读

发表在 淘宝 | 留下评论

Linksys WRT54G 老去的传说

Linksys 于2003年底推出了一款优秀的无线路由器:WRT-54G。一开始的时候,它并不引人注意,人们仅仅把它当作一个无线接入点而已。不过选择了linux 作为操作系统给它带来了一个意想不到的机会,那就是用户可以根据自己的需要,在上面自由的修改和发布新的firmware。随着一些功能丰富的第三方 firmware的出现,它终于散发出了迷人的魅力,为广大玩家所追捧。Linksys至今依然生产销售WRT-54G这个系列的产品,足见其受欢迎的程 度,WRT-54G还在续写着一个不老的传说。

 

那么它究竟有什么能耐让玩家如此推崇呢?下面让alflie带领你深入它那神奇的世界一探究竟。厄,且慢,是WRT-54G 的firmware让它流行起来的,所以不妨先来看看它们演变的历程。

WRT-54G刚推出的时候,官方firmware的功能并不强大,不久后,一家叫做sveasoft公司看到的其中的契机,在其基础上开发了 Alchemy,并按每份拷贝收取20美元,这就让开源社区的用户大为不满了,连Linksys都遵循GPL开放了官方firmware的源代码,凭什么 sveasoft这个第三方的firmware却要收费,于是,一些热心的发烧友重起炉灶,开发了其他的版本,目前比较流行的是HyperWRT,DD- WRT和OpenWRT。其中HyperWRT的理念是忠于官方版本,只增加小部分功能,追求高稳定性;OpenWRT的理念则是设计一个通用的最小内 核,让该内核也可以运行在其他品牌的无线路由器上,然后由其他人在上面开发新的功能插件,不过它的易用性就比较差了,需要通过命令行来配置;而DD- WRT追求的则是最完善的功能和最佳的易用性,它的确做到了这一点,因而赢得了广大用户芳心。平心而论,OpenWRT的开发模式才是正确的方向,它的 ipkg就很好用,一些高阶的用户更偏爱OpenWRT,相信OpenWRT日后必有大的作为。

目前DD-WRT是最流行的版本,为了照顾大部分读者,我选择了DD-WRT作为范例,现在让我们开始WRT-54G的神奇之旅吧。

一、路由与交换

顾名思义,WRT-54G的一项重要的功能就是支持路由。

市面上,和WRT-54G同等级别的网络设备,比如ASUS adsl modem和D-link VPN网关等,都只支持静态路由和RIP,而DD-WRT除了支持前面两种外,还支持企业级别的动态路由协议:OSPF和BGP。实现路由功能的模块是 BIRD,相对于linux下著名的路由软件Quagga (前身是zebra)一点也不逊色。有兴趣的读者可以参考www.bird.org。

WRT-54G提供了5个以太网口和1个无线网口。其中5个以太网口又分出1个WAN口和4个LAN口。得益于linux的高灵活性和可配置性,我 们可以在DD-WRT中对这六个网口进行自由组合,创建多个vlan,最大可以支持15个,另外DD-WRT还支持tag(802.1q),和 trunk,亦即在多条链路之间负载均衡。结合路由和交换,WRT-54G完全可以在小型企业的网络里面一展身手,作为三层交换机非常合适。事实上,国外 一些中小型企业就专门购买WRT-54G,将firmware刷成DD-WRT,关闭无线功能,启用路由和划分vlan,配置tag和trunk来取代高 昂的网络设备。

花这么少的钱就能使用万元级别网络设备的功能,真不可思议!

二、无线功能

另一个重要的功能当然就是无线啦。因为工作的关系,alfie曾试用过多种品牌无线路由器,相比之下,WRT-54G的无线信号和稳定性要高于同级 别的其他品牌,如TP-Link,D-Link和netgear等,比cisco稍差,不过买一个cisco 1240G就可以买8个WRT-54G了。WRT-54G还提供了异常丰富的物理调配选项,从速率到发射功率不一而足,比1240G尤过之而无不及。单纯 从物理性能方面的比较还无法表现出DD-WRT的优势,其丰富的无线安全选项才是我喜欢它的原因。DD-WRT支持WEP,WPA和WPA2加密方式,支 持radius认证和802.1x端口安全,在企业中组网的时候,完全可以在其上实施微软的PEAP这种最流行、方便的安全方案。

此外,DD-WRT还支持WDS,在工地或者仓库这些空旷,布线不方便的地方,这项功能就有用武之地了,可以通过两个WRT-54G桥接两个 LAN,与此同时还可以扮演AP的角色。

DD-WRT的无线功能非常丰富,即适合家庭使用,也满足企业网中苛刻的要求。

三、安全

DD-WRT集成了linux中赫赫有名的iptables,这是一个状态检测防火墙,功能强大。实际上,像端口转发,vlan划分,DMZ(非军 事区)和VPN等很多功能都是iptables在幕后(参与)实现的,iptables需要通过命令行配置,比较复杂,具体的内容已经超出了本文所讨论的 范围。不过别担心,一般的用户不需要直接和它打交道,DD-WRT会在后台帮你搞定iptables。

在DD-WRT中可以创建各种各样的Internet访问策略。 用户可以根据实际情况,针对客户端IP,应用,时间段和web页面的关键字来进行过滤,举个简单的例子,假设你只允许内网的用户在晚上11点至凌晨7点期 间使用BT,那么就可以结合时间段和应用来创建这条访问策略了,强大而且灵活。这个功能,连同后面讲的QoS都是由iptables + l7-filter在幕后实现,这也是alfie非常喜欢WRT-54G的一个重要原因。

DD-WRT对VPN的支持是不遗余力的,对于IPSec,PPTP和L2TP的穿透根本不在话下,还内建了PPTP server/client,如果在家庭/公司的WRT-54G上启用了PPTP服务器,用户就可以随时随地访问家庭/公司的网络资源了。用户还可以在 DD-WRT上通过ipkg(后面会讲述)安装目前流行的开源SSL VPN:OpenVPN,它能提供更丰富的功能,支持LAN-to-LAN,Client-to-LAN,Point-to-Point三种网络架构,支 持全动态IP的VPN网关。不过OpenVPN对cpu的要求挺高的,一般用户只需要用PPTP就可以了。那企业用户怎么办,别担心,DD-WRT还提供 了一个有趣的选项:cpu超频,该怎么做不用我多说了吧。

四、网络服务

  1. DHCP 
    DD-WRT集成了一个udhcp模块,该模块专为嵌入式系统设计,提供DHCP server和client的功能。
  2. dnsmasq 
    该模块提供了两种功能,一是dhcp,一是dns。它的dhcp功能比udhcp更强大,不仅可以动态分配 IP,它还可以根据客户机的MAC地址来分配固定的IP,机器名和域名;dnsmasq担任了部分DNS服务器的角色,当局域网中有两台机器需要互相访问 的时候,比如文件共享,可以直接访问对方的机器名或域名,(机器名和域名由dnsmasq配置分配)无须在小型的网络中再构建一个DNS服务器。
  3. ddns 
    动态域名解析,相信大家都知道这个是干什么的,DD-WRT集成了dysdns.org,三家的客户端,只需要从列 表中选择即可,非常方便,不用再像以前那样需要在服务器中安装和配置客户端。
  4. Samba 
    DD-WRT还可以担当文件共享中继器的角色,假如你的内网有一台服务器需要提供文件共享服务给Internet 的用户,只需要在DD-WRT中挂载该共享链接,外网的用户就可以通过IE来访问这些共享的文件了,安全又方便。
  5. port forwarding 
    端口转发,当需要在内网提供网络服务给Internet的用户时,就需要用到这个功能。 DD-WRT除了提供基本的端口转发外,还提供了port range forwarding、port triggering和UPnP。其中UPnP协议是微软的一项技术,当内网服务器启用一项服务的时候,它通过UPnP协议告知DD-WRT打开某个/些 特定端口进行监听,并将来访的数据包进行端口转发;当该服务停止的时候,又通知DD-WRT关闭这些端口,这项特性比静态的端口转发灵活,方便,安全。
  6. IPv6 
    实在是太强了,就这么几百块钱的东西,连IPv6也支持了,还有什么好说的呢,这也反映了linux的灵活性。
  7. ntp client 
    配置了该功能后,DD-WRT就可以跟Internet上的网络时间服务器进行时间同步,这在 hotspot计费,OpenVPN和排除故障的时候是很有用的。

五、管理

DD-WRT支持3种管理界面:web,telnet和SSH

  1. web GUI 
    DD-WRT的web界面实现了绝大部分的功能,层次设计清晰,即便是菜鸟也可以很快从这里入手,特别是它的状 态察看做得尤其出色,CPU,内存,DHCP租约,当前的无线客户端等等信息应有尽有,管理起来非常方便。
  2. telnet,ssh 
    对于大虾而言可能不屑于用web,DD-WRT还提供了telnet和SSH这两种管理界面,尤其是后 者,应该满足他们的要求,毕竟DD-WRT是一个linxu嵌入式系统,所以要玩弄其于鼓掌之间肯定需要用到命令行,比如使用ipkg安装新的软件包就得 在这里进行。
  3. snmp 
    开启snmp后,我们可以通过网管工具,监控当前的无线用户数,带宽的利用率等内容,简单方便。
  4. syslogd 
    设备运行期间会产生一些告警信息,通过配置syslogd,就可以将这些信息传到syslogd服务器上,以便 网络管理员排错维护之用。
  5. backup 
    DD-WRT在web界面里提供了备份配置的功能,不过我还是喜欢在命令行下写一个脚本,结合DD-WRT提供的 cron任务功能,进行定时备份。

六、其他

  1. ipkg 
    ipkg肯定是从Debian的apt中获得的灵感,是OpenWRT设计理念中的重要组成部分。DD-WRT将它 移植过来,允许用户直接在DD-WRT中,通过Internet来下载安装新的软件包,这简直是赋予了DD-WRT第二次生命,因为新的软件层出不穷,有 了ipkg以后就可以随时定制DD-WRT的功能了。目前OpenWRT官方提供的软件包还比较少,不过第三方的软件库就很丰富了,从tcpdump到 mysql应有尽有。
  2. QoS 
    这个东东足以写一本厚厚的书,它涉及到数据包的分类,排队,拥塞控制等。由于它太复杂,所以一般面向家庭和中低端的企 业网络设备根本没有提供这项功能,而DD-WRT又再一次展示了linux的强大,提供了完整的QoS。数据流根据MAC,IP和应用可划分为4个从低到 高的优先级别,队列也有两种可供选择HFSC和HTB,另外DD-WRT还可以对单个物理端口流量进行限制。这些丰富的QoS选项足以让用户流畅的使用纷 繁的网络应用,国外有些用户调配WRT54G之后,同时使用BT和VoIP,如果没有强大的QoS,这根本不可能。
  3. overclocking 
    超频,咋一看,我也不敢相信自己的眼睛,DD-WRT居然还有这一手,真好玩,对于硬件爱好者来 说,超频早已经是遥远的回忆了,毕竟现在的cpu动不动就是2G,双核,没有必要费九牛二虎之力超频了。不过在WRT-54G上面超频就恰到好处,因为 WRT-54G只有200Mhz,如果跑要OpenVPN的话,超频就显得很有用了。
  4. 硬件版本 
    目前,除了Linksys的WRT-54G系列之外,DD-WRT也支持还有其他品牌的无线路由器,请参见下表:

附:支持DD-WRT固件的无线路由器 
Allnet:All0277
Askey:RT210W
Asus: 
Asus WL-500G deluxe
Asus WL-500G premium 
Asus WL-300G 
Belkin: 
F5D7130/7330 (2mb flash) 
F5D7230-4 v1000, v1010, v1111 
F5D7230-4 v1444 (2mb flash) 
Buffalo: 
WHR-G54S 
WHR-HP-G54 
WHR-HP-G54S 
WZR-RS-G54 
WBR-G54 
WBR2-G54 
WBR2-G54s 
WLA-G54 
Linksys: 
WRT54G v1.0, v1.1, v2.0, v2.2, v3.0, v3.1, v4.0, v5.0 (2mb flash) 
WRT54GL v1.0, v1.1 
WRT54GS v1.0, v1.1, v2.0, v2.1, v3.0, v4.0, v5.0 (2mb flash) 
WRTSL54GS v1.0 
Motorola : 
WR850G 
Ravo: 
W54-RT
Siemens: 
Gigaset SE505
Gigaset SX550i

 

 

OpenWRT支持的品牌硬件更多,有兴趣的读者可以参看一下链接:http://wiki.openwrt.org /TableOfHardware

alfie还是建议花多2百块,买Linksys的产品,这样可以避免一些不必要的兼容性问题,目前国内销售的基本上都是WRT-54G v4,售价在510-540之间,下表是Linksys的硬件对比列表:

参数

CPU(MHz)

RAM

Flash

Serial No

WRT54G v1.0

125

16

4

CDF1xxx

WRT54G v1.1

125

16

4

CDF2xxx-CDF3xxx

WRT54G v2.0

200

16

4

CDF5xxx

WRT54G v2.2

200

32

4

CDF7xxx

WRT54G v3.0

200

16

4

CDF8xxx

WRT54G v3.1

200

16

4

CDF9xxx

WRT54G v4.0

200

16

4

CDFAxxx

WRT54G v5.0*

200

8

2

CDFBxxx

WRT54GS v1.0

200

32

8

CGN0xxx-CGN1xxx

WRT54GS v1.1

200

32

8

CGN2xxx

WRT54GS v2.0

200

32

8

CGN3xxx

WRT54GS v2.1

200

32

8

CGN4xxx

WRT54GS v3.0

200

32

8

CGN5xxx

WRT54GS v4.0

200

16

4

CGN6xxx

WRT54GS v5*

200

16

2

CGN7xxx

需要注意的是WRT54G v5和WRT54GS v5这两款,Linksys被cisco收购后,cisco减少了Flash和RAM容量,并将操作系统换成了VxWorks,如果要刷成其他 firmware的话,需要为它增加一个串口,不过由于RAM太小,所以不建议购买。

七、定制你的WRT-54G

wrt54不仅仅在软件方面给用户最大的自由度,而且在硬件方面也留有很多可以修改的余地。

DD-WRT就有一个MMC/SD的选项,也就是说,如果你觉得4M的Flash太小,无法满足你的要求,那么可以额外为WRT-54G增加一块 MMC/SD卡,当然,这需要在电路板上进行一些焊接工作,可别吓着了,请参考http://support.warwick.net/~ryan /wrt54g-v4/v4_sd_done.html,它提供了非常翔实的资料,只要您有一些焊接知识,完全可以自己动手搞定。

增加MMC/SD仅仅是冰山一角,清看看这里http://wiki.openwrt.org/OpenWrtDocs/Customizing, 看看那些疯狂的玩家都对WRT-54G干了些什么,难以置信!有人为WRT-54G增加了音箱,有人为它增加了LCD,甚至有人将外壳拆了,将电路板装在 遥控车上,实现了真正意义上的“无限你的无线”

是否还有意犹未尽的感觉?五百来块钱的东西可以提供如此丰富的特性实属难得,我们既可以拿来学习计算机网络和linux知识,又可以拿来构建企业 网,朋友们,还等什么,还不赶紧买多几台回去玩玩!

继续阅读

留下评论