Шейпинг на PF более 1500 клиентов.

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
HEDG_SS
сержант
Сообщения: 198
Зарегистрирован: 2008-11-22 20:37:07

Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение HEDG_SS » 2009-07-01 18:19:04

общем ситуация следующая: Есть сервер, который нарезает полосу порядка 1500+ абонентам на разные скорости и по разным направлениям.
На данный момент нарезкой занимается ipfw, но хочется это переделать на PF. Появилось пару вопросов :
1. Насколько грамотно умеет PF нарезать канал ?
2. Как он себя ведет под большой нагрузкой ?
3. Использует ли его вообще кто-то для шейпинга на провайдерах ? (если можно хоть короткий пример его использования в этом качестве)
4. Насколько компактным получается фаервол . Можно ли как в ipfw запихать несколько сот абонов в один пайп, чтоб каждому нарезалась конкретная полоса?

Так пару мелких вопросов:
1. Как можно в одном правиле указать несколько портов ? (Через запятую, как в ipfw Не работает. Если ставить в {} то разбивает на два отдельных правила, чего очень не хотелось бы)
2. В ipfw можно сделать , чтоб в одной таблице были ip или сети c разными ключами. А можно ли такое сделать в PF ?
Пример вышесказанного

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

europe# ipfw table 7 list |more
172.16.10.25/32 22
172.16.10.27/32 41
172.17.1.3/32 41
172.17.1.5/32 22
172.17.1.6/32 22
172.17.5.3/32 41
172.17.6.6/32 30
172.17.6.8/32 30
...

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение hizel » 2009-07-01 18:22:36

ipfw не справляется? :-\
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

HEDG_SS
сержант
Сообщения: 198
Зарегистрирован: 2008-11-22 20:37:07

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение HEDG_SS » 2009-07-01 19:10:23

hizel писал(а):ipfw не справляется? :-\
Очень долго отрабатывает скриптзабивки фервола (около 1 мин.). Назревает полная его переделка . В PF удобнее работать с таблицами и грузится он практически мгновенно. В текущем фаерволе появился непонятный для меня момент, иногда закачка идет мимо пайпов (не режется скорость). Поэтому появилось желание написать новый скрипт с нуля и шейпить на PF.
PF - как фаервол, очень мощный и функциональный, но не знаю , как он себя будет вести в роли шейпера для моих задач. Возможно он сможет болеее умно справиться с поставленной задачей.
Кто его пользовал, напишите пожалуйста, что к чему...

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение schizoid » 2009-07-02 0:06:36

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

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение hizel » 2009-07-02 0:12:57

собрать дикую партянку правил в пару няшек и управлять удобно и сухо
копи паста с man ipfw

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

   LOOKUP TABLES
     In the following example, we need to create several traffic bandwidth
     classes and we need different hosts/networks to fall into different
     classes.  We create one pipe for each class and configure them accord-
     ingly.  Then we create a single table and fill it with IP subnets and
     addresses.  For each subnet/host we set the argument equal to the number
     of the pipe that it should use.  Then we classify traffic using a single
     rule:

           ipfw pipe 1 config bw 1000Kbyte/s
           ipfw pipe 4 config bw 4000Kbyte/s
           ...
           ipfw table 1 add 192.168.2.0/24 1
           ipfw table 1 add 192.168.0.0/27 4
           ipfw table 1 add 192.168.0.2 1
           ...
           ipfw add pipe tablearg ip from table(1) to any

     Using the fwd action, the table entries may include hostnames and IP
     addresses.

           ipfw table 1 add 192.168.2.0/24 10.23.2.1
           ipfw table 1 add 192.168.0.0/27 router1.dmz
           ...
           ipfw add 100 fwd tablearg ip from any to table(1)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

HEDG_SS
сержант
Сообщения: 198
Зарегистрирован: 2008-11-22 20:37:07

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение HEDG_SS » 2009-07-02 10:15:51

schizoid писал(а):офтоп
а , извиняюсь, как вы используете ключи в таблицах? всегда было интересно для чего они...
Например можно создать одну таблицу для бана, и банить с разными ключами, в зависимости от причины и перенаправлять на веб. В зависимости от ключа выдается разные причины бана. В результате мешьше правил, меньше таблиц.
Второй пример. Таблица - это направление, а ключ - соответствует определенной ширине пайпа. В результате таблиц меньше и можно одной командой просмотреть попал ли юзер в это направление, да и логическая схема проще

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение schizoid » 2009-07-02 10:53:39

