正版免费的企业级路由器的安装和配置
追加修改(2015-07-01 09:41:57):
今天仔细去panabit官网上看了一下说明,发现标准版并不支持“策略管理->流量控制策略中的优先级”,原文中对大家有些误导,抱歉了。
回头我去研究一下有没有其他解决方案。
前前言
本来上一篇《高性能冗余存储服务器的安装配置及性能测试》发表的时候,本篇已经写了七七八八。但是上篇引发的讨论让我有些茫然,很多同学说写的太难,对家用用户完全没有意义。也有说功耗高的,有说闲的**的,还有吐槽**的。
这么多负面的反馈,让我反思还有没有继续写下去的必要。后来我想明白了,他人的天堂,往往是自己的地狱。大多数人,喜欢拿自己的想法去要求别人,又反过来拿别人的想法要求自己,最后都忘记了初衷。坚持把一件自己觉得有意义的事做好才是最重要的。如果与此同时,哪怕只能让一个人有所收获,也是再好不过的了。
前言
这一篇主要讲如何利用All in One Home Server实现企业级路由需求。相信本篇一定会比上一篇招来更多的吐槽,善哉善哉!
其实,家用路由器在中国家庭中已经相当普及了。家用路由器的牌子很多,从销量最大的TP-LINK,到洋品牌的NetGear,Cisco,再到新进的小米(最近小米的404门也是够热闹的),360(一提360路由,不由得不想起孕妇模式....)等。价格呢,从几十元到几百元乃至上千,不一而足。从京东路由器的销量上可以看出,大多数家庭用的是150元以下较为低端的路由器。
还有一小部分有一定追求的同学(我估计这部分中很多都潜伏在张大妈),会去研究路由器的规格,比如主芯片的CPU性能,内存大小,天线多少,以及能否刷各种第三方固件(TOMATO,DD-WRT,Open-WRT....)。其实,家用路由器的处理器速度在500Mhz左右,内存不小于128M,应该就能够满足99%的家庭需要。比如我用了一年多的Netgear WNDR3700 V4(刷DD-WRT),就是不错的选择。
NETGEAR 网件 WNDR3700 无线路由器(双频、千兆、USB)双频千兆再特价,V3/V4随机发货,收到V3可要求退换货。WNDR3700是网件NETGEAR旗下的经典款无线路由器,多年的畅销款,这款V4版CPU和内存全面升级,550MH...而*级的家用路由器,如Netgear R8000(处理器ARMv7双核1GHz),或是Buffalo WXR-1900DHP(内存512M),简直可以说是Bigger爆表,是小众中的小众了。
钻石用户APP端:NETGEAR 美国网件 X6 R8000 AC3200 无线路由器旗舰新低!网件新一代旗舰级家用路由器R8000,是R7000的后续机种,理论无线网络速率可以达到3200Mbps。采用博通的5GWiFiXStream解决方案,采用了最高可...然而我下面要介绍的,那可是比小众中的小众还要小众的玩法:利用虚拟化,几乎无成本的(应该算是利用闲置资源)构建正版且免费的企业级路由器,同时以满足各种可(奇)能(葩)的要求。
家里有各家宽带N路,要用到同时支持多个WAN口的路由器。
家中人口众多,或者经营一个小公司,有几十个终端设备同时使用宽带。大家相互影响以至于无法正常提供网络服务。需要路由器具备很强的QoS(网络服务质量)处理能力。
统一的科学上网方式,不需要单个终端进行配置。
强大的防火墙功能。(家里有用吗?)
各种VPN功能。
利用dnsmasq做域名劫持,帮助Apple TV链接国内源。
......只有想不到,没有做不到??......
类似的方案有很多,我选择的是pfSense+panabit。
pfSense是一个基于FreeBSD,专为防火墙和路由器功能定制的开源版本,并以可靠性著称。在软路由中,pfSense的性能可能算不上顶尖(但绝对够用了),最大的优点是防火墙功能非常给力。
panabit同样基于FreeBSD,是一个流处理能力超强(据说可以到双向40G转发能力)的流控系统,有很全的应用匹配规则。
pfSense和panabit分工协作:pfSense负责路由和防火墙功能,panabit负责做业务流识别,整形和优先级调度。最给力的是两者都有免费版本,没有侵权风险,还不用焦虑升级问题!!!功能强大不花钱,相当于科学家会武术,流氓都挡不住!肯定会有不少同学推荐RouteOS,海蜘蛛,Wayos等,这些软路由都非常不错,不过这些要么没有官方的免费版本,要么偶尔才会有免费license提供,这里就不推荐了。
方案简介
网络大致的连接方案如下:
如果不使用虚拟化,改为在一台物理机上安装pfSense+panabit。需要系统提供6个网口,结构如下:
但是如果用ESXi做虚拟化,只需要两个物理网口就可以了。而且可以把两套系统完美分隔开,结构如下:
利用存储服务器的硬件,几乎可以无成本的就可以搭建这套企业级的路由服务器。
ESXi真乃神器也!!
第一步、更改ESXi虚拟交换机的配置
为了pfSense虚拟机可以工作在网桥模式,需要先使能vSwitch0和vSwitch1的混杂模式。
第二步、panabit 的安装和配置
由于方案限制,在没有安装好panabit之前,从内网是无法连接到pfSense的内网口的。所以,为了简单起见,我们先安装panabit,再安装pfSense。
pfSense路由器其实带了很强的队列调度和流量整形的功能,不过相比panabit就是小巫见大巫了。专业的事,应该交给更专业的选手来做。
panabit有一键安装版下载,下载地址。但是由于这个版本是超精简版本,导致安装VMWareTools会非常麻烦。怕折腾的同学请选择这个,可以跳过第一至第三步(不过我建议,既然你已经开始折腾了,就再坚持一下下吧)。对于不折腾不舒服斯基,推荐先安装一个标准的FreeBSD(一定要安装32位版本,panabit还不支持64位系统),再安装panabit。FreeBSD9.3 32位下载地址,panabit升级包下载地址。
A. 安装FreeBSD9.3
安装FreeBSD虚拟机的方法和安装其他虚拟机是相似的,就不一一说了。磁盘分配3G,内存1G,网卡分配3个。
此外在选择FreeBSD组件时,一定要选上ports,为后期安装Perl语言以及VMWareTools做准备。
使能SSHD(随后需要用SSHD上传panabit升级包)。
安装完系统需要重启虚拟机。
B. 安装VMWareTools(对于ESXi,每个虚拟机总是推荐要安装VMWareTools的)
安装perl和compat6x库(此时虚拟机需要联网,由于这个时候pfSense还没有配置好,请保持原来的路由器处于工作状态)
cd /usr/ports/lang/perl5.18
make install clean
cd /usr/ports/misc/compat6x
make install clean
FreeBSD系统安装VMWareTools
mkdir -p /cdrom
mount -t cd9660 /dev/cd0 /cdrom
cd /tmp
tar zxf /cdrom/vmware-freebsd-tools.tar.gz
umount /cdrom
cd vmware-tools-distrib
./vmware-install.pl
判断VMWareTools是否安装好了
C. 安装最新的panabit升级包
先修改FreeBSD的ssh配置,使得可以使用root用户登录。编辑/etc/ssh/sshd_config文件,将一行“#PermitRootLogin no”修改为“PermitRootLogin yes”。然后下发命令“/etc/rc.d/sshd reload”重启sshd服务。
通过WinScp(使用root的帐号和密码)将最新的panabit升级包(目前是PanabitFREE_SANGUOr9_20150325_FreeBSD9.2_dev.tar.gz)上传到虚拟机的/tmp目录。
执行下面的黑体命令,安装panabit升级包。
编辑/etc/rc.local文件,添加一行“/usr/panabit/bin/ipectrl start”。
cd /tmp
tar zxf PanabitFREE_SANGUOr9_20150325_FreeBSD9.2_dev.tar.gz
cd PanabitFREE_SANGUOr9_20150325_FreeBSD9.2_dev
./ipeinstall
D. panabit的配置
管理接口分配IP,然后就可以通过“https://ip/” 来配置panabit了。默认的用户名为:admin,和密码为:panabit。
配置上行和下行数据接口,选择“网桥1”,同时注意不要把内网口和外网口配反了。
panabit关于网络服务质量的配置非常多。下面先讲一个非常简单的用法,更多的用法大家自己去研究吧。针对不同的网络应用,配置不同的优先级。
panabit支持非常多种网络应用的识别,多到我感觉有点多余的地步,试着摘了一部分。
首先添加一个高优先级的应用协议组“上网”,应用识别->自定义协议组->创建协议组,给协议组起个名字,然后点击提交。
为该协议组添加应用,有各种你想得到想不到的应用可选。我添加的应用有:DNS,电子邮件,其他HTTPS,WWW,Flash,Web音乐,HTTP代理和网络支付。
再添加一个低优先级的应用协议组“受限协议”,添加如下应用。
在策略管理中增加一个数据通道“NetWork”,按照办理的宽带带宽,配置通道带宽。
为该通道编辑每个优先级调度的保证带宽。按照我的理解,最高优先级调度不需要配置保证带宽,只需要为低优先级调度配置一个较小的保证带宽即可(为了低优先级调度不至于被饿死)。我的配置里,只用了1和6两个优先级,家里是50M光纤,所以就为优先级6配置10M的保证带宽。
在策略管理里创建一个策略组“优先级调度”。
为这个策略组添加策略,将下行的“上网”协议的优先级设置为1,放到数据通道“Network”中。
将下行的“受限协议”协议的优先级设置为6,放到数据通道“Network”中。配置完,如下图。
最后在策略调度中,将“优先级调度”设置为缺省策略组。
这样,一个最简单的调度规则就可以使用了。
第三步,pfSense
A. 下载和安装
下载地址,对于64位CPU,请下载AMD64(64-bit)的Live CD with installer,目前最新版本为2.2.3。将下载的ISO文件上传到加载到ESXi的数据存储器上。
通过vSphere Client创建新的虚拟机。配置:选择“自定义”;虚拟机版本:选择“版本:8”;客户机操作系统,选择“其他->FreeBSB(32位)”;CPU分配1个;内存分配1G;网卡分配3个(全部选E1000模式,pfSense系统默认第一个口是WAN口,第二个口是LAN口,为了简单起见,就按照这样配);磁盘分配1G;
将上传的ISO加载到虚拟机的CD驱动器。
启动虚拟机,等待若干分钟后,会提示安装系统到硬盘,输入99。后面的步骤就不赘述了(一页一页截屏太辛苦了),安装好会提重启。
重启后系统默认WAN1用动态DHCP IP,LAN口IP是192.168.1.1。选择Option2,把LAN口的默认IP改为自己想要的地址,比如我用的是192.168.18.1,同时启动LAN口的DHCP和webConfigurator。
B. 配置
通过web登录到“IP:80”来管理pfSense路由器,默认的登录用户是admin,密码是pfsense。第一次登陆,会有一个用户指引,帮助你完成最初的配置。
Hostname随便配。
设置时间同步服务器和时区,这一步还是比较重要的,不配对有可能造成无法升级或安装扩展包。
配置WAN口,根据自家运营商的情况配。一般ADSL是PPPoE,光纤接入很多都是DHCP了。
配置LAN口IP和掩码
更改pfSense的密码
点击Reload,路由器就可以使用了。
此时,请一定要安装VMWareTools。方法是:通过web登录路由器,点击 System>Packages。然后在“Available Packages”中选择“Open-VM-Tools”,并点击安装。(有可能需要disble WAN口的IPv6才行)。
关于其他配置和应用,有详细的教程,请看这篇(中文)~~以及这篇(英文,官方)。
补充说明:
注1:关于多WAN的配置,请看这篇。由于我家里只有电信宽带,而且不支持多拨。没有实践没有发言权,所以这一块就不说了。
注3:关于如何解决DNS污染,这个正好也是搞虚拟机的长项,不过讲讲也要一篇文章了。个人感觉目前这个问题还不算是大家的痛点,那就有空再写吧。
总结
写了半天,怎么才能体现出pfSense+panabit的优越性呢?想了半天,还真不好写。
最后还是举个例子吧。本人目前在某公司的杭州分部工作。一共十来个人,一共有二三十个终端设备(电脑+手机)的上网需求。由于人数比较少,所以总部一直没有给我们配专用的企业路由器,而是拿一个家用路由器凑合着用(屌丝公司......)。于是时不时就会发生网络没响应,或者路由器死机的情况,民怨极大。
自从我上个月引入了ESXi+pfSense+panabit的组合(硬件是7年前的Q35+E8400),十几个人挤一个4M的小水管,居然再也没有发生过网络不可用的故障。即使有多个人同时下载,也不会影响上网查询资料。好评率爆棚啊!!
下面是一些panabit的统计截图:
老实说,这篇文章只讲到了一些皮毛,仅供入门而已。网上有各路大神对pfSense和panabit的各种玩法,建议大家上网搜搜,保证能够大开眼界。
下篇预告,All in One Server添加HTPC功能。







































校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
而且,这是一个以消费拉动的网站、论坛。并不是专业的相关论坛。所以对于某些喷子,楼主还是表那么上心的好
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
不支持网卡驱动的原因?网卡驱动是网上找的8111e。。。
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案
校验提示文案