Netfilter实现机制和扩展技术.docx
《Netfilter实现机制和扩展技术.docx》由会员分享,可在线阅读,更多相关《Netfilter实现机制和扩展技术.docx(23页珍藏版)》请在优知文库上搜索。
1、1.inuxNetfilter实现机制和扩展技术本文从1.inUX网络协议栈中报文的流淌过程分析起先,对1.inUX24.x内核中最流行的防火墙构建平台NetfiItCr进行了深化分析,着重介绍了如何在NCtfiIte1.iPlabIeS机制中进行应用扩展,并在文木给出一个利用扩展Neifille1.iptables实现VPN的方案.2.4.1, 内核相对于2.2.乂在Ip协议栈部分有比较大的改动,Nelmte1.iPlUbleS更是其一大特色,由于它功能强大,并且及内核完备结合,因此快速成为1.inUX平台卜进行网络应用扩展的主要利蹲,这些扩展不仅包括防火墙的实现一这只是NetfiIte1.
2、iPtabIeS的基本功能一还包括各种报文处理工作(如报文加密、报文分类统计等),甚至还可以借助NetfiIte1.iPtableS机制来实现虚拟专用网(VPN。本文将致力于深化剖析NeIfilIer-ipiables的组织结构,并具体介绍如何对其进行扩展。Netfilter目前已在ARP、IPv4和IPv6中实现,考虑到IPv4是目前网络应用的主流,本文仅就IPv4的Notfiker实现进行分析.要想理解NCtfiIter的工作原理,必需从对1.inUXIP报文处理流程的分析起先,NCtfiker正是将自己紧密地构建在这一流程之中的。1. IPPacketFlowingIP协议栈是1.inU
3、X操作系统的主要组成部分,也是1.inUX的特色之一,素以高效桎定著称。Netfilter及IP协议枝是亲密结合在一起的,要想理解Netfilter的工作方式,必需理解IP协议栈是如何对报文进行处理的。下面将通过个经由IPTunnel传输的TCP报文的流淌路径,简要介绍一下IPv4协议栈(IP乂)的结构和报文处理过程。IPTUnnel是2.0.X内核就已经供应f的虚拟局域网技术,它在内核中建立一个虚拟的网络设备,聘正常的报文(其次层)封装在IP报文中,再通过TCP/IP网络进行传送。假如在网关之间建立IPTUnne1.并协作ARP报文的解析,就可以实现虚拟局域网。我们从报文进入IPTunnel
4、设备打算发送起先。1.1 报文发送ipip模块创建tunnel设备(设备名为tunl(tunlx)时,设置报文发送接口(hard_StarjXmit)为ipip_tunn。1.XInit(),流程见下图:图1报文发送流程1. 2报文接收报文接收从网卡驱动程序起先,当网卡收到一个报文时,会产生一个中断,其邪动程序中的中断服务程序将调用确定的接收函数来处理。以下仍以IPTunnel报文为例,网卡驱动程序为de4x50流程分成两个阶段:驶动程序中断股务程序阶段和IP协议栈处理阶段,见下图:图2报文接收流程之驱动程序阶段图3报文接收流程之林议栈阶段假如报文须要转发,则在上图红筋头所指处调用ipforw
5、ard。:图4报文转发流程从上面的潦程可以看出,NetfiIter以NFHooK。的形式出现在报文处理的过程之中。2. NetfilterFrameNetfilter是2.4.x内核引入的,尽管它供应了对2.0.x内核中的ipfw以及2. 2.X内核中的ipchains的兼容,但事实上它的工作和意义远不止于此。从上而对IP报文的流程分析中可以看出NetfiIter和IP报文的处理是完全结合在一起的,同时由下其结构相时独立,又是可以完全剥离的.这种机制也是Netfi1ter-iptabIes既高效又敏捷的保证之一。在剖析NeIfiIIer机制之前,我们还是由浅入深的从NeIfiller的运用起先
6、。2. 1编译在NeIWOrkingOptions中选定NetWOrkpacketfiltering项,并将其下的IP:NetfilterConfiRUiations小节的全部选项设为MOdUIe模式。编译并安装新内核,然后重启,系统的核内NetfiIter就配置好了。以下对相关的内核配置选项稍作说明,也可以参阅编译系统自带的Help:Kcrne1/1.sernet1inksocket建立,一类PF_NET1.INK套接字族,用于核心及用户进程通信.当Netfilter须要运用用户队列来管理某些报文时就要运用这一机制:Networkpacketfiltering(replacesipchain
7、s)1NeIfiIIer主选项,供应Netfilter框架:(Networkpacketfilteringdebugging】NeIfiner主选项的分支,支持更具体的NetfiIter报告:IP:NetfilterConfiguration)此节F是netfilter的各种选项的集合:Connectiontracking(requiredformsqNT)连接跟踪,用于基于连接的报文处理,比如NAT:IPIablessupport(requiredforilleringmsqNT)这是NemIler的框架,NAT等应用的容版:ipchains(2.2-style)Suppoitlipchai
![Netfilter实现机制和扩展技术.docx_第1页](https://www.yzwku.com/fileroot_temp1/2024-6/29/7b412c2a-4d33-4b73-988b-9de9d3630571/7b412c2a-4d33-4b73-988b-9de9d36305711.gif)
![Netfilter实现机制和扩展技术.docx_第2页](https://www.yzwku.com/fileroot_temp1/2024-6/29/7b412c2a-4d33-4b73-988b-9de9d3630571/7b412c2a-4d33-4b73-988b-9de9d36305712.gif)
![Netfilter实现机制和扩展技术.docx_第3页](https://www.yzwku.com/fileroot_temp1/2024-6/29/7b412c2a-4d33-4b73-988b-9de9d3630571/7b412c2a-4d33-4b73-988b-9de9d36305713.gif)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Netfilter 实现 机制 扩展 技术
![提示](https://www.yzwku.com/images/bang_tan.gif)