比较来自世界各地的卖家的域名和 IT 服务价格

减缓规则 netfilter

我有一个支持隧道的脚本 gre 使用工具的防火墙规则 «ip» 和 «iptables». 将数百个隧道和地址设置为界面正常工作。 占用较少 0,1 然而,界面上的秒数,但是,当我尝试执行防火墙规则时,所有时都会减少成本> 0,5 插入。

他为什么这么慢地工作? 我该怎么做才能提高速度?

看起来我可以尝试 ipset, 但我真的觉得核心或其他东西有问题。 有趣的是,第一个 10 规则很快工作,然后减速 ..

mybox(root) foo# iptables -V
iptables v1.3.5
mybox(root) foo# uname -a
Linux foo 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
mybox(root) foo# cat test.sh
#!/bin/sh

for n in {1..100}
do
/sbin/iptables -A OUTPUT -s ${n} -j ACCEPT
/sbin/iptables -D OUTPUT -s ${n} -j ACCEPT
done
mybox(root) foo# time ./test.sh

real 1m38.839s
user 0m0.100s
sys 1m38.724s

问候任何帮助。 欢呼!
已邀请:

石油百科

赞同来自:

第一:

你的核心

高度

过时了。 和你的也是如此

iptables

.

第二:

“问题”是的

每个

称呼

iptables

, 发生了什么:


iptables

将整个表从内核拉入用户空间


iptables

更改用户空间中的表


iptables

将桌面移动到内核空间中

相反,调整自己的

iptables

根据需要的规则集,然后使用它保存

iptables-save > some_file_name

. 在

全部

在命令的帮助下,将在一个恐惧中恢复一组规则。

iptables-restore < some_file_name

.

(当然,更换

some_file_name

使用其中要保存规则集的文件名。)

要回复问题请先登录注册