| |
| 防火墙helper模块的实现,原创 ,欢迎拍砖 |
|
| 来源:
ChinaUnix博客 日期:
2008.06.03 15:41 (共有条评论) 我要评论 |
| |
自己也写一个,目的是为了以后查看方便,看不明白不要丢砖头 ,
ip_conntrack_in ->resolve_nomal_ct ->nf_conntrack_find_get (没有找到) ->init_conntrack ------>find_expection (没有找到) -->contrace->helper = ip_conntrack_helper_find (查找helper) -->help_cmp
help_cmp中调用ip_ct_tuple_mask_cmp将该连接tuple 和helper中的tuple和mask 进行比较 .找到了则填写help函数 .那么下次有包来的时候才有可能nf_conntrack_find_get 中找到记录从而执行helper函数
很重要的是 ,helper中的mask是在初始化help模块的时候在init中填写好的 .比如 ,如果是h323则应该在mask 中填写好目的端口的mask和协议号从而实际连接来了比较的时候就进行端口的比较
ip_conntrack_in是 ip_conntrack模块加载的时候的钩子函数
------草本植物 20080601
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/15071/showart_724794.html
|
| 发表评论
查看评论(共有条评论)
我要提问
|
| |
|
|
|