当前位置: 首页 > news >正文

地方门户类网站产品推广哪个网站可以做链接

地方门户类网站产品推广,哪个网站可以做链接,网站备案查询背景布,a站免费最好看的电影片推荐什么是Netfilter/iptableNetfilter/iptables是Linux内核内置的报文过滤框架#xff0c;程序可以通过该框架完成报文过滤、地址转换(NAT)以及连接跟踪等功能。Netfilter/iptables由两部分组成#xff0c;一部分是Netfilter的钩子(hook)#xff0c;这些钩子…什么是Netfilter/iptableNetfilter/iptables是Linux内核内置的报文过滤框架程序可以通过该框架完成报文过滤、地址转换(NAT)以及连接跟踪等功能。Netfilter/iptables由两部分组成一部分是Netfilter的钩子(hook)这些钩子由Linux内核协议栈提供内核模块可以通过注册钩子来完成各种各样的功能。 另一部分是iptables的规则这些规则规定了钩子如何工作。下图很直观的说明了用户空间的iptables和内核空间的ip_tables模块、Netfilter之间的关系。NetfilterNetfilter是嵌入Linux内核协议栈的设置在报文处理路径上的一系列调用入口。 Netfilter一共有5个钩子设置在IP协议栈的报文处理路径上这5个钩子就是内嵌在内核协议栈的检查点。 我们可以把处理函数注册到各个检查点当报文经过各个检查点时就可以通过钩子函数对报文进行处理完成相应功能。下图说明了5个钩子在内核协议栈的位置。钩子的存储及管理机制在内核中钩子函数由一个全局二维数组nf_hooks按照协议族归类存储在每个协议族中根据钩子点顺序排列在钩子点内则根据钩子函数的优先级排列。 例如ipv4和ipv6就是两个协议族每个协议族都包含5个钩子每个钩子下面保存了注册在这个钩子上的函数地址。这个二维数组的每一项代表了一个钩子被调用的点NF_PROTO代表协议栈NF_HOOK代表协议栈中某个路径点。所有模块都可以通过nf_register_hook()函数将一个钩子函数挂入想要被调用点的链表中(通过Protocol和hook指定一个点)。 这样该钩子函数就能够处理从指定Protocol和指定hook点流过的数据包。Netfilter在不同协议栈的不同点上放置钩子函数当数据包经过某个协议栈(NF_PROTO)的某个点(NF_HOOK)时该协议栈会通过NF_HOOK()函数调用对应钩子链表(nf_hooks[NF_PROTO][NF_HOOK])中注册的每一个钩子项来处理该数据包。Netfilter定义了每个钩子函数的返回值每个钩子函数只能返回下面的返回值而不能自定义返回值。NF_DROP(0)数据包被丢弃即不被下一个钩子函数处理同时也不再被协议栈处理并释放数据包。NF_ACCEPT(1)数据包被接受即交给下一个钩子或协议栈继续处理。NF_STOLEN(2)数据包被停止处理即不被下一个钩子函数处理同时也不再被协议栈处理但不释放数据包。NF_QUEUE(3)将数据包交给nf_queue子系统处理即不被下一个钩子函数处理同时也不再被协议栈处理也不释放数据包。NF_REPEAT(4)数据包将被该返回值的钩子函数再次处理一遍。NF_STOP(5): 数据包停止被该HOOK点的后续钩子函数处理交给协议栈继续处理。钩子的使用方法钩子的使用首先实例化一个nf_hook_ops对象然后对其进行必要的初始化设置最后通过nf_register_hook()函数将其注册到二维数组nf_hooks中。 我们首先初始化nf_hook_ops中的常用字段static struct nf_hook_ops nf_hook_test_ops {.hook test_hook_func;.hooknum NF_INET_PRE_ROUTING;.pf PF_INET;.owner THIS_MODULE;.priority NF_IP_PRI_FIRST;}其中hook是钩子函数hooknum是钩子点pf是协议栈priority是钩子函数的优先级然后在模块加载和退出函数中注册和移除钩子函数int init_module(void){nf_register_hook(nf_hook_test_ops);}void cleanup_module(){nf_unregister_hook(nf_hook_test_ops);}下面是回调函数的声明static unsigned int test_hook(unsigned int hooknum, struct sk_buff *skb,const struct net_device *in, const struct net_device *out,int (*okfn)(struct sk_buff*)从上述过程可以看出钩子函数的使用与iptables没有任何关系也就是说如果某个模块需要对协议栈的报文进行处理但不需要用户空间的参数那么完全可以只注册钩子函数而不需要编写iptables的模块。即使需要用户空间的参数也可以通过proc或者netlink等其他用户态和内核态通信方式来传递参数这样就可以更灵活的使用Netfilter了。参考资料
http://www.pierceye.com/news/148557/

相关文章:

  • 韩国美容网站 模板互联网大赛官网入口
  • 太原网站开发哪家好wordpress怎么贴代码
  • 深圳网站设计与制作网站建设公司海南
  • 做网站需要什么cailiao网站项目申报书建设规模
  • wordpress手机网站模板wordpress分类设置seo
  • 哪个网站设计好互助网站制作公司
  • 网站建设评估报告惠民建设局网站
  • 网站后台上传模板aspnet网站开发实例论文
  • 顺德公司做网站网站美工和网页设计的区别
  • 江苏建设造价信息网站山东丽天建设集团网站
  • 兰州网站建设程序wordpress自动超链接
  • zencart网站模板下载怎么自己建立网站及建立网站方法
  • 孝感市门户网站各大网站怎么把世界杯做头条
  • 手机端网站开发视频教程怎么制作爆米花教程
  • 温岭做网站公司开发一个企业官网多少钱
  • 宿迁明远建设有限公司网站赣州58同城网招聘找工作
  • 网站未续费到期后打开会怎样wordpress 顶部栏 悬浮
  • 内部优惠券网站怎么做大连网站制作建设
  • 经营虚拟网站策划书福建设备公司网站
  • 网站建设费用明细报价wordpress暗箱
  • 南宁网站建公司电话福州建站服务
  • 有没有什么推荐的网站用 php网站建设打出一首古诗
  • 品牌网站建设浩森宇特wordpress 首页 缩略图
  • 一个主机可以做几个网站域名织梦cms网站更新
  • 知名网站有哪些网站开发是什么环境
  • 哪些网站是用wordpress开发一款视频app多少钱
  • 济南网站定制制作建设项目 环评申报网站
  • 无锡响应式网站设计wordpress站群管理系统
  • 主题网站策划设计书网络营销是什么的一项活动
  • python+网站开发实例教程免费做视频网站