Vlan per user + Cisco IP subscriber interface + ISG

Материал из BiTel WiKi

Перейти к: навигация, поиск

Содержание

Описание задачи

Клиентам предоставляется доступ по схеме vlan per user на роутерах cisco. Необходимо реализовать учёт и управление услугами в модуле Inet.

Решение

Сразу оговоримся, что в нашем случае речь идёт об услуге MPLS IP VPN. Для доступа интернет, возможно, появятся какие-то нюансы, но в целом механизм тот же.

Схема решения такая:

  • на клиентском интерфейсе настраивается ip subscriber interface + isg
  • интерфейсы авторизуются в BGInetAccess по паре "устройство+интерфейс"
  • Настройки скорости выдаются через ISG-сервисы, смена тарифа происходит через CoA
  • Трафик собираем по радиус-счётчикам ISG-сервисов и родительской сессии, либо через Netflow
  • В сервисе модуля Inet указываем только устройство и интерфейс

В нашем случае в биллинге не задаются ни сеть IP клиента на интерфейсе, ни его VLAN, т.к. для тарификации они не играют роли. Но это можно реализовать для учёта ресурсов, а также для автоматического конфигурирования.

Дополнительно усложним задачу: В некоторых случаях клиенту предоставляется VPN + доступ в интернет через NAT на нашей циске. Доступ в интернет считается в другом модуле, но такая схема несколько усложняет задачу, поскольку тогда в каждой точке VPN-а нужно разделять трафик на собственно VPN и интернет, чтобы не тарифицировать последний 2 раза. Эту схему мы реализуем отдельным типом сервиса с отдельной привязкой трафика и отдельными сервисами ISG.

Настройка биллнга

Настройка модуля

Для услуг VPN было решено завести отдельный экземпляр модуля Inet с названием 'VPN'. Плюсы:

  • Можно учитывать услуги интернета и vpn на одном договоре без проблем с пересечением тарифных планов (основная причина, т.к. в наследство осталось много таких договоров)
  • Учёт услуг, визуальное разделение услуг на договоре и в отчётах.

Минусы:

  • Дублирование ресурсов между несколькими экземплярами модулей Inet: одни и те же устройства, vlan, интерфейсы используются в разных местах. Могут быть проблемы с учётом.

Конфигурация модуля:

# Активные и приостановленные статусы договора
contract.status.active.codes=0
contract.status.suspend.codes=3,4
# Проверка цены в тарифе: 0 - проверка отсутсвует, 1 - ошибка, только если у сессии есть трафик определенного типа,
# но для него нет цены, 2 - ошибка, если хотя бы для одного типа трафика в привязке типа сервиса нет цены (по умолчанию - 1)
#http://forum.bgbilling.ru/viewtopic.php?p=65629#p65629
accounting.tariffication.checkPrice=0
# Режим активации учетного периода, если не используется скрипт на событие активации,
# 0 (по умолчанию) - активация со дня подключения (старта сессии), 1 - активация с начала месяца.
# Следует учитывать, что учетный период является второй величиной при вычислении пропорциональности
# в тарифной ветке "Диапазон трафика"
#accounting.period.activation.mode=0
 
# Нужно ли отключать сервис с типом инициации "по трафику", если тариф не найден
#serv.disableOnTariffError=0
 
#Пункты Web - меню
#web.menuItem1=Отчет по сессиям Inet
#web.menuItem2=Смена пароля на логины Inet
#web.menuItem3=none
#web.menuItem3=Отчет по трафикам Inet
 
# Параметры автоматической генерации логина для сервиса.
# Минимальное значение логина при генерации логина
#serv.login.min=1
# Максимальное значение логина при генерации логина (т.е. если в базе присутствуют логины 1,2,3 и 10000000,
# то при генерации создастся логин 4, а не 10000001)
#serv.login.max=9999999
 
# Парамерты автоматической генерации пароля для сервиса. Можно указать в конфигурации модуля, конфигурации устройства, конфигурации типа сервиса
# (в последнем случае значения будут главнее):
# Минимальная длина пароля
serv.password.length.min=5
# Максимальная длина пароля
serv.password.length.max=16
# Разрешенные символы (используются также при генерации пароля)
serv.password.chars=1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
# Описание разрешенных символов, если пользователь ввел другие
serv.password.chars.description=В пароле допустимы только цифры и латинские буквы.
# Длина для автоматически генерируемого пароля
serv.password.length.auto=6
# Используемые символы для автоматически генерируемого пароля (по умолчанию значение берется из параметра serv.password.chars)
#serv.password.chars.auto=
 
# Параметры активации карточек модуля card при использовании InetRadiusProcessor,
# данные параметры можно указать как в конфигурации модуля, так и в конфигурации устройства.
# Код модуля card
#card.moduleId=
# id услуг активации
#card.activate.serviceIds=
# Минимальное значение карточного логина используется, чтобы указать, какие числовые логины нужно искать в карточках;
# если 0, то ограничение не действует.
#card.login.min=0
# Максимальное значение карточного логина используется, чтобы указать, какие числовые логины нужно искать в карточках;
# если 0, то ограничение не действует.
#card.login.max=0

Типы трафиков и привязки

Типы трафиков: Файл:traffic_types.png

Конфигурация на cisco

...

TODO

  • Автоконфигурирование интерфейса по telnet/ssh при создании/удалении
Личные инструменты