[发明专利]一种基于netfilter的包过滤器的实现方法在审
申请号: | 202110797863.6 | 申请日: | 2021-07-14 |
公开(公告)号: | CN113489737A | 公开(公告)日: | 2021-10-08 |
发明(设计)人: | 杨振力 | 申请(专利权)人: | 芯河半导体科技(无锡)有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 214135 江苏省无锡市新吴区菱*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 netfilter 过滤器 实现 方法 | ||
1.一种基于netfilter的包过滤器的实现方法,其特征在于,包括以下步骤:
S1:加载数据包过滤模块到Linux内核中,挂载HOOK函数;
S2:用户态通过proc文件系统向内核态添加过滤规则;
S3:Linux内核netfilter的HOOK模块接收网络数据包;
S4:过滤模块进行规则匹配,丢弃匹配成功的数据包,放行匹配失败的数据包。
2.根据权利要求1所述的一种基于netfilter的包过滤器的实现方法,其特征在于,所述步骤S1中的注册点为NF_BR_PRE_ROUTING。
3.根据权利要求1所述的一种基于netfilter的包过滤器的实现方法,其特征在于,所述步骤S2中过滤规则由一个或多个三元组组成,每个三元组包括字节偏移、类型和值,其中:
字节偏移:要过滤字节相对数据包第一个字节的位置偏移;
类型:匹配字节的类型,一个字节或两个字节或四个字节;
值:匹配字节的值。
4.根据权利要求3所述的一种基于netfilter的包过滤器的实现方法,其特征在于,所述每个三元组通过“,”间隔,每个规则之间通过“;”间隔。
5.根据权利要求1所述的一种基于netfilter的包过滤器的实现方法,其特征在于,所述匹配规则在内核态中以尾队列的方式存储,每个规则是尾队列的一个元素,每个元素又是另一个尾队列,其元素是三元组。
6.根据权利要求1-5任一所述的一种基于netfilter的包过滤器的实现方法,其特征在于,所述步骤S4中遍历尾队列,将数据包与每个规则进行匹配,匹配成功就丢弃该数据包,否则就放行数据包。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于芯河半导体科技(无锡)有限公司,未经芯河半导体科技(无锡)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110797863.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于元学习的目标模型与主动查询策略推荐方法
- 下一篇:滚珠混炼螺杆头组