Howto Ipset

Иногда не работает iptables -j SET --add-set

При создании ipset всегда нужно указывать параметры: «family inet hashsize 65536 maxelem 65536», например:

ipset create mylist hash:ip,port family inet hashsize 65536 maxelem 65536

В противном случае, добавляет через раз. Почему - неизвестно. Например проблема проявляется вот так:

-A mytable -p tcp -j SET --add-set mylist dst,dst 
-A mytable -p tcp -m set ! --match-set mylist dst,dst -j SET --add-set mylist dst,dst 
-A mytable -p tcp -m set ! --match-set mylist dst,dst -j SET --add-set mylist dst,dst 
-A mytable -p tcp -m set ! --match-set mylist dst,dst -j SET --add-set mylist dst,dst 

при этом большая часть пакетов попадает в нижние правила, что неправильно. И часть адресов не попадает в ipset вообще никогда, значит не связано с параллельной обработкой.

~~OWNERAPPROVE~~

Прочитал howto howto ipset
Yes(6) No(0) Clear

Yes:
Krat Nikolay, Олег Стрижеченко, Сергей Трошин, , Alexander Sobyanin, Наумов Михаил,

No:

Олег СтрижеченкоОлег Стрижеченко, 02.10.2018 05:50

Мб достигает maxelem? Его можно указывать больше 65536.

adminadmin, 08.10.2018 05:48

нет проблема не в maxelem

мы не стали искать в чем проблема, скорей всего что то типа try_lock and skip

решение рабочее hashsize = maxelem

Ваш комментарий. Вики-синтаксис разрешён: