Интеграция с оборудованием

по сравнению с
Текущая oleg
на июн 26, 2014 18:37.

Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (2)

просмотр истории страницы
h2. Введение

Для любого оборудования ввод в эксплуатацию означает успешное прохождение всех [этапов внедрения Carbon Billing|http://docs.carbonsoft.ru/pages/viewpage.action?pageId=2687400].


h2. Внимание\!

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

Примеры предоставлены исключительно для понимания принципов работы Carbon Billing с сторонним оборудованием.

h2. Общие советы


h3. Наименование сервисов

Для удобного переключения скоростей у пользователей на стороннем оборудовании лучше всего давать сервисам имена, имеющие в названии скорость в кило{*}бит{*}ах, например: _policy_in1024_ (удобнее использовать кратные 10 величины)

В результате в event_inc.sh можно автоматически генерировать имя нужного сервиса в команде на переключение сервиса с помощью переменных $rate_in и $rate_out

Называя политики подобно _policy_in5m_ (может встречаться в документации), вы усложняете задачу.

h3. Применение сервисов на cisco

Для правильной активации сервисов для абонента на оборудовании Cisco необходимо перед активацией производить деактивацию этого сервиса.

h3. Отключение пользователя на cisco

На некотором оборудовании от Cisco вместо кода вроде:

{code}
echo "User-Name=\"$login\",Cisco-Account-Info=\"S$ip\",Cisco-AVPair=\"subscriber:command=account-logoff\"" | radclient -x $nas_ip:1700 coa $radius_secret
{code}
если оборудование поддерживает событие disconnect, стоит использовать следующий код:
{code}
echo "User-Name=\"$login\",Cisco-Account-Info=\"S$ip\" | radclient -x $nas_ip:1700 disconnect $radius_secret
{code}

Если используется простое отключение, то нужно включить глобальную опцию "запрет подключения с отрицательным балансом" в менеджере ( сервис \-> настройки )

h3. Получение информации о пользователе на cisco


{code}
/bin/echo "User-Name=\"eliseev\",Cisco-Account-Info=\"S109.73.130.37\",cisco-avpair=\"subscriber:command=account-status-query\"" | radclient -x 192.168.1.1:1700 coa 1234
{code}



h3. Диагностика
{code}radclient >>/var/log/event_err.log 2>&1{code}

h3. Как оборудование должно вести себя с пользователями при событии balance_negative

Правильное поведение оборудования - переводить пользователей на новую политику, которая подразумевает перенаправление пользователя на страницу с сообщением об отрицательном балансе при обращении на порт 80 и при любом dns-трафике, ограничивая остальной трафик.

Совершать событие account-logoff или команду disconnect в таком случае - крайне не рекомендуется, так как это повысит обращения абонентов в техподдержку.

h3. Передача команд по SSH

Чтобы не передавать пароль и пересылать команды автоматически, необходимо настроить авторизацию с помощью [ключей|http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html].

Хорошей практикой является передача сразу нескольких команд, разделенных через запятую. В результате сокращается время суммарного выполнения команд, так как экономится время, которое тратится на соединение.

Убедитесь, что ключ управляемого хоста добавлен в /root/.ssh/known_hosts. Для добавления достаточно подключиться по ssh на хост под учетной записью root и дать согласие на сохранение ключа.


h3. Изменение простого шейпера на Mikrotik

При логине:


{code}
/queue simple add name=$id target-addresses=$ip max-limit=${ceil_in}k/${ceil_out}k interface=vlan$router_vlan
{code}
При логауте:

{code}
/queue simple remove [find name=$id]
{code}
В событии rate_set:

{code}
/queue simple set name=$id target-addresses=$ip max-limit=${ceil_in}k/${ceil_out}k interface=vlan$router_vlan
{code}

h2. Ссылки на связанные статьи

* [Работа с оборудованием|http://asrdoc.ideco-software.ru/pages/viewpage.action?pageId=2687402] - 
* [Описание списка переменных, доступных для использования в event_inc.sh|4. event_inc.sh - скрипт обработки событий]
* [Подключение NAS с поддержкой протоколов RADIUS и NetFlow|asrdocnew:Заметка Подключение NAS с поддержкой протоколов RADIUS и NetFlow]
* [Управление удаленным NAS-сервером по SSH|asrdocnew:Управление удаленным NAS-сервером по SSH]
* [Подключение маршрутизаторов и коммутаторов с SNMP|asrdocnew:Заметка Подключение маршрутизаторов и коммутаторов с SNMP]
* [Что делать если не работает Netflow|asrdocnew:Не работает netflow]
* [Настройка QoS для Mikrotik|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]