BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 01 июн 2024, 03:38

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 20 ] 
Автор Сообщение
 Заголовок сообщения: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 04 авг 2016, 18:23 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
Поскольку вопросы и, в особенности, хотелки на счет VLAN-ов регулярно поднимаются (1, 2, 3, тысячи их), поэтому, пожалуй, стоит вскрыть эту тему.

Настала пора поговорить о VLAN-ах, а точнее о том, что в Бител есть некоторое недопонимание некоторых реалий в работе операторских сетей.
На данный момент БГБ видит и воспринимает сеть так:
Код:
РС --- свич доступа --- VLAN 1000 --- свич агрегации --- VLAN 1000 --- NAS
При этом, если судить по документации, инет подразумевает, что всегда существуют AGENT_REMOTE_ID и AGENT_CIRCUIT_ID, но совершенно не понятно, что делать, когда речь идет не о сети с Option 82, а о простой и достаточно распространенной схеме сети с L2 connected subscriber, в которой Option 82 нет от слова совсем?
Давайте совсем немного усложним сеть, какой ее видит БГБ, например сделаем такой:
Код:
РС --- свич доступа --- VLAN 1000 --- свич агрегации --- VLAN 101:1000 --- NAS
Т.е. VLAN абонента с VID 1000 мы, например на свиче агрегации, обвернем другим VLAN с VID 101, т.е. получим один "верхний", операторский влан и до 4k "нижних/внутренних", клиентских вланов.
В таком варианте в RADIUS прилетит не "NAS-Port-Id=1000", а "NAS-Port-Id=101:1000" и, собсно, негде взять ни AGENT_REMOTE_ID ни AGENT_CIRCUIT_ID.
Как прикажете авторизовать?
Как прикажете создавать подобный сервис в клиенте?
Кстати о о сервисе для клиента. Если создать простую операторскую сеть работающую по такой схеме:
Код:
РС --- свич доступа --- VLAN 1000 --- свич агрегации --- VLAN 101:1000 --- NAS
Примерно с таким деревом
Код:
ААА
 |
 +---+-[ папка NAS-ов ]
 |   |
 |   +- NAS #1
 |   |
 |   +- NAS #2
 |   |
 |  ...
 |   |
 |   +- NAS #N
 |
 |
 +---+-[ папка свичей доступа ]
     |
     +- свич #1
     |
     +- свич #2
     |
    ...
     |
     +- свич #N
И, примерно, с таким типом сервиса

Изображение

То как указать где "верхний" влан, а где "нижний"? БГБ при создании сервиса знает только про один тип вланов - "нижний/внутренний", а про остальные он слыхом ни слыхивал, как и о том, что для разных типов пользователей могут быть выданы разные диапазоны вланов.

Дискасс.

/summon Amir


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 05 авг 2016, 13:06 
Не в сети

Зарегистрирован: 22 июл 2009, 15:36
Сообщения: 308
Откуда: старый оскол
Карма: 5
такие вещи на вики лучше выкладывать....


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 05 авг 2016, 16:44 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4489
Откуда: Уфа, Россия
Карма: 186
а IP адреса у клиентов в описанной выше схеме статические?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 05 авг 2016, 18:39 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
skn писал(а):
IP адреса у клиентов в описанной выше схеме статические?

Нет, динамические.
Статичным в подобной, как и в любой иной, схеме является только БГБ, который хранит в себе абонентов и все что с ними связано и свысока наблюдает за динамическим изменением окружающего его оборудования :)
Мой опыт общения с операторами показывает, что подавляющее большинство респондентов использует динамические адреса, а статику используют только в случае предоставления статических белых адресов.

Представьте, что это классическая схема "VLAN на пользователя", где все вланы пользователей стянуты в ядро.
Дело в том, что когда нет DHCP Relay и, соответственно, нет Option 82, то БГБ негде брать информацию о точке подключения абонента, хотя, при этом, в БГБ есть почти абсолютно все, что можно знать о сети. Почему "почти"?
В классической схеме, которую поддерживает БГБ для IPoE абонента в RADIUS прилетит нечто подобное:
Код:
Packet type: Access-Request
Identifier: 11
Authenticator: {07 44 E3 D2 2A 4B 72 3F 12 23 C5 37 23 B7 4A 59}
Attributes:
  NAS-Identifier=Redback
  User-Name=e8:11:32:70:a5:f8
  User-Password=Redback
  NAS-IP-Address=172.16.255.1
  NAS-Port=-1761607613
  Service-Type=5
  NAS-Port-Id=lg id 825 vlan-id 1000 clips 131139
  NAS-Port-Type=5
  Mac-Addr=e8-11-32-70-a5-f8
  Medium-Type=11
  DHCP-Option={3D 3D 07 01 E8 11 32 70 A5 F8}
  DHCP-Option={0C 0C 09 70 61 75 6C 2D 6E 6F 74 65}
  DHCP-Vendor-Class-Id=MSFT 5.0
  NAS-Real-Port=604394472
