如何修复此错误:“ipset v6.11:哈希已满,无法添加更多元素”

如何修复此错误:“ipset v6.11:哈希已满,无法添加更多元素”

当我手动运行 voipbl 的更新脚本时,我从 ipset 收到此错误:ipset v6.11:哈希已满,无法添加更多元素。我手动运行它是因为黑名单上的一些 IP 似乎仍然可以通过防火墙。从 ipset 的手册页来看,它似乎与增加哈希大小或元素的最大数量有关,但这些似乎都不适合我。

以下是该套装的清单:

CommandMe-> ipset voipbl -l
    Name: voipbl
    Type: hash:ip
    Header: family inet hashsize 2048 maxelem 200000
    Size in memory: 16460
    References: 1
    Members:

这似乎是有多少地址进入该组:

CommandMe-> ipset -l |wc -l
65549

手册说可以存储在集合中的默认最大元素数是 65536。我似乎超出了这个限制,但无法获取超过 65549 个元素。

我的黑名单中有大约 80000 个地址。我收到此错误是因为 ipset 无法在哈希中存储剩余的 IP (65550-80000) 吗?有人可以指出我正确的方向吗?谢谢!

答案1

voipbl 脚本包括这一行:ipset create voipbl_temp hash:ip以及:

ipset swap voipbl_temp voipbl
ipset destroy voipbl_temp || true 

需要对创建 voipbl_temp ipset 的行进行哈希大小/最大元素的更改。

相关内容