软件路由DIY
一、软件安装
1. 认识M0n0wall:
M0n0wall,挺奇怪的软件名, M0n0wall是基于FreeBSD内核的嵌入式的防火墙软件,目前,基于Unix/Linux/BSD的路由软件基本上都是免费,这也是选择该款软件的一个重要原因。M0n0wall对硬件要求很低,486芯片、32M内存,几十兆的硬盘加上双网卡即可正常工作并有相当不错的承受能力。M0n0wall提供界面相当友好的基于web界面的的配置管理,局域网内任何一台同一网段的计算机通过M0n0wall默认IP地址登录Web界面后均可对软件进行管理。M0n0wall还提供VPN功能;支持地址1:1映射、NAT端口映射、路由规则自定义配置、无线网络支持等功能,特别值得推荐的是M0n0wall还增加了大部分硬件路由器未配置的流量控制功能。
2.M0n0wall安装:
在M0n0wall的官方网站http://m0n0.ch/wall/downloads.php可下载M0n0wall软件的映像文件(文件名generic-pc-1.2.img),目前官方网站提供的最新版本为2005年9月11日发布的1.2B10版,考虑到产品的成熟度和稳定性,我选择了1.2B9版。该映像文件支持在Unix/Linux/FreeBSD或WINDOWS下写入硬盘。
FreeBSD下写入语句为:
gzcat generic-pc-1.2.img | dd of=/dev/rad bs=16k
Linux下写入语句为
Gunzip –c generic-pc-1.2.img | dd of=/dev/hd bs=16k
如果到对以上系统不是很熟悉,建议在Windows的cmd模式下写入,官方网站同时提供了Windows下的磁盘写入工具physdiskwrite.exe下载。
将需要安装M0n0wall的硬盘挂接在安装有Windows的计算机的第二个IDE上,M0n0wall的映像文件和磁盘写入文件复制到第一硬盘的同一文件夹,在cmd下进入该目录,执行以下命令:
physdiskwrite –u generic-pc-1.2.img(如下图)
注意参数 –u ,硬盘大于800M时必须带的参数。
M0n0wall会自动寻找物理硬盘,并将显示所有的物理硬盘信息(上图演示只安装了一个硬盘),选择相应的硬盘后回车就可写入。M0n0wall写入时将清除硬盘所有分区信息,所以千万不要选择错误。
把安装有M0n0wall的硬盘安装到做路由的计算机,启动后将自动进入M0n0wall界面。
二、软件配置:
1.网络设置:
学校配外网Web服务器一台,提供Web服务(带虚拟主机)、FTP服务及虚拟主机DNS解析,内网服务器两台,兼作校内FTP及资源库;信息点共500多个,其中教师用计算机200多台,普通教室及功能教室多媒体50多台,四个微机房(各57台)及电子阅览室30多台,已连接电信百兆宽带。网络划分及配置如下:
教师用机及服务器:192.168.1.0网段,要求能使用外网所有资源;
教室多媒体:192.168.2.0网段,要求能使用校内所有资源,平时不开放Internet,教师有需要时单独开放;
微机房:192.168.0.0、192.168.10.1、192.168.20.1、192.168.30.1四个网段,要求能使用外网所有资源,任课教师可单独控制机房网络使用。
根据学校网络配置要求,设计如下网络方案:
软件路由器配置三个网卡,一个连接外网,两个连接校内局域网,分别设置教师用机192.168.1.0网段及教室192.168.2.0网段,微机房为便于课堂控制,均采用一台安装有网络监控软件的服务器代理上网。机房服务器采用双网卡代理上网,其中一个网卡设置192.168.1.0网段IP,另一网卡设置微机房内网IP。
2.硬件配置:
尽管M0n0wall对计算机硬件要求不高,考虑到学校计算机数量多,网络较复杂,采用一台赛扬1.1G、128M内存的联想品牌机,M0n0wall系统中8139网卡表现不尽如人意,最高只能达到60M/s的速度,且连接计算机数量一多时速度会明显变慢,故购置了三块Intel 82559网卡,建议使用Intel或3COM的网卡以获得更好的效果。
如考虑路由器长期运行,IDE硬盘长时间运行因发热等原因易出现故障,故建议不使用IDE硬盘,改用电子硬盘或CF存储卡加CF-IDE转接卡以获得更稳定的性能。M0n0wall只占用硬盘5M左右空间,32M的电子硬盘或CF卡即能满足需要。使用电子硬盘或CF存储卡需在官方网站下载专用的映像文件。
3、路由器设置
(一) 路由器界面
硬件正确连接后即可启动作为路由器的计算机,系统先启动FreeBSD后自动进入M0n0wall界面,如下图,M0n0wall局域网端口默认IP为192.168.1.1,默认状态下会有两个网络连接,分别为sis0和sis1,控制菜单下六项分别为:
1) Interfaces: assign network ports 指定网络端口,即分配网卡地址
2) Set up LAN IP address 设置局域网IP地址
3) Reset webGUI password 重设Web管理密码
4) Reset ti factory defaults 设置为M0n0wall默认值
5) Reboot system 重启系统
其中后四项均可在Web界面设置,此处不再重述。
1) 分配网卡地址
选择1菜单,回车后系统自动寻找网卡并配置端口名称,Intel 82559网卡的端口名为fxp,RTL8139网卡的端口名为rl,530TX网卡端口名为dfe,3COM网卡的端口名为
此处外网端口和内网192.168.1.0网段选用Intel 82559网卡,故端口名分别为fxp0和fxp1(一般情况系统以主板PCI槽位置自动配置为0、1、2、……),192.168.2.0网段选用8139网卡,故端口名为rl0,如果网络已连接,端口名后将出现(up)字样。系统首先要求你配置VLAN,如不需配置可选择N。
下一步输入各网卡的端口,可自动配置也可按需要手动配置,建议根据需要手动配置,此处LAN口配置fxp1网卡,WAN口配置fxp0网卡,OPT1口配置rl0网卡,OPT2不予设置,直接回车即可完成第一项设置。(如下图)
2) 配置LAN口IP
LAN口为Web界面的连接口,如果你的网络采用固定IP,一定要配置成跟你同网段IP,否则无法通过Web连接管理,我校前期配置192.168.1.1为总网关,故此处按默认配置。
配置结束按要求重启路由器。
(二) Web界面基本设置
在任何一台同一网段的计算机上启动浏览器,地址栏输入http://192.168.1.1即可进入M0n0wall的Web管理界面,默认用户名:admin,密码:mono。M0n0wall对固定IP、动态IP、ADSL等拨号的多种方式设置路由,此处以固定IP为例(本例中某些项按默认不需设置,此处略去不详述)。
1) System — General Setup(普通设置)
本栏可设置ISP提供的DNS服务器,修改M0n0wall Web登录界面的用户名和密码,修改登录地址端口等。DNS设置如下图:
2) System — Static routes(静态路由设置)
点击⊕按钮可添加各网段的静态路由,不同网段设置时只要保证Interface的局域网名称跟Destination network的IP段对应即可(M0n0wall中子网掩码用CIDR标记法,常用C类地址掩码相对应的标记数字如下: 255.255.255.0:/24、255.255.255.128:/25、255.255.255.192:/26、255.255.255.224:/27、255.255.255.240:/28、255.255.255.248:/29、255.255.255.252:/30)。
3) Interfaces — LAN (LAN端口IP设置)
本例中设置为192.168.1.1,子网掩码255.255.255.0,CIDR标记为24
4) Interfaces — WAN (WAN端口IP设置)
因为采用静态IP,故Type项选择Static,Mac地址和MTU一般不需设置,在Statin IP configuration中输入电信(或其他ISP)分配给你们的IP地址、子网掩码及网关,网络使用DHCP动态IP的,在DHCP client configuration项输入DHCP服务器名。如果采用其他上网方式,如ADSL拨号,需在PPPoE configuration项输入拨号用户名和密码。
5) Interfaces — OPT1 (OPT1端口IP设置)
本例因采用两个内网卡,且教室192.168.2.1网段也需使用网络资源,故还需对OPT1进行相关设置,勾选Enable Optional 1 interface,在IP地址项输入192.168.2.1。
6) Firewall — Rules (防火墙路由设置)
分别对LAN和OPT1两个网段设置路由,在Firewall:Rules界面选择LAN,按⊕按钮添加一条路由规则,在Edit界面全部按默认配置均可。OPT1同样设置。
至此,M0n0wall路由功能基本设置完毕,两个网段客户机可如此设置:
192.168.1.0网段,IP地址:192.168.1.X 网关:192.168.1.1 DNS服务:192.168.1.1
192.168.2.0网段,IP地址:192.168.2.X 网关:192.168.2.1 DNS服务:192.168.2.1
两网段所有客户机已均能正常上网浏览所有资源。
(三) Web发布、FTP及DNS端口映射
我校校园网有多个网站对外发布,Web主机建有虚拟主机,提供FTP服务及DNS解析
1) Web发布
选择Firewall — NAT,在Inbound项按⊕按钮添加一条NAT,其中其中Interface设置为WAN,Protocol设置为tcp,External port range设置为http,NAT IP设置为192.168.1.2(我校Web服务器IP地址),Local port设置为http,Description(描述信息)设置为WWW Server,最后勾选Auto-add a firewall rule to permit traffic through this NAT rule以自动加入到路由规则,按save键保存后按Apple changes应用。具体设置见下图:
2) FTP、DNS端口映射
FTP、DNS端口映射设置类似Web,只需把External port range项改为FTP或DNS,M0n0wall即会把FTP的21端口和DNS的53端口映射到192.168.1.2地址的计算机的相应端口。
3) 实现局域网内计算机通过域名访问Web和FTP
如上设置后,局域网内计算机还无法通过域名访问本校Web及FTP,需通过DNS转发实现正常访问。
选择Services — DNS forwarder(DNS转发)项,按
Host项:填入主机名
Domain项:填入申请的域名
IP address项:填入Web服务器的IP地址
Description项:如果有多个域名,此处可填入你自己能记住的描述。(如下图)
完成后按save键保存。多个域名或泛域名解析均可按上例添加多个转发规则。
将局域网内计算机的DNS服务器设置为M0n0wall的局域网地址192.168.1.1即可在内网通过域名访问校园网站。
(四) DHCP动态IP地址分配
M0n0wall默认会启动LAN端口的DHCP服务,默认地址池192.168.100~192.168.1.199,如果你的局域网不设置DHCP服务,可不勾选Enable DHCP server on LAN interface前面的选择框取消。也可修改默认设置以适应你的网络。
将M0n0wall设置为DHCP服务器后,可在Diagnostics: DHCP leases项查看通过DHCP自动获得IP的计算机列表。
(五) 流量控制
选择Firewall — Traffic shaper(流量控制);
1) 选择Rules项,勾选Enable traffic shaper(允许流量控制),按save保存(如下图);
2) 选择Pipes项,按⊕按钮添加一条流量控制规则,在Bandwidth项输入需要限制的流量(注意:此处单位为Kbit/s,即1/8KB/s,如限制为500Kbit/s,即500/8KB/s),其余默认即可。如需要对不同计算机分别控制流量,可添加多条控制规则。
3) 返回到Rules项,按⊕添加一条路由规则,Target项选择你所定义的限速规则,Interface 项选择LAN或OPT1(根据限速要求),Protocol选择TCP,如果限制上传,在Source项设置;一般我们用于限制下载,故直接设置Destination项,如果对单一IP限速,选择single host or alias,限某一个网段选network,限整个子网选LANsubnet或OPT1sebnet,完成后按save保存,然后按Apple changes应用即可。
4) 如果你的网络计算机数量不多,想平均分配带宽,可选择Firewall — Traffic shaper下的Magic shaper wizard项,设置下载总速率和上传总速率后更新即可,勾选Set P2P traffic to lowest priority还可使BT、eMule等P2P类软件处于低优先级,先满足一般浏览和下载,多余带宽再分到P2P软件。
(六) 防火墙日志
在Diagnostics — Logs项可以浏览M0n0wall日志,包括system(系统)日志、firewall(防火墙)日志、DHCP日志等,但M0n0wall的日志较简单,且保存量小,如果比较注重日志,可配合专业的日志软件浏览。
推荐使用Wallwatcher日志分析系统, WallWatcher于Windows 98 以上系统. 它具有从路由器和防火墙收集、显示、分析日志信息的功能。支持M0n0wall防火墙。
在M0n0wall的Diagnostics — Logs页面的Settings项作如下设置:
勾选Enable syslog'ing to remote syslog server(允许使用远程日志服务器),在下面的Remote syslog server中输入日志服务器的IP。(如下图)
在 http://www.sonic.net/wallwatcher/ 下载分析系统,需要下载Wallwatcher和its library两个文件,解压到作日志服务器的计算机的同一文件夹后运行setup.exe安装。运行后就会即时记录M0n0wall防火墙的日志。
除上述功能,M0n0wall还可作为一款专业防火墙使用,如添加IP访问限制、控制计算机上网等,特别适合学校、网吧等低资金投入的使用部门。我校安装M0n0wall路由使用一个月来基本正常,速度跟以前使用硬件防火墙无区别,相对于硬件防火墙,M0n0wall的设置更为灵活自由。当然,省钱还是第一的 ~_~
(原创文章,转载请注明“温州教育信息化”或“安实中信息技术网”)









浙公网安备 33010602011771号