И в этом случае в БГБ абсолютно все прекрасно работает, т.к. он, в текущем состоянии, целиком и полностью под это заточен.
В случае использования Q-in-Q в RADIUS прилетит такое - это реальный пакет с реального SE (в примере пакета выше я просто стер верхний тег):
Код:
Packet type: Access-Request
Identifier: 11
Authenticator: {07 44 E3 D2 2A 4B 72 3F 12 23 C5 37 23 B7 4A 59}
Attributes:
  NAS-Identifier=Redback
  User-Name=e8:11:32:70:a5:f8
  User-Password=Redback
  NAS-IP-Address=172.16.255.1
  NAS-Port=-1761607613
  Service-Type=5
  NAS-Port-Id=lg id 825 vlan-id 101:1000 clips 131139
  NAS-Port-Type=5
  Mac-Addr=e8-11-32-70-a5-f8
  Medium-Type=11
  DHCP-Option={3D 3D 07 01 E8 11 32 70 A5 F8}
  DHCP-Option={0C 0C 09 70 61 75 6C 2D 6E 6F 74 65}
  DHCP-Vendor-Class-Id=MSFT 5.0
  NAS-Real-Port=604394472
На DHCP-Option можно не смотреть, т.к.
Цитата:
Currently, this VSA supports DHCP options 12 (hostname), 61 (client identifier), and 77 (user class)

Как его авторизовать?
Можно проставить AGENT_REMOTE_ID и AGENT_CIRCUIT_ID на основе свича и порта из дерева, но, опять же, не ясно какого именно свича и какого именно порта?
Если мы хотим авторизовать по VLAN (у нас же "влан на пользователя", так что все вланы уникальны), то какой VLAN_ID проставлять? Как указать в клиенте или еще каким-либо иным образом сообщить БГБ, что VLAN 1000 находится внутри влана 101?

Изображение

Представьте, что у вас этих "верхних" вланов не один, а штук 10 и в каждом из них живет по 1000++вланов и все они на одном NASе.
Самое обидное, что в БГБ прописано почти все, что нужно для однозначной идентификации пользователя и не хватает только понятия "верхний влан".

Могу предложить наверное самое простое, решение "тупо-в-лоб":
Необходимо в редакторе VLAN ресурсов добавить справа (дабы много не переделывать) от диапазона поле ввода вланов новое поле и обозвать его просто "S-VLAN" (это достаточно стандартное обозначение верхнего тега). Если это поле пустое, то это означает, что используется простое тегирование (как сейчас), а если оно не пустое или его значение < 1 (упаковать во VLAN с VID < 1 не реально) - это означает, что весь данный диапазон VLAN является C-VLAN.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 06 авг 2016, 05:06 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
Я пошел другим путем. Когда смотрел на всякие opt82 то волосы чуть не выпали, решили сделать просто как 2х2. У меня верхний и нижний влан подставляется в логин
и указывается в сервисе:
Вложение:
Выделение_004.jpg
Выделение_004.jpg [ 167.83 КБ | Просмотров: 12517 ]

работает как часы
Вложение:
Выделение_005.jpg
Выделение_005.jpg [ 69.51 КБ | Просмотров: 12517 ]

Схема работает второй год уже. Т.к адреса выдает радиус то с динамикой и статикой нет проблем вообще. В биллинге только 1 устройство это нас. Пользователю для индификации достаточно указать в логине пару верхний и нижний vlan. Все работает по radius. Про редактор vlan ресурсов согласен с snark, поле S-VLAN нужно добавить :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 07 авг 2016, 11:52 
Не в сети
Клиент

Зарегистрирован: 21 май 2008, 10:54
Сообщения: 599
Откуда: 50-й рег.
Карма: 40
2 zavndw:
Идея с логином в виде S-VLAN:C-VLAN - интересная.
А если в влан надо по дхцп отправлять больше одного ип-адреса ? Как из положения выходить в этом случае ?

