FreeBSD设置和使用ipfilter(1)

2009-05-13 13:33:06来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

虽然ipfw/natd已经是相当强大的网络地址转换及防火墙系统,然而它还是有一定的缺点存在。其中最重要的一个缺点是natd是使用守护进程的方法来进行地址转换,因为它没有运行在内核中,而是通过divert socket 来和内核通信,这种方式虽然比较灵活,但效率显然要低一些。
  另外,natd的功能还不能满足有些要求,natd能做静态地址转换和使用一个伪装地址为多个内部地址服务,但其不能从一个给定的地址池中,为内部地址自动分配IP地址。毕竟natd是一个较早的网络地址转换工具,当前的发展已经比较迟缓。但是由于ipfw是FreeBSD系统的一部分,并且过滤和地址转换是由不同的部分来完成的,结构清晰,因此对于大部分情况都很适合,因此一般仍应使用ipfw/natd。
  如果ipfw/natd不能满足使用者的需要,能避免ipfw/natd缺点的另一个网络地址转换和数据包过滤的工具是ipfilter。虽然FreeBSD是其支持的主要系统,但它其实是一个支持多平台的独立软件,不仅能运行在FreeBSD上,也能运行在其他多种Unix系统中。由于它被包括进FreeBSD基本系统中,因此在FreeBSD 下配置ipfilter同样也非常轻松。
  ipfilter的网址为http://cheops.anu.edu.au/~avalon/, FreeBSD 3.0之前它不包括在FreeBSD的基本系统中,需要手工设置。
  由于ipfilter与ipfw同为在内核级对IP数据包进行处理的系统,因此他们相互冲突,不能同时并存在一个内核内,否则内核的TCP/IP功能就不能正常执行。为了使用ipfilter,就需要重新定制内核,删除所有 IPFIREWALL的设置,而添加IPFILTER的设置。
#options    IPFIREWALL
#options    IPDIVERT
options    IPFILTER
options    IPFILTER_LOG
  选项IPFILTER为支持IPFILTER的基本代码,IPFILTER_LOG为支持IPFILTER的统计记录能力。需要增加这些选项,并注释IPFIREWALL、IPDIVERT及其相关选项。此后,就可以重新定制、安装新内核。然而在重新启动之前,还需要在rc.conf中设置firewall_enable的值为NO,当系统内核不存在IPFIREALL功能又设置了firewall_enable的时候,启动文件就会自动载入支持这个功能的可加载模块ipfw.ko,载入ipfw.ko之后的系统内核就等同于使用IPFIREWALL内核选项的系统,与 ipfilter发生冲突。然而ipfilter仍然需要设置gateway_enable,以打开系统内核的数据包转发功能。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/66172/showart_545626.html

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:FreeBSD平台安装配置web服务器

下一篇:FreeBSD设置和使用ipfilter(2)