我们有一个带有四核AMD Opteron处理器2378的服务器.它充当了几个服务器的防火墙。我被要求阻止中国的所有IP。
在一个单独的网络中,我们有一些小型VPS机器(256 we和512 we)。我也被要求在VPS上阻止中国。
我在网上查了一下,发现了需要4500个区块规则的列表。我的问题是,把所有4500条规则都放进去会是个问题吗?我知道iptable可以处理更多的规则,我关心的是,由于这些块是我不想访问任何端口的,所以我需要将这些规则放在允许之前。这意味着在通过之前,所有合法的流量都需要与所有这些规则进行比较。实施这一措施后,流量会明显减慢吗?那些小的VPS能够处理每一个新包的处理规则吗?(我会在块之前放置一个已建立的允许)吗?
我的问题不是可以支持多少条规则?,而是这些规则对负载和速度的影响。
谢谢。
发布于 2013-10-17 19:22:23
它将支持这么多规则,但您真的不想遍历4500条规则链。
正如@Zoredache所指出的,您也可以二进制拆分链。如果你做得很好,你可以把链的横越数降到13。
最简单的方法是使用ipset。
我使用的是EL6,它提供了对此的支持。显然,我不知道所有的中国网卡,所以我只是填补了垃圾。
ipset create china hash:net
ipset add china 1.2.3.0/24
ipset add china 2.4.0.0/16
ipset add china 123.0.0.0/8
ipset add china 145.12.5.0/24然后向IPtables添加一条规则以匹配该集并删除通信量。
iptables -I INPUT -m set --match-set china src -j DROP这比标准规则链更高效、更快。
https://serverfault.com/questions/546806
复制相似问题