您好,欢迎来到悍铭数据中心!

新闻中心

转 FREEBSD5.1上用IPFILTER做NAT做网关.

 初期目的:以UNIX里的FREEBSD系统做主机,实现网关功能,提供内网机器上网. 
预期目的:同时实现防火墙FIREWALL的作用. 
前序:我所知的也是目前用的UNIX下实现这个功能的有三种,1,IPFW,2,IPFILTER,3,安装squid等第三方软件.我选择了IPFILTER,简称IPF方法. 
注意:本问是对静态IP的配置,对于PPP/ADSL拨号不适用.但差不多,拨号需要额外设置PPP 
说明:本文中#代表系统提示符,## 解释说明 ###解释说明转行。 
初期目的:以UNIX里的FREEBSD系统做主机,实现网关功能,提供内网机器上网. 
预期目的:同时实现防火墙FIREWALL的作用. 
前序:我所知的也是目前用的UNIX下实现这个功能的有三种,1,IPFW,2,IPFILTER,3,安装squid等第三方软件.我选择了IPFILTER,简称IPF方法. 
注意:本问是对静态IP的配置,对于PPP/ADSL拨号不适用.但差不多,拨号需要额外设置PPP 
说明:本文中#代表系统提示符,## 解释说明 ###解释说明转行。 
开始: 
1、使用双网卡。一块连接外,一块连接内网.连接外网的网卡标识rl1,连接内网的为rl0 
(因为我2块网卡都是REALTEK8139的,所以网卡标识为rl,1和0是两块网卡的区别号) 
2、在/etc/rc.conf中加上: 
ifconfig_rl1="inet 218.92.251.108 netmask 255.225.225.0"  
##(对外网卡的设置,很显然,218.92.251.108为静态IP地址。255.255.255.0子网掩码。不懂?我颠~) 
ifconfig_rl0="inet 192.168.0.1 netmask 255.255.255.0"  
##(对内网卡IP地址以及子网掩码的设置) 
##以上加进rc.conf是为了再每次开机的时候配置好两块网卡的IP地址等。 
firewall_enable="NO" #取消防火墙 
gateway_enable="YES" ##启用网关功能,很显然,很重要。 
named_enable="YES" ##启用DNS名字服务,这样可以让内网通过设置主机做DNS 
natd_enable="YES" ##启用nat功能,很显然,特重要 
natd_interface="rl1" ##设置NAT转发的网卡标识号,rl1为对外连接网卡。相当于###WIN2000里的连接共享设置的那块网卡连接。 
3,设置/etc/ipnat.conf 
map rl1 192.168.0.0/24 -> 218.92.251.108/32 portmap tcp/udp 10000:65000 
map rl1 192.168.0.0/24 -> 218.92.251.108/32 
##以上是设置允许共享连接的内网IP范围,很显然,24精确到最后一位!也就是说###192.168.0.*的子机都可以通过这台主机上网。 
4,设定开机自动执行ipnat。 
#cd /usr/local/etc/rc.d 
#vi runipnat.sh 
##加入以下内容: 
#!/bin/sh 
/sbin/ipnat -f /etc/ipnat.conf 
#chmod 755 runipnat.sh ##权限设为可执行。 
5、设置内核,至关重要! 
因为ipfw和ipfilter不能共存,所以如果要使用ipfilter,必须将内核中有关ipfw的部份注释掉 
#cd /usr/src/sys/i386/conf ##/usr/src/sys/i386/conf是内核文件所在目录 
#cp GENERIC DWOLF ##备份内核文件GENERIC 
#grep -i IPFIREWALL DWOLF ##查找:IPFIREWALL,如果找到,就加"#"注释掉: 
#vi DWOLF ##vi编辑,也可以用ee编辑器 
#options IPFIREWALL 
#options IPDIVERT 
##再加入: 
options IPFILTER 
options IPFILTER_LOG 
##保存! 
#config DWOLF ##检查有没有错误 
#cd /usr/src 
#make kernel KERNCONF=DWOLF ##编译内核 
#reboot 
##重起以后打dmesg查看启动信息,我看到有一条 
IP Filter: v3.4.31 initialized. Default = pass all, Logging = enabled 
#ipnat -l ## 显示ipnat的设定状况

香港云主机