Страница 1 из 1
ipfw и ограничение колличества сессий
Добавлено: 2009-03-02 19:03:00
skeletor
Есть связка ipfw+ipnat. Есть несколько качков, которые переполняют таблицу ipnat'a. Вопрос, как ограничить количество сессий с помощью ipfw? Пробовал через limit src-addr/dst-addr, но что-то ничего не помогает.
Как всё-таки можно ограничить?
FreeBSD 6.1.
Re: ipfw и ограничение колличества сессий
Добавлено: 2009-03-03 11:19:11
RusBiT
Re: ipfw и ограничение колличества сессий
Добавлено: 2009-03-03 11:43:26
skeletor
Спасибо, но к сожалению я уже так пробовал. И у меня не срабатывает src-addr. Количество коннектов всё равно больше допустимого
Re: ipfw и ограничение колличества сессий
Добавлено: 2009-03-03 18:57:43
RusBiT
Как я понимаю вам надо ограничить по портам, адресам источников и получателей (src-dst-addr-port), тогда смотрите в сторону pf.
Re: ipfw и ограничение колличества сессий
Добавлено: 2009-03-05 10:57:04
schizoid
Код: Выделить всё
/sbin/ipfw add allow ip from any to any via rl0 limit src-addr 40
rl0 - локальный
на каждый ИП из сети не более 40 сессий (UDP и TCP)
работает
Re: ipfw и ограничение колличества сессий
Добавлено: 2009-04-15 18:07:00
RusBiT
Нашел сегодня одного активного торрент пользователя. Решил провести экспримент, ng67 - его интерфейс.
Код: Выделить всё
ipfw add 47 allow log logamount 100 ip from any to any via ng67 limit dst-addr 1
ipfw add 48 allow log logamount 100 ip from any to any via ng67 limit dst-port 1
ipfw add 49 allow log ip from any to any via ng67 limit src-port 1
Но trafshow показывает 170-250 пакетов
Трафик идет. Что не так делаю?
Re: ipfw и ограничение колличества сессий
Добавлено: 2009-04-21 15:32:42
schizoid
а ipfw -d show что говорит?
Re: ipfw и ограничение колличества сессий
Добавлено: 2009-04-21 15:42:55
abanamat
RusBiT писал(а):Но trafshow показывает 170-250 пакетов
Трафик идет. Что не так делаю?
ipfw show 49 счетчик пакетиков ненулевой?
Re: ipfw и ограничение колличества сессий
Добавлено: 2012-12-25 17:35:39
derikpro
Подскажите, похоже что проблема такая же как и у автора темы.
Правила:
Код: Выделить всё
${cmd} add divert 8668 ip from ${NetIn} to any via ${IfOut}
${cmd} add divert 8668 ip from any to ${IpOut} via ${IfOut}
${cmd} add allow all from 10.18.2.0/24 to any
${cmd} add allow all from any to 10.18.2.0/24
Код: Выделить всё
ipfw -d show | grep 10.18.2.0
09700 49 6041 allow ip from 10.18.2.0/24 to any
09800 96 87404 allow ip from any to 10.18.2.0/24
Работает.
---------------------------------------------------------------------------------------
Добавляю лимит и перестает работать. С клиентского компа смотрю что сессии вообще не устанавливаються.
Код: Выделить всё
${cmd} add divert 8668 ip from ${NetIn} to any via ${IfOut}
${cmd} add divert 8668 ip from any to ${IpOut} via ${IfOut}
${cmd} add allow all from 10.18.2.0/24 to any limit dst-addr 50
${cmd} add allow all from any to 10.18.2.0/24
Код: Выделить всё
ipfw -d show | grep 10.18.2.0
09700 108 5440 allow ip from 10.18.2.0/24 to any limit dst-addr 50
09800 16 748 allow ip from any to 10.18.2.0/24
Не работает