在基于TCP/IP协议的网络结构中,路由器/防火墙的重要性不言而喻。作为伴随着互联网成长的操作系统,Linux在架构路由器/防火墙方面具有天然的优势。LRP源自Linux Router Project(Linux路由器计划),其目标是要实现微内核结构的瘦服务器,用于网关/路由器/防火墙。与发行版Linux架构的路由器相比,LRP路由器显著的优点是系统效率高、硬件成本低。本文以某具体网络拓扑结构为背景,探讨用LRP方案架构路由器/防火墙的过程及其相关问题。
从硬盘启动LRP
一般而言,LRP软件仅用一张软盘便可容纳。其最基本的工作方式是由软盘启动,在内存中建立映像文件系统,并开始工作。系统投入运行后,不再需要该软盘。但实践发现,由于软盘在可靠性、容量等方面的先天不足,在应用中难免会有软盘损坏或功能受限的情形发生。因此,完全可以用硬盘启动取代软盘启动。
首先从http://lrp.steinkuehler.net下载LRP软件,软件名为dachstein-v1.0.2-1680.exe。准备两张空白3英寸软盘,一张格式化为1.44MB,另一张则用刚下载的程序制作成1.68MB的LRP软盘,这就是从软盘启动的LRP。将新制成的软盘上除Linux内核和ldlinux.sys以外的其它文件,复制到1.44MB软盘中,修改其中的配置文件syslinux.cfg,把软盘引导参数“boot=/dev/fd0,msdos”改为硬盘引导参数“boot=/dev/hda1,msdos”。
为了能够从硬盘启动,我们需要一个能够支持硬盘的系统内核linux+IDE.bin,将其从网上下载后改名为Linux。此外,还需要一个Linux引导加载程序syslinux.com,可以从上述网站下载,也可以从http://www.kernel.org/pub/linux/utils/boot/syslinux下载最新的版本。另准备一张MSDOS启动盘,将新内核Linux和syslinux.com复制上去。
现在开始安装LRP。为每个LRP准备一台PC机,CPU至少是486,内存12MB以上。实际选用了P5/100和16MB内存,一块IDE硬盘(容量不必太大,10MB即可),两块网卡(10/100MB)。用DOS启动盘引导机器,执行fdisk命令,确保在硬盘上仅有一个DOS主分区(标记为Active)。待重新引导机器后,执行如下命令:
#format c:
#syslinux -s c:
#copy linux c:
格式化新分区,安装Linux引导加载程序,并将内核文件Linux复制到硬盘。换上1.44MB的LRP软盘,将盘上内容全部复制到硬盘根目录下。至此,LRP软件安装完毕。取出软盘,重启机器,LRP开始引导,待login提示符出现后,键入root,进入LRP系统。
配置网络接口
首先考虑网卡驱动程序。LRP系统已经包含几个常用的网卡驱动程序模块,如3c509、3c59x和eepro100等,但没有包含D-Link 530TX(Rev A1/B1/B2)网卡驱动程序。可以从LRP网站下载一个与内核版本对应的530TX网卡驱动程序,名为via-rhine.o,复制到DOS软盘上。注意,DOS文件名为8+3制,长文件名via-rhine.o最好先改短,如改成via.o。在LRP机器上,插入软盘,执行如下命令:
#mount -t msdos /dev/fd0 /mnt
#cp /mnt/via.o /lib/modules/via-rhine.o
#umount /dev/fd0
将网络驱动模块复制到内存映像文件系统的/lib/modules目录中。注意,每次修改内存映像文件系统都需要及时备份.lrp文件,保存所做的变化。键入lrcfg命令,选择配置选单的“Back-up ramdisk”条目,再选“modules”,备份modules.lrp即可。接着配置驱动程序,选择配置选单的第3项“Package settings”,再选“modules”,编辑/etc/modules文件(也可以在命令行键入命令edit /etc/modules),加入以下两行:
pci-scan
via-rhine
保存退出,并注意备份etc.lrp。