DIY路由器

  cheney

大学时,我们一个宿舍八个人六根网线,当时我就有一个强烈的冲动,要把两个或多个网线合并起来,然后再负载均衡的分配出来,如果能实现,这是何等强大啊~比如说每个人1M的网,6个人6M网,然后再分开,看似每个人还是1M,其实不是了,因为几乎不可能出现六台电脑同时传递消息,所以每个人分时复用了6M的带宽。

踏破铁鞋无觅处

我们虽然拥有很多台路由,尝试了各种结构,修改路由表,结果无非是弄的路由形成回环,指示灯狂闪。我记得当时用的是TP-Link的那种单WAN口路由,完全不可能达到我们的要求。之后了解到网吧什么的都用的是多WAN口的路由,但是每个都贵的要死,最便宜的也要好几千大洋。再然后转区研究软路由,像海蜘蛛之类,没有单独的硬件,然后是想,先在电脑做个虚拟机,然后虚拟机安装海蜘蛛,然后通过海蜘蛛上网。这种方案可能是可行的,之后好像不了了之了。

却在灯火阑珊处

今天才发现这两个东西 Tomato DualWAN 和OpenWrt,真是相见恨晚啊。都是挺早的东西了,但是之前一直就完全不知到,是我孤陋寡闻还是他们隐藏的太好。这两个都是DIY先进的无线路由的好选择。

Tomato DualWAN

Tomato DualWAN是固件,就是已经编译好了的程序,正确下载到硬件就能运行。Tomato DualWAN 能使那些能刷Tomato或DD-WRT固件的路由器由原来的单WAN口变成双WAN口,而这一切不需要在路由器上增加任何硬件,只需要刷一下 Tomato DualWAN 固件就可以。刷了Tomato DualWAN之后转变出来的第二个WAN口可以接有线网络也可以接无线网络,双WAN模式支持带宽合并或智能路由。当然,如果要用双WAN模式,您必须要有两条线路(可以是自己的线路+别人的无线网络)或者有两个宽带帐号,否则无法工作在双WAN模式。

刷了 Tomato DualWAN 的路由器除了具备普通路由器的基本功能以外,还提供如下特色功能:

  • 带宽合并/负载均衡,可以将两条线路的带宽合并实现快速下

  • 智能路由,自动根据目标IP所属ISP选择最优线路出去,加快用户访问速

  • QoS/IP限速,合理分配网络带

  • 设备流量实时查看,了解每台电脑的流量状

  • ARP绑定,可以阻止非法用户使用网

  • IPID防电信网络尖

  • VPN(PPTP)服务器和客户端,可以将分布在不同地方的办公室组成一个局域

  • 支持Apple(Mac OS X)的NAT-PMP(UPnP的另外一种

  • BT脱机下载功能(路由器需要有USB接口),睡觉前或者上班的时候让路由器帮你下载喜欢的游戏或者电影,而不需要开着电

  • Samba服务器(路由器需要有USB接口),提供文件共享功能,以便直接在PC上播放路由器下载好的电

  • FTP服务器(路由器需要有USB接口

  • 3G上网功能(路由器需要有USB接口),插上USB接口的3G上网卡或者智能手机后,路由器就变成一个3G路由器,团队出差的时候多人共享上网很方

  • 上网通告功能

几乎所有想要的功能都有了。真要用起来你首先需要拥有一块支持Tomato DualWAN固件的路由器。Tomato DualWAN固件还分两个不一样的版本,带ND结尾的,和不带ND结尾的。带ND的即NEWD新驱动版只能用于BCM53XX系列CPU 如BCM5325等,不带ND的即VINT旧驱动版只能用于BCM471X系列 CPU 如BCM4712等。我把支持列表也转过来比较方便看:

支持的设备列表(HCL)

关于Tomato DualWAN更详细的资料,请访问 http://www.dualwan.cn/ ,本文资料也来自该网站,如有冲突,以他为准。

OpenWrt

OpenWrt被描述为嵌入式设备上运行的linux系统,而不是纯粹的固件。OpenWrt 的文件系统是可写的,开发者无需在每一次修改后重新编译,令它更像一个小型的 Linux 电脑系统,也加快了开发速度。你会发现无论是 ARM, PowerPC 或 MIPS 的处理器,都有很好的支持。并且附带3000左右的软件包,用户可以方便的自定义功能来制作固件,也可以方便的移植各类功能到OpenWrt下。

对于开发人员,OpenWrt是一个高度模块化、高度自动化的嵌入式Linux系统,拥有强大的网络组件。 它从工具链(toolchain)到linux内核(kernel)到软件包(packages)到根文件系统(rootfs)完全构建好,您只需简单的一个make命令即可。

OpenWrt对各种处理器架构,无论是ARM,X86,PowerPC或者MIPS,都有很好的支持。 并且拥有多达3000多种软件包,用户可以方便快速地定制一个具有特定功能的嵌入式系统来制作固件;OpenWrt模块化设计也可以方便的移植各类功能到OpenWrt下,加快开发速度。

OpenWrt 同样可以拥有 Tomato DualWAN 所有的功能,你可以选择有或者没有,这才是OpenWrt最大的特色。

同时OpenWrt 配置可能要更复杂些,在OpenWrt 的中文论坛会有些帮助。 http://www.openwrt.org.cn/bbs/forum.php

自从发现OpenWrt就忍不住搞了一个RA100A,装OpenWrt-DreamBox 20120513系统。配置方法也不算复杂,但是我当时还是遇到了一些困难。现把配置过程记录如下,包括,内网路由的配置,U盘挂载,swap文件制作,脱机下载,文件共享等。

具体参考 : 我的路由器