Wie behebe ich diesen Fehler: „ipset v6.11: Hash ist voll, kann keine weiteren Elemente hinzufügen“

Wie behebe ich diesen Fehler: „ipset v6.11: Hash ist voll, kann keine weiteren Elemente hinzufügen“

Wenn ich das Aktualisierungsskript für VoIPBL manuell ausführe, erhalte ich von IPSet diesen Fehler:ipset v6.11: Hash ist voll, es können keine weiteren Elemente hinzugefügt werden. Ich führe es manuell aus, da einige IPs, die auf der schwarzen Liste stehen, anscheinend immer noch durch die Firewall kommen. Den Manpages für ipset zufolge scheint es etwas mit der Erhöhung der Hash-Größe oder der maximalen Anzahl von Elementen zu tun zu haben, aber keines davon scheint bei mir zu funktionieren.

Hier ist die Auflistung für das Set:

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

Dies scheint die Anzahl der Adressen zu sein, die es in den Satz geschafft haben:

CommandMe-> ipset -l |wc -l
65549

Laut Handbuch beträgt die standardmäßige maximale Anzahl von Elementen, die im Set gespeichert werden können, 65536. Ich scheine diese Grenze zu überschreiten, kann aber nicht mehr als 65549 Elemente unterbringen.

Ich habe etwa 80.000 Adressen auf der schwarzen Liste. Bekomme ich diesen Fehler, weil ipset die verbleibenden IPs (65550-80000) nicht im Hash speichern konnte? Kann mir bitte jemand weiterhelfen? Danke!

Antwort1

Das VoIPbl-Skript enthält diese Zeile: ipset create voipbl_temp hash:ipund außerdem:

ipset swap voipbl_temp voipbl
ipset destroy voipbl_temp || true 

Die Änderung der Hash-Größe/maximalen Elemente musste an der Zeile vorgenommen werden, die das voipbl_temp-IPset erstellt.

verwandte Informationen