Ipset + Iptables. Варианты. Как будет лучше с точки зрения производительности?
Моя цель, это заблокировать несколько сотен тысяч разных подсетей. Хотел бы узнать, как это можно сделать максимально эффективно с точки зрения производительности.
1 вариант: создать 25 новых цепочек в Iptables и создать 25 списков Ipset (в каждом списке Ipset будет примерно по 5-10 тысяч подсетей)
2 вариант: создать 3 новые цепочки в Iptables и создать 3 списка Ipset (в каждом списке Ipset будет по 60.000 подсетей)
Пример, как это будет работать у меня:
Создаём цепочку в Iptables:
iptables -N RULE_48
Создаём правило. Перебрасываем на проверку все IP начиная с 48.0 и заканчивая 55.0
iptables -A INPUT -s 48.0.0.0/5 -j RULE_48
Добавим правило в цепочку DROP, которое ссылается на список в Ipset
iptables -A RULE_48 -m set --match-set block48 src -j DROP