Duangw

router

操作系统版本:Slackware 12.2

 

1 硬件

配置4块网卡,分别映射到/dev/vmnet0、/dev/vmnet3、/dev/vmnet6、/dev/vmnet9。

 

2 安装基础系统

只安装a/目录下的软件包,全部安装。

配置lilo,安装在MBR中。

 

3 安装基本网络包

从光盘安装:

# mount /dev/cdrom /mnt
# cd /mnt/slackware/n
# installpkg iputils-s20070202-i486-2.tgz
# installpkg net-tools-1.60-i486-2.tgz
# installpkg network-scripts-12.2-noarch-4.tgz

 

4 配置网络

执行netconfig配置网络:

# netconfig

netconfig只能配置第一块网卡,其余3块编辑/etc/rc.d/rc.inet1.conf手工设置:

...
# Config information for eth1:
IPADDR[1]="172.16.0.1"
NETMASK[1]="255.255.255.0"
USE_DHCP[1]=""
DHCP_HOSTNAME[1]=""

# Config information for eth2:
IPADDR[2]="172.17.0.1"
NETMASK[2]="255.255.255.0"
USE_DHCP[2]=""
DHCP_HOSTNAME[2]=""

# Config information for eth3:
IPADDR[3]="172.18.0.1"
NETMASK[3]="255.255.255.0"
USE_DHCP[3]=""
DHCP_HOSTNAME[3]=""
...

 

5 配置软件源

这里使用slackpkg工具来进行后续的软件包管理。

首先安装slackpkg和依赖的软件:

# mount /dev/cdrom /mnt
# cd /mnt/slackware/ap
# installpkg slackpkg-2.70.5-noarch-1.tgz
# installpkg diffutils-2.8.1-i486-3.tgz
# cd ../n
# installpkg gnupg-1.4.9-i486-1.tgz
# installpkg gnupg2-2.0.9-i486-1.tgz
# installpkg wget-1.11.4-i486-1.tgz

编辑/etc/slackpkg/mirrors,添加本地镜像:

ftp://172.16.0.199/pub/slackware/slackware-12.2/

初始化:

# slackpkg update
# slackpkg update gpg

修补当前系统:

# slackpkg upgrade-all

 

6 切换为generic内核

制作initrd:

# cd /boot
# mkinitrd -c -k 2.6.27.7-smp -m ext3:scsi_transport_spi:mptbase:mptscsih:mptspi

编辑/etc/lilo.conf,添加启动项:

image = /boot/vmlinuz-generic-smp-2.6.27.7-smp
  initrd = /boot/initrd.gz
  root = /dev/sda1
  label = Generic
  read-only

运行lilo,使之生效:

# /sbin/lilo

重启系统。

 

7 安装其他工具

# slackpkg install tcpdump
# slackpkg install iptables

 

8 打开IP转发

# chmod +x /etc/rc.d/rc.ip_forward

 

9 配置路由

编辑/etc/rc.d/rc.local,增加路由:

route add -net 10.10.10.0 netmask 255.255.255.0 gw 172.16.0.10
route add -net 10.10.20.0 netmask 255.255.255.0 gw 172.16.0.10
route add -net 10.20.10.0 netmask 255.255.255.0 gw 172.17.0.10
route add -net 10.20.20.0 netmask 255.255.255.0 gw 172.17.0.10

注意:当home-gate和away-get启用NAT之后,需要删除这些路由。

 

10 配置nat

编辑/etc/rc.d/rc.local,打开nat,以便一些out-server能访问物理外网:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE