Advertisement

netfilter练习:根据目的端口过滤出去的数据包

阅读量:

kernel版本 3.10.0-514.el7.x86_64

netfilter框架通过在内核网络协议栈五个处理点注册回调函数,并利用这些回调函数负责数据包过滤、修改和转发

表示回调函数的hook结构体如下:

复制代码
 struct nf_hook_ops {

    
     struct list_head list;    //hook钩子函数双向列表,每一个hook点可以注册多个钩子函数
    
  
    
     /* User fills in from here down. */
    
     nf_hookfn   *hook;  //hook点的钩子函数
    
     struct module   *owner;  //所属模块指针
    
     void        *priv;        //猜测应该是私有数据,2.6.37版本没有这个字段
    
     u_int8_t    pf;  //协议族编号,如ipv4协议: PF_INET
    
     unsigned int    hooknum; //hook点编号,如 NF_INET_POST_ROUTING
    
     /* Hooks are ordered in ascending priority. */
    
     int 

全部评论 (0)

还没有任何评论哟~