|
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.
|
Изменения (27)
просмотр истории страницыИнтеграция заключается в следующих шагах: # Настройка сервисов / политик / профилей / access list на оборудовании # Настройка скрипта event_inc.sh на Ideco ACP для пересылки нужных команд # Создание и настройка RADIUS-атрибутов в тарифах для пользователей |
h2. Внимание\! Все предоставленные примеры не обязательно являются рабочими, использовать их для настройки своего оборудования без понимания принципа действия не рекомендуется. |
Примеры предоставлены исключительно для понимания принципов работы Ideco ACP Carbon Billing с сторонним оборудованием. |
|
Также, оборудование нельзя считать запущенным в эксплуатацию, если не все пункты [плана внедрения|http://asrdoc.ideco.ru/pages/viewpage.action?pageId=29033016] завершены успешно. |
h2. Настройка оборудования |
... |
Шейперы создаются и применяются к пользователям динамически, при наступлении события rate_set. |
Таким образом на микротике необходимо лишь создать адрес-листы, balance_positive - лист для nat и разрешения выхода в Интернет адрес-листы: |
|
balance_negative - лист для переадресации пользователей с отрицательным балансомЕсли нужны разные группы пользователей, то можно создать разные адрес листы, и использовать составные листы например |
* balance_positive - лист для nat и разрешения выхода в Интернет * balance_negative - лист для переадресации пользователей с отрицательным балансом. |
|
Если нужны разные группы пользователей, то можно создать разные адрес листы, и использовать составные листы, например: |
{code} |
balance_positive${tariff_id} или balance_positive${pull_id} и тп. |
balance_positive${tariff_id} balance_positive${pull_id} |
{code} |
Внимание\! Для применения иных шейперов требуется все шейперы предварительно настроить вручную по [инструкции микротика|http://wiki.mikrotik.com/wiki/Russian/%D0%94%D0%B5%D0%BB%D0%B8%D0%BC_%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82_%D0%B8%D0%BB%D0%B8_QoS_%D0%BD%D0%B0_Mikrotik], а также исправить блок rate_set в event_inc.sh на требуемые для микротика команды. |
Рекомендуется склеивать команды микротика в одну через знак ' ; ' вместо нескольких последовательных ssh тк ssh долго подключается к микротику. |
... |
|
h2. Настройка АСР (event_inc.sh) |
h2. Настройка Carbon Billing (event_inc.sh) |
В этом скрипте команды на микротик пересылаются с помощью ssh, а не с помощью radius. |
... |
{ case "$EVENT" in |
login|balance_negative|balance_positive|user_data_changed|user_data_changed_before) login | balance_negative | balance_positive | user_data_changed | user_data_changed_before ) |
|
ssh username@$nas_ip "/ip firewall address-list remove [find address=$ip]" |
if [ "$over_limit" = "0" ]; then |
ssh username@$nas_ip "/ip firewall address-list remove [find address=$ip]" |
ssh username@$nas_ip "/ip firewall address-list add address=$ip list=balance_positive" else |
ssh username@$nas_ip "/ip firewall address-list remove [find address=$ip]" |
ssh username@$nas_ip "/ip firewall address-list add address=$ip list=balance_negative" fi ;; |
|
"rate_set") rate_set ) |
if [ "$ceil_out" != "-1" ]; then ssh username@$nas_ip /queue simple remove [find name=$id] |
... |
fi ;; |
|
"logout") logout ) |
ssh username@$nas_ip "/ip firewall address-list remove [find address=$ip]" ssh username@$nas_ip /queue simple remove [find name=$id] ;; |
"period_closed") period_closed ) |
LOG INFO "event type: $EVENT $DATA" ;; |
|
* ) |
: LOG INFO "event type: $EVENT $DATA" |
;; esac |
... |
h2. Настройка тарифов |
Тарифы настраиваются стандартно, т.к radius параметры при данной схеме не используются, а $ceil_in и $ceil_out передаются микротику по SSH каждый раз при возникновении события rate_set. |
h2. Настройка пользователей Так как микротик не использует Radius, то для пользователей, которые получают доступ в интернет через него необходимо вручную переопределить IP NAS сервера, автоматически этого не произойдет. !99.png|border=1! h2. Добавление в список маршрутизаторов h2. !Снимок-Настройка оборудования.png|border=1! |