Mikrotik + UTM5 + Модуль динамического шейпирования
Mikrotik + UTM5 + Модуль динамического шейпирования
Добрый день.
У когонибуть реализована связка Mikrotik-a с Модулем динамического шейпирования от NETUP
Если у когонибуть реализовано подскажите как у вас это все настроено, а то уже месяц сижу бьюс с этой проблемой.
Зарание спасибо!!!
У когонибуть реализована связка Mikrotik-a с Модулем динамического шейпирования от NETUP
Если у когонибуть реализовано подскажите как у вас это все настроено, а то уже месяц сижу бьюс с этой проблемой.
Зарание спасибо!!!
-
- Сообщения: 18
- Зарегистрирован: Ср мар 24, 2010 10:51
- Контактная информация:
У меня работает, правда из за "ошибки" или "специфики работы" динашейпа от нетапа так и не запустили в коммерческое использование. Про этот баг есть в этой Теме:
viewtopic.php?t=7974
Что задумывалось: Пользователь работает с 01:00 до 08:00 с скоростью в два раза больше чем с 08:00 до 01:00.
Реализация проста. Устанавливаем нужные временные диапазоны, указываем скорости, привязываем динашейп к соответствющим тарифам. Далее есть правило firewall которое срабатывает на "Установка Ширины Входящего канала" и "Изменение ширины Входящего Канала". (на исходящий не срабатывает поскольку скрость у нас синхронна и просто скрипт изменяет параметры сразу на исх. и вх.)
Правило firewall запускает шеловский скрип с параметрами ULOGIN UIP UBITS BANDWIDTH, Скрипт по ssh ходит на микротик выполняет команды из simple queue. Вот сам скрипт:
/usr/bin/ssh -F /netup/utm5/firewall/PPPoE/ssh_conf/ssh_config_mt utm@xxx.xxx.xxx.xxx "/ queue simple remove $1"
Удаляем существующее правило.
/usr/bin/ssh -F /netup/utm5/firewall/PPPoE/ssh_conf/ssh_config_mt utm@xxx.xxx.xxx.xxx "/ queue simple add name=\"$1\" dst-address=$2/$3 interface=v502_outer parent=none direction=both priority=8 queue=default-small/default-small limit-at=$4/$4 max-limit=$4/$4 burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s total-queue=default-small"
Добовляем новое правило.
не претендую на самую лучшую реализацию. Но работает и довольно все просто.
viewtopic.php?t=7974
Что задумывалось: Пользователь работает с 01:00 до 08:00 с скоростью в два раза больше чем с 08:00 до 01:00.
Реализация проста. Устанавливаем нужные временные диапазоны, указываем скорости, привязываем динашейп к соответствющим тарифам. Далее есть правило firewall которое срабатывает на "Установка Ширины Входящего канала" и "Изменение ширины Входящего Канала". (на исходящий не срабатывает поскольку скрость у нас синхронна и просто скрипт изменяет параметры сразу на исх. и вх.)
Правило firewall запускает шеловский скрип с параметрами ULOGIN UIP UBITS BANDWIDTH, Скрипт по ssh ходит на микротик выполняет команды из simple queue. Вот сам скрипт:
/usr/bin/ssh -F /netup/utm5/firewall/PPPoE/ssh_conf/ssh_config_mt utm@xxx.xxx.xxx.xxx "/ queue simple remove $1"
Удаляем существующее правило.
/usr/bin/ssh -F /netup/utm5/firewall/PPPoE/ssh_conf/ssh_config_mt utm@xxx.xxx.xxx.xxx "/ queue simple add name=\"$1\" dst-address=$2/$3 interface=v502_outer parent=none direction=both priority=8 queue=default-small/default-small limit-at=$4/$4 max-limit=$4/$4 burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s total-queue=default-small"
Добовляем новое правило.
не претендую на самую лучшую реализацию. Но работает и довольно все просто.
-
- Сообщения: 18
- Зарегистрирован: Ср мар 24, 2010 10:51
- Контактная информация:
-
- Сообщения: 18
- Зарегистрирован: Ср мар 24, 2010 10:51
- Контактная информация:
Спасибо!!!Быченков Виталий Анатолье писал(а):Да забыл сказать можно изменять радиус атрибуты тарифа но тогда придется разрывать сессию пользователя. Собственно по этому здесь и реализовано при помощи simple queue. При указанной мной реализации пользователю ограничение по радиусу не должно устанавливатся не в каком виде. Все делает firewall
А как можно менять радиус параметрами. Чтобы знать на будущее!
-
- Сообщения: 18
- Зарегистрирован: Ср мар 24, 2010 10:51
- Контактная информация:
to Puzan_aga
В меню Динамического Шейпирования в созданном тобой шейпере есть 3 вкладки "Входящий канал" "Исходящий канал" "RADIUS атрибуты" В "RADIUS атрибуты" жмакаш на кнопку добавить он предлагает добавить атрибуты там есть поле где написано что то типа "Входящая полоса" а рядом кнопка "Добавить" при нажатии на нее у тебя в нижнем поле появится название переменной. Т.е. радиус параметром или ее частью будет какая то переменная относящаяся к DynaShape (Ширина канала например), ну а дальше формируеш радиус атрибут строку или число...
Только два момента: в тарифе и в пользователе не должно быть переопределено таких же RADIUS атрибут. И если у тебя микротик то нужно поиграться какую переменную взять устанавливающую значение в килобайтах или в килобитах. Я уже точно не помню но при одном из значений на микротике скорость выставляется не корректно.
В меню Динамического Шейпирования в созданном тобой шейпере есть 3 вкладки "Входящий канал" "Исходящий канал" "RADIUS атрибуты" В "RADIUS атрибуты" жмакаш на кнопку добавить он предлагает добавить атрибуты там есть поле где написано что то типа "Входящая полоса" а рядом кнопка "Добавить" при нажатии на нее у тебя в нижнем поле появится название переменной. Т.е. радиус параметром или ее частью будет какая то переменная относящаяся к DynaShape (Ширина канала например), ну а дальше формируеш радиус атрибут строку или число...
Только два момента: в тарифе и в пользователе не должно быть переопределено таких же RADIUS атрибут. И если у тебя микротик то нужно поиграться какую переменную взять устанавливающую значение в килобайтах или в килобитах. Я уже точно не помню но при одном из значений на микротике скорость выставляется не корректно.
В двух словах (для реализации c simple queues):
1) на каждый ТП выставляется в радиус параметрах специфическая скорость - например вместо 1M - 1001K - цифры не важно какие, но это будет однозначный идентификатор этого ТП.
2) на микротике работает скрипт с 00:00:00 до 08:00:00 с интервалом 30 секунд (этот интервал на ваше усмотрение - это макс. время для поднятия скорости для вновь подключившихся клиентов, так как стартовая скорость будет как в ТП), который проверяет simple queues и если находит нужные, то подымает их на заданные в скрипте скорость.
3) Таким образом в 00:00:00 все очереди подымаются до нужных, а в 08:00:00 опускаются до нужных, а в интервале с 00:00:00 до 08:00:00 через 30 сек. для новых сессий делается подъем. Все работает очень быстро и без обрывов сессии.
1) на каждый ТП выставляется в радиус параметрах специфическая скорость - например вместо 1M - 1001K - цифры не важно какие, но это будет однозначный идентификатор этого ТП.
2) на микротике работает скрипт с 00:00:00 до 08:00:00 с интервалом 30 секунд (этот интервал на ваше усмотрение - это макс. время для поднятия скорости для вновь подключившихся клиентов, так как стартовая скорость будет как в ТП), который проверяет simple queues и если находит нужные, то подымает их на заданные в скрипте скорость.
3) Таким образом в 00:00:00 все очереди подымаются до нужных, а в 08:00:00 опускаются до нужных, а в интервале с 00:00:00 до 08:00:00 через 30 сек. для новых сессий делается подъем. Все работает очень быстро и без обрывов сессии.
\Быченков Виталий Анатолье писал(а):to Puzan_aga
В меню Динамического Шейпирования в созданном тобой шейпере есть 3 вкладки "Входящий канал" "Исходящий канал" "RADIUS атрибуты" В "RADIUS атрибуты" жмакаш на кнопку добавить он предлагает добавить атрибуты там есть поле где написано что то типа "Входящая полоса" а рядом кнопка "Добавить" при нажатии на нее у тебя в нижнем поле появится название переменной. Т.е. радиус параметром или ее частью будет какая то переменная относящаяся к DynaShape (Ширина канала например), ну а дальше формируеш радиус атрибут строку или число...
Только два момента: в тарифе и в пользователе не должно быть переопределено таких же RADIUS атрибут. И если у тебя микротик то нужно поиграться какую переменную взять устанавливающую значение в килобайтах или в килобитах. Я уже точно не помню но при одном из значений на микротике скорость выставляется не корректно.
Посмотри правельно ли я все сделал ?
Просто перепробывал все параметры скорость всеравно не урезается.
Переподключатся несколько раз.
-
- Сообщения: 18
- Зарегистрирован: Ср мар 24, 2010 10:51
- Контактная информация:
ID вендора и ID атрибута правильные и что должна быть галочка строка верно. Но вот сама скорость записывается немного по другому. К примеру если ты хочеш поставить 900к ты должен написать : 900k/900k
Помоему для микротика лучше брать в IN_BANDWIDTH_BITS. Хотя с единицами измерения стоит поиграться. Просто в каком то случае ты можеш выставить не коректную скорость.
Помоему для микротика лучше брать в IN_BANDWIDTH_BITS. Хотя с единицами измерения стоит поиграться. Просто в каком то случае ты можеш выставить не коректную скорость.
Я должен написать ?Быченков Виталий Анатолье писал(а):ID вендора и ID атрибута правильные и что должна быть галочка строка верно. Но вот сама скорость записывается немного по другому. К примеру если ты хочеш поставить 900к ты должен написать : 900k/900k
Помоему для микротика лучше брать в IN_BANDWIDTH_BITS. Хотя с единицами измерения стоит поиграться. Просто в каком то случае ты можеш выставить не коректную скорость.
IN_BANDWIDTH_BITS 900k/900k
Правильно ?
-
- Сообщения: 18
- Зарегистрирован: Ср мар 24, 2010 10:51
- Контактная информация:
а из какого параметра он определит что я 900 поставил.Быченков Виталий Анатолье писал(а):Не выглядить это должно как IN_BANDWIDTH_BITS/IN_BANDWIDTH_BITS И если у тебя одна из скоростей 900к то на микратик передастся 900000/900000. Если установиш IN_BANDWIDTH_KBITS на микротик передастся
900/900 микротик это поймет как 900 байт.
-
- Сообщения: 18
- Зарегистрирован: Ср мар 24, 2010 10:51
- Контактная информация: