Раздел находится в разработке

Данная возможность разрешает к параметрам авторизации абонентам добавить еще один дополнительный параметр а именно порт коммутатора подключения.

При авторизации сервер доступа передаёт на радиус параметр, у разных вендоров, по разному

ADSL-Agent-Circuit-Id = test_switch_1:GigabitEthernet0/0/1
или
ADSL-Agent-Circuit-Id = '0x32433a43383a31423a31463a32313a33333a3a3130302e3131302e3131302e3234333a3a3133'
или
ADSL-Agent-Remote-Id = "\200:\364\251\026s"

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

Для использования данное параметра в качестве дополнительного параметра авторизации нужно прописать в конфигурационном файле параметр:

$conf{INTERNET_PPPOE_PLUSE_PARAM}='ADSL-Agent-Circuit-Id';

Система заполнит поле Opt82, при первой авторизации абонента и начнёт авторизировать по этому параметру

Для привязке порта к карточке абонента, создаётся плагин equipment_opt82, который будет смотреть на поле Opt82, парсить его и вытаскивать сам коммутатор и порт, на котором сидит абонент, так-же плагин будет расставлять нужные параметры, чтоб начала отображатся информация с порта.

Так как у разных вендоров прилетают разные опции, то накопление информации займёт какое-то время


Также если в конфигурации указана опция $conf{INTERNET_PPPOE_PLUSE_PARAM} система автоматически заполняет параметр порт для абонентов с незаполненным полем. Чтобы не проверять параметр дополнительной авторизации в поле Порт нужно прописать параметр ANY

Все параметры, используемые для авторизации абонента по Opt82

После изменения ЛЮБОГО из параметров - перезапускаем радиус!
ПараметрЧто делает

$conf{INTERNET_PPPOE_PLUSE_PARAM}='ADSL-Agent-Circuit-Id';

Вносятся данные, по которому может быть идентифицирован абонент:

ADSL-Agent-Circuit-Id
Nas-Port-Id
и так далее

$conf{INTERNET_CID_SKIP}=1;Пропустить авторизацию по мак адресу абонента, поле CID может быть любым, хоть заполнено первичным мак адресом
$conf{MAC_AUTO_ASSIGN}=1;Автоматически заполнять поле CID при первом подключении абонента
$conf{MAC_AUTO_ASSIGN_FORCE}=1; Всегда заполнять/обновлять поле CID у абонента (используется совместно с $conf{MAC_AUTO_ASSIGN}=1;)
$conf{INTERNET_PPPOE_AUTH_VLAN}=1;Авторизировать абонента по номеру VLAN из Caller-Station-Id абонента
$conf{INTERNET_PPPOEPLUS_SKIP_AUTH}=1;Не проверять значение поля Opt82, не проводить авторизацию по этому полю
$conf{INTERNET_PPPOEPLUS_FORCE_UPDATE}=1;Всегда оюновлять поле Opt82 (работает только вместе с $conf{INTERNET_PPPOEPLUS_SKIP_AUTH}=1;)

$conf{INTERNET_CHECK_NAS_PORT}=1;

включает проверку уникальности nas_id и порта
$conf{INTERNET_CHECK_PORT_OPT82}=1;включает проверку уникальности поля opt_82
$conf{INTERNET_ALLOW_CPE_MAC_DUPS}=1;разрешает дубликаты cpe, но выдаст warning
$conf{INTERNET_ALLOW_MAC_DUPS}=1;разрешает дубликаты cid, но выдаст warning


Включение PPPoE+ на D-Link

config pppoe circuit_id_insertion state enable
config pppoe circuit_id_insertion ports 1-16 state enable circuit_id ip remote_id default
config pppoe circuit_id_insertion ports 17-18 state disable circuit_id ip remote_id default


Плагин equipment_ccid

Позволяет автоматически заполнить сервер доступа и порт в карточке абонента

Пока работает только со свитчами D-Link

Настройки

Чтобы плагин корректно отработал, у вас должны быть заполненены данные в поле Opt82

Это поле можно заполнить вручную или с опцией $conf{INTERNET_PPPOE_PLUSE_PARAM}='ADSL-Agent-Circuit-Id';

Чекбокс Port fill - должен быть включён

Свитч D-Link должен быть заведён, в серверах доступа, с типом dlink_pb

Запуск
/usr/abills/libexec/billd equipment_opt82
Как работает

Плагин смотрит включён-ли чекбокс, если чекбокс включён то смотрится на поле Opt82, если поле заполнено то сравнивает полученные данные из Opt82 и подставляет их в нужные значения



  • Нет меток