слушайте, а тогда еще вопрос, вот как в примере выше
ipfw table 1 add 192.168.0.0/27 4
ipfw table 1 add 192.168.0.2 1
192.168.0.2 входит в диапазон 192.168.0.0/27, но получается, что вся сеть 192.168.0.0/27 имеет параметр 4, кроме 192.168.0.2, который имеет параметр 1?
и соответственно вся сеть будет шейпится по пайп 4, кроме ИПа 192.168.0.2, который шейпится пайпом 1?
ядерный взрыв...смертельно красиво...жаль, что не вечно...

HEDG_SS
сержант
Сообщения: 198
Зарегистрирован: 2008-11-22 20:37:07

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение HEDG_SS » 2009-07-02 11:11:31

Не уверен, но думаю , все зависит от того в каком порядке будут пайпы, и как прописаны правила. Насколько я понимаю возможен и такой случай, что 192.168.0.2 будет нарезаться последовательно дважды
Для устранения неопределенности можно использовать, что то вроде этого (вырезка с вывода ipfw sh) :

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

pipe 2019 ip from table(101) to table(1,10) out
pipe 2020 ip from table(1,10) to table(101) out
allow ip from table(101) to table(1,10) out
allow ip from table(1,10) to table(101) out

HEDG_SS
сержант
Сообщения: 198
Зарегистрирован: 2008-11-22 20:37:07

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение HEDG_SS » 2009-07-02 11:16:42

Так что, неужели НИКТО не шейпил на PF ?? :st:

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение schizoid » 2009-07-02 11:26:52

видимо нет.
я как-то пытался, но что-то меня не устроило, было несколько провайдеров, а шейпер PF-а умеет шейпить только исходящий трафик с интерфейса...короче мне не понравилось.
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение hizel » 2009-07-02 11:37:50

местные pf-овцы жидко сливают, как только слышат слово "шейпинг" :-)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

HEDG_SS
сержант
Сообщения: 198
Зарегистрирован: 2008-11-22 20:37:07

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение HEDG_SS » 2009-07-02 12:21:27

Слышал, что некоторые используют для шейпинга связку ipfw + ng_car .
Есть такие на этом форуме ? И вообще есть ли какие то адекватные альтернативы для паупов ipfw ?

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение hizel » 2009-07-02 12:32:08

ну вам на НАГе вполне адекватно посоветовали ng_car, тупенький нод для нетграфа, только режет :]
особенно мило интегрируется в mpd связку с радиусом
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

ski
старшина
Сообщения: 412
Зарегистрирован: 2008-08-25 18:10:44
Откуда: СССР, РФ, Сталинградская область, село Безродное
Контактная информация:

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение ski » 2009-07-02 15:04:42

HEDG_SS писал(а):Слышал, что некоторые используют для шейпинга связку ipfw + ng_car .
Есть такие на этом форуме ? И вообще есть ли какие то адекватные альтернативы для паупов ipfw ?
Мы используем в связке с mpd. Каналы режет, нагрузка на процессор заметно ниже, чем при использовании ipfw. Но насколько я разобрался, оно умеет только резать канал и все. Режет по интерфейсам, как реальным, так и виртуальным.

HEDG_SS
сержант
Сообщения: 198
Зарегистрирован: 2008-11-22 20:37:07

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение HEDG_SS » 2009-07-02 16:14:20

А как насчет динамических пайпов , как в ipfw ? Т.е. чтоб каждому ip , удовлетворяющему правилу, назначался соответствующий пайп ?
Насколько четко он режет ?
Есть ли там возможность ограничить количество соединений?

ski
старшина
Сообщения: 412
Зарегистрирован: 2008-08-25 18:10:44
Откуда: СССР, РФ, Сталинградская область, село Безродное
Контактная информация:

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение ski » 2009-07-02 16:24:47

HEDG_SS писал(а):А как насчет динамических пайпов , как в ipfw ? Т.е. чтоб каждому ip , удовлетворяющему правилу, назначался соответствующий пайп ?
Насколько четко он режет ?
Есть ли там возможность ограничить количество соединений?
1. Могу ошибаться, но по-моему нет.
2. достаточно четко.
3. аналогично 1.

HEDG_SS
сержант
Сообщения: 198
Зарегистрирован: 2008-11-22 20:37:07

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение HEDG_SS » 2009-07-04 11:29:08

Понятно, лучший опыт - свой опыт :). Освободится немного времени , надо будет поэксперементировать..

UStas
проходил мимо
Сообщения: 1
Зарегистрирован: 2009-07-22 3:22:56

Re: Шейпинг на PF более 1500 клиентов.

Непрочитанное сообщение UStas » 2009-07-22 12:20:52

Вопрос знатокам:

Можно ли в ALTQ добавить список очередей по средствам какого то цикла в конфиге кпримеру через for();

Очень не хочется раздувать конфиг а надо создать 8000 очередей в каждом направлении чтоб потом в них загонять динамически через якоря траффик.