Схема следующая.
IPoE Абонент <-> Доступ L2 (DHCP.Opt82) <-> Агрегация L3 (DHCP Relay на BGInetAccess) <-> BRAS Cisco ISG.
Т.е. BRAS не является dhcp релеем.
Проблемма в том, что не все коммутаторы доступа на данный момент умеют вставлять в DHCP запрос от абонентов опцию 82 и такие запросы релеятся на другой DHCP сервер. Вот и хотим авторизовать таких абонентов по логину паролю, в качестве которого будет браться src ip с которого стартует ISG сессия на BRASе, но сохраняя при этом авторизацию по dhcp.opt82 для первой группы абонентов.
Алгоритм следующий:
Эта часть из описанного вами решения:
Цитата:
как только IP траффик абонента (который уже получил IP адрес от DHCP сервера BGBilling'а, авторизовавшись по номеру порта) приходит на BRAS, тот создает для него новую ISG сессию и пытается ее авторизовать на радиусе BGBilling'а, используя в качестве логина - source IP адрес. Биллинг просматривает активные сессии договоров и, конечно же, находит ту самую сессию, которую он сам же создал, выдавая этому абоненту IP адрес. По этой сессии биллинг находит договор и:
в случае положительного баланса - отвечает ACCESS-ACCEPT, плюс cisco-SSG-Account-Info параметры, которые берет из тарифа договора. Одновременно BGBilling создает (вторую уже) активную сессию для договора.
в случае отрицательного баланса - отвечает ACCESS-REJECT'ом.
Если биллинг не находит сессию, то пытается продолжить поиск договора по логину.