在FreeBSD4.3 release上使用IP Filter做NAT

王朝system·作者佚名  2006-11-23
窄屏简体版  字體: |||超大  

在FreeBSD上可以使用ipfw/natd来做NAT及firewall,也可以使用ipfilter来做NAT。

以下介绍使用IP Filter来做NAT

1、使用二块网卡。一块是Realtek 8139C,在内核认到为:rl0(对外),

一块是D-Link 530TX,在内核认到为:vr0(对外)。

2、设置IP地址。在/etc/rc.conf中加上:

ifconfig_rl0="inet 163.163.163.163 netmask 255.225.225.225"

(安装FreeBSD时认到的网卡1,不用添加;163.163.163.163为ISP给你的静态IP地址。

拨号的我没试过。也不知到怎样做,如果哪位知道请告诉我一声。)

ifconfig_vr0="inet 192.168.0.1 netmask 255.255.255.0"(设置第二块网卡的IP地址)

3、修改/etc/rc.conf,改为:

firewall_enable="NO"

gateway_enable="YES"

4、因为ipfw和ipfilter是不能共存的。所以如果要使用ipfilter,必须将内核中有关

ipfw的部份注释掉。

#mkdir /root/kernels

#cd /usr/src/i386/conf

#cp GENERIC /root/kernels/mykernel

#ln -s /root/kernels/mykernel

先在内核的配置文件查找IPFIREWALL,执行:

#grep -i IPFIREWALL /root/kernels/mykernel

如果找到,就注释掉,做法如下:

#options IPFIREWALL

#options IPDIVERT

如果找不到IPFIREWALL,可以直接添加:

options IPFILTER

options IPFILTER_LOG

保存mykernel

#config mykernel

#cd /usr/src

#make buildkernel KERNCONF=mykernel

#make installkernel KERNCONF=mykernel

#reboot

重启进入FreeBSD,如果在开机信息里看到IP Filter 3.4.16 installed 表明内核

已经支持IP Filter。

5、建立ipnat配置文件。

#vi /etc/ipnat.conf

加入:

map rl0 192.168.0.0/24 -> 163.163.163.163/255.225.225.225 portmap tcp/udp 10000:65000

map rl0 192.168.0.0/24 -> 163.163.163.163/255.225.225.225

保存ipnat.conf

6、设定开机自动执行ipnat。在/usr/local/etc/rc.d/目录下建立runipnat.sh

#vi runipnat.sh

加入内容如下:

#!/bin/sh

/sbin/ipnat -f /etc/ipnat.conf

将runipnat.conf设为可执行。

#chmod 755 runipnat.sh

完成后,重新启动机器。

OK!NAT已经做完了。接着就是你自已测试一下。

ipnat -l 会列出目前ipnat的设定及状况

ipnat -C清除ipnat的设定

ipfstat监测数据的流量

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航