Netfilter,在Linux内核中的一个软件框架,用于管理网络数据包。不仅具有网络地址转换(NAT)的功能,也具备数据包内容修改、以及数据包过滤等防火墙功能。利用运作于用户空间的应用软件,如iptablesnftablesebtablesarptables等,来控制Netfilter,系统管理者可以管理通过Linux操作系统的各种网络数据包。1990年代,Netfilter在Linux 2.3.15版时进入Linux内核,正式应用于Linux 2.4版。

Netfilter
编程语言C语言
操作系统Linux
类型
许可协议GNU通用公共许可证
网站netfilter.org

现今许多市面上许多的IP分享器或无线网络路由器(Wireless router),多是嵌入式Linux平台,并利用Netfilter的数据包处理能力,提供NAT以及防火墙的功能。此外,Netfilter平台的模块化设计使得功能具可扩展性,以及Linux核心本身属于开放的原始码,能够免费获取原始码进行修改与扩展。Netfilter平台中制定了五个数据包的挂载点(Hook),分别是PRE_ROUTING、INPUT、OUTPUT、FORWARD与POST_ROUTING。

网络数据包通过Netfilter时的工作流向

历史

参考资料

  • 学术会议论文:结合深度数据包检测之网络区域联防机制,第十七届移动计算研讨会,桃园,台湾,2012

外部链接