Страница 1 из 1

ipfw и over 9000 правил

Добавлено: 2013-04-02 12:31:06
AlexZagr
Перечитал разную документацию, но что-то непойму саму суть как сделать что-то типа древовидного файрвола, если такое вообще можно сделать.

Корень проблемы: нужно в ipfw (или другой FreeBSD firewall) добавить около 16000 правил, например

Код: Выделить всё

ipfw add 1000 allow ip from 192.168.0.1 to any
ipfw add 1001 allow ip from 192.168.0.2 to any
ipfw add 1002 deny ip from 192.168.0.3 to any
и т.д. Никакой закономерности в ip нет.

Если добавить такое на ненагруженый сервер то сразу съедается 5% CPU, но если его пригрузить трафиком то CPU ложится уже при 2000 правилах.

Вот я и ломаю голову как сделать, напимер, если сеть 192.168.0.0/24 то перейти к последовательному перебору правил по этой подсети, если нет то проверяем подходит ли ip под следующую подсеть.

Re: ipfw и over 9000 правил

Добавлено: 2013-04-02 12:55:53
dmtr

Код: Выделить всё

ipfw table

не поможет?

Re: ipfw и over 9000 правил

Добавлено: 2013-04-02 13:54:56
skeletor
Нагружается именно в момент добавления правил или в процессе работы? Если в момент добавления, то можете добавлять пачками, например, по 1000 правил.

Re: ipfw и over 9000 правил

Добавлено: 2013-04-02 13:59:58
AlexZagr
dmtr писал(а):

Код: Выделить всё

ipfw table

не поможет?
Стоит написать на форуме как сразу приходит прозрение, да table кажется то что нужно, вот собираюсь проверить под нагрузкой. Незнаю почему вначале откинул это решение.