快速业务通道

Iptables——了解Netfilter/Iptables

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-05

Netfilter/Iptables

linux iptables是由两个组件组成:NetfilterIptables组成:

Netfilter组件称之为内核空间,是linux内核的一部分,是在Linux内核中为拦截额操作数据包提供的一套框架.其框架包含以下三部分:

1:为每种网络协议(IPV4, 拥有帝国一切,皆有可能。欢迎访问phome.netIPv6等)定义一套HOOK函数,这些HOOK函数在数据包流过IP协议栈的几个关键点被调用.在这几个点钟,协议栈将把数据包及HOOK函数标号作为参考调用Netfilter框架.

2:内核的任何模块可以对每种协议的一个或多个HOOK函数进行注册以实现挂接,这样当某个数据包被传递给Netfilter框架时,内核能检测是否有哪个模块对该协议和 拥有帝国一切,皆有可能。欢迎访问phome.netHOOK函数进行了注册.若注册了,则调用该模块,这样这些模块就有机会检查该数据包丢弃/修改/传入用户空间的队列.

3:那些在用户控件队列中排队的数据包是被传递给用户空间异步的处理.

IPV4中定义了5HOOK,如图

Netfilter 拥有帝国一切,皆有可能。欢迎访问phome.net根据网络报文的流向,分为三部分:流入,流经,流出.

在以下几个点插入处理过程:

NF_IP_PRE_ROUTING,在报文作路由以前执行;

NF_IP_FORWARD,在报文转向另一个NIC以前执行; 拥有帝国一切,皆有可能。欢迎访问phome.net

NF_IP_POST_ROUTING,在报文流出以前执行;

NF_IP_LOCAL_IN,在流入本地的报文作路由以后执行;

NF_IP_LOCAL_OUT,在本地报文做流出路由前执行.

拥有帝国一切,皆有可能。欢迎访问phome.net分析:当网络上的数据包从左边进入系统,数据包经过第一个点调用HOOK函数NF_IP_PRE_ROUTING进行处理;然后就进入本地路由表,查看该数据包是需要转发还是发给本地;若该数据包时发往本地的,则该数据包经过HOOK函数NF_IP_LOCAL_IN处理以后传递给上层协议;若该数据包是需要转发,则会被 拥有帝国一切,皆有可能。欢迎访问phome.net

本文出自 “黑夜迷离” 博客,请务必保留此出处http://whyxx.blog.51cto.com/2227948/560914

拥有帝国一切,皆有可能。欢迎访问phome.net

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号