玩转高性能超猛防火墙nf-HiPAC

玩转高性能超猛防火墙nf-HiPAC
摘要由CSDN通过智能技术生成
                中华国学,用英文讲的,稀里糊涂听了个大概,不得不佩服西方人的缜密的逻辑思维,竟然把玄之又玄的道家思想说的跟牛顿定律一般,佩服。归家,又收到了邮件,还是关于nf-hipac的,不知不觉就想彻底整理一篇文章说个明白,可是哪有个够啊哪有个够。
       匆匆吃完晚饭,碗也没刷,餐桌狼藉,家人都在看电视,玩手机,小小依然捧着iPad...我的摊子如下:




       如果说理论分析不足以镇住人,或者说一上来就讲理论可能把人吓跑,还是先来点感官上的体验吧。

0.感官感受

执行下面的命令:
for((i=1;i<100;i++));do for((j=1;j<100;j++)); do iptables -A INPUT -s $i.10.193.$j -j DROP;done; donefor((i=1;i<100;i++));do for((j=1;j<100;j++)); do iptables -A INPUT -s $i.11.192.$j -j DROP;done; done

系统中添加了将近20000条的iptables规则,iperf的测试结果如下:



下面我来试一下nf-hipac,由于nf-hipac的命令语法和iptables基本兼容,因此按照下面的命令执行:
for((i=1;i<100;i++));do for((j=1;j<100;j++)); do nf-hipac -A INPUT -s $i.10.193.$j -j DROP;done; donefor((i=1;i<100;i++));do for((j=1;j<100;j++)); do nf-hipac -A INPUT -s $i.11.192.$j -j DROP;done; done

如此一来,系统中添加了将近2000条nf-hipac规则,iperf的测试结果如下:




二者的对比相当明显,最后我们来看一下既没有iptables又没有nf-hipac规则的时候,iperf的结果:




显而易见,nf-hipac加载20000个条目的结果和裸奔的结果是几乎一致的,这是多么令人兴奋的一件事啊!

1.如何使用nf-hipac

1.0.确认内核版本

很不幸,nf-hipac并非以一个可加载的内核模块存在,它是内核的一个patch。需要重新配置内核和重新编译内核才能使用它。除此之外,它对内核版本特别挑剔,官网可下载的最新版本早在2005年就终结了,因此它只是在2.6.13内核版本上可用(说是14,15,16,18都可以,我没有试)。因此我不得不退回到Debian4上去,然后在 kernel.org上下载一个2.6.13版本的内核并着手nf-hipac的编译工作。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
nf-HiPAC能十分高效的在linux 2.4的netfilter构架下执行包过滤。它一个用户空间工具,称作“nf-HiPAC”,它被设计为完美兼容'iptables -t filter'。 'nf- hipac'和使用相同的钩子钩在linux 2.4核心的网络栈中,'iptables -t filter'也一样做。用户空间的工具能定义每一个规则在一个数组成的分类器中,能随意对某一连接产生作用。最大的优势在于能够兼容iptables, 用户能够充分按iptables的语法进行设置。 你或许会问:“为什么要使用另外一个包过滤器?” 最短最好的回答是:“性能!” iptables,象更多的包过滤,使用一个简单的包分类算法,对线性的穿过一个链中的每一个包在进行匹配(非)一个规则。明显的,这个方法缺乏效率。 nf-HiPAC ,提供一个新颖包分类的架构。当查找每一个包的时候使用一个高级算法来减少内存占用。在一个有特别多的规则和高带宽的网络中nf-HiPAC表现十分完美。 功能: 充分优化以实现适度内存占用和高性能的包分类 完全动态: 当插入或者删除规则时数据结构没有重建,高速更新成为可能。 在规则更新时,只很短暂时间的锁定,包匹配没有锁定。 支持64位体系。 优化核心用户空间协议(netlink),改良列表速度。 libnfhipac: netlink library for kernel-user communication 原始匹配支持: 源/目的 ip in/out 网络界面 协议 (udp, tcp, icmp) 包分段 源/目的 端口 (udp, tcp) icmp 类型 tcp 标记 ttl 连接状态匹配 match negation ("!") iptables 兼容: 语法和语义同iptables十分相似。 nf-HiPAC和iptables二者可以同时使用 安装需要环境: linux 2.6.26.5 内核源代码 iptables 1.4.4 源代码

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值