_________________
"Все правые - в резерве!" (c) (translate.google.ru/#en/ru/all%20rigths%20reserved)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 07 авг 2016, 17:41 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
во время тестов для одного влан выдавались больше чем 1 ip. Но до конца не разбирался, т.к тем кому делал нужно было именно 1 vlan - 1 ip выдавать. Они роутеры таким образом сбывают:)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 07 авг 2016, 18:39 
Не в сети
Клиент

Зарегистрирован: 21 май 2008, 10:54
Сообщения: 599
Откуда: 50-й рег.
Карма: 40
Цитата:
Они роутеры таким образом сбывают


Ага!
1 ип - один рутер.
2 ип - 2рутера + 1 "умный" свитч.
....
....
8 ип - ...+ 8U стойка.

Ахренительный бизнес. И как мы раньше не додумались об этом. Пойду, Dir-у "рацуху" подкину.

_________________
"Все правые - в резерве!" (c) (translate.google.ru/#en/ru/all%20rigths%20reserved)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 08 авг 2016, 03:57 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
в принципе могу проверить, будет ли в моей схеме работать выдача пула адресов, надо стенд перенастроить


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 08 авг 2016, 16:25 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
Тут основной вопрос, зачем вам хранить super-vlan на каждом клиенте? Не избыточно ли это ?
Т.е у вас будет 1000 клиентов с одним одинаковым super vlan 101 ? зачем дублировать эту информацию? Нельзя ли на устройстве в дереве где-то хранить что все что ниже и иерархии это 101 super vlan . И соответственно при поиске сервиса нам учитывать эту настройку устройства. Абонент же в конце концов привязан к конкретному конечному устройству, для которого однозначно выше по иерархии можно определить super vlan. Или у вас не такое однозначное дерево?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 08 авг 2016, 16:27 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
А вижу, у вас дерево такое, что nas-ы в другой иерархии, не в той, где свичи. А почему именно такое дерево ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 08 авг 2016, 16:40 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
В вашей папке "папка свичей доступа" можно сделать сделать свичи агрегации (или папки), в которых указать vlan. Т.е почему бы все-таки не указать super vlan-где-то в иерархии, а не для каждого абонента. Это было бы оптимальнее - прописать в одном месте 101-ый super vlan, а не выбирать у 1000 разных абонентов один и тот же 101 super vlan . Вы же начнете ошибаться если вам нужно 1000 раз прописать 101 vlan и сами же попросите придумать решение как определять super vlan автоматом ( по иерархии или как-то еще) при добавлении абонента.

Я не против того, что вам нужен super vlan. Но кажется избыточным и неверным дублировать его для каждого абонента. На момент создания абонента мы откуда-то уже должны знать какой у него super vlan(по иерархии устройств или как-то еще) и не выбирать его заново.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 08 авг 2016, 17:11 
Не в сети

Зарегистрирован: 07 май 2008, 13:34
Сообщения: 594
Откуда: Москва
Карма: 27
stark писал(а):
Т.е почему бы все-таки не указать super vlan-где-то в иерархии, а не для каждого абонента.

Похожую логику тестировал для ISG+MPLS - абонент идентифицируется по IP, но адреса могут пересекаться в разных VRF. VRF в дереве устройств это виртуальное устройство, в конфигурации которого указаны связи с NAS-Port-Id, по этим связям ProtocolHandler добавляет AGENT_REMOTE_ID в запросы.

P.S. Но VLAN в BGB это все равно не VLAN, а неизвестно что. Вышел какой то идентификатор применимый только к PPPoE/etc услугам, при тарификации по netflow использовать невозможно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 08 авг 2016, 17:31 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
stark писал(а):
В вашей папке "папка свичей доступа" можно сделать сделать свичи агрегации (или папки), в которых указать vlan. Т.е почему бы все-таки не указать super vlan-где-то в иерархии, а не для каждого абонента. Это было бы оптимальнее - прописать в одном месте 101-ый super vlan, а не выбирать у 1000 разных абонентов один и тот же 101 super vlan . Вы же начнете ошибаться если вам нужно 1000 раз прописать 101 vlan и сами же попросите придумать решение как определять super vlan автоматом ( по иерархии или как-то еще) при добавлении абонента.

Я не против того, что вам нужен super vlan. Но кажется избыточным и неверным дублировать его для каждого абонента. На момент создания абонента мы откуда-то уже должны знать какой у него super vlan(по иерархии устройств или как-то еще) и не выбирать его заново.

попробую на стенде собрать :roll:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все
СообщениеДобавлено: 08 авг 2016, 19:30 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
stark писал(а):
основной вопрос, зачем вам хранить super-vlan на каждом клиенте?

Этого совершенно не нужно! Супер влан достаточно хранить только, например, в категории вланов ну или, как вы уже правильно предложили, в дереве устройств.
Грубо говоря, необходимо его где-то указать, дабы напрочь исключить человеческий фактор или, как его иногда называют, синдром блондинки, т.е. когда оператором клиента биллинга является девочка, которая, собственно и создает сервисы, она даже физически не могла допустить ошибку, для чего мы в конфигурации указываем диапазоны влан и некий супер влан для каждого диапазона.
Например, когда подключение происходит в Уфе, то девочка выбирая диапазон вланов для района и нажимая "<<<", она автоматически проставляет влан, а БГБ точно знает, что для Демского района супер влан 101, для Калининского р-на - 102, для Кировского - 103 и т.д.

stark писал(а):
у вас будет 1000 клиентов с одним одинаковым super vlan 101 ?

Даже больше, чем 1000 и у всех один супер влан.
При использовании схемы Vlan-per-user, если использовать диапазон вланов с 1000 по 4000 - это будет 3000 вланов, которые, если использовать 24-х портовые свичи, размажутся по 125 свичам в дереве.

stark писал(а):
Нельзя ли на устройстве в дереве где-то хранить что все что ниже и иерархии это 101 super vlan
stark писал(а):
В вашей папке "папка свичей доступа" можно сделать сделать свичи агрегации (или папки), в которых указать vlan. Т.е почему бы все-таки не указать super vlan-где-то в иерархии

Почему же нельзя? Можно! И, пожалуй, нечто подобное

Изображение

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

stark писал(а):
у вас дерево такое, что nas-ы в другой иерархии, не в той, где свичи. А почему именно такое дерево ?

Дерево для демонстрации было тупо взято из документации :oops:

Изображение

Кстати, раз речь зашла о доке, то исправьте, пожалуйста, здесь двойное упоминание "radius.password.verification"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все (CRM)
СообщениеДобавлено: 08 авг 2016, 20:05 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
добавил в TODO


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все (CRM)
СообщениеДобавлено: 08 авг 2016, 20:33 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
TODO - это, конечно, хорошо, но что делать сейчас?
RADIUS поймет, если используя "radius.servSearchMode=4" (поскольку VLAN-per-user, то авторизовать по VLAN - самое оно, не?) в предобработке тупо проставить VLAN как 101:1000, 101:1001, 101:1002 и т.д.?
Проще говоря: нид хелп по запуску инет, асап! :roll:
Тестовый стенд в наличии.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все (CRM)
СообщениеДобавлено: 08 авг 2016, 21:09 
Не в сети

Зарегистрирован: 07 май 2008, 13:34
Сообщения: 594
Откуда: Москва
Карма: 27
Так в чем проблема? В предобработке разбираешь Nas-Port-Id, убираешь "101:" из этого атрибута и по "101" находишь в дереве устройств подходящий корневой свич, добавляешь AGENT_REMOTE_ID в запрос. Делать это достаточно только для стартового пакета.
Приатачил свой ProtocolHandler, там несколько сложный алгоритм поиска "агента" через интерфейсы устройств в дереве и с учетом временного периода "активности" устройств, у тебя будет немного проще.


Вложения:
ISGinVRFProtocolHandler.rar [2.76 КБ]
Скачиваний: 178
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все (CRM)
СообщениеДобавлено: 09 авг 2016, 04:15 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
snark писал(а):
TODO - это, конечно, хорошо, но что делать сейчас?

Ты сам знаешь где ускоряется решение вопроса:) всего 2 буквы


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VLAN, Q-in-Q и все все все (CRM)
СообщениеДобавлено: 10 авг 2016, 18:14 
Не в сети

Зарегистрирован: 16 ноя 2007, 16:11
Сообщения: 829
Карма: 49
А вот https://forum.bitel.ru/viewtopic.php?f=44&t=11478 в туда же можно?
В TODO, в смысле.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 20 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.056s | 59 Queries | GZIP : On ]