Биллинговая система Nodeny
26 Ноября 2024, 03:11:41 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: 1 [2]
  Печать  
Автор Тема: Dhcp + Radius  (Прочитано 12723 раз)
fet4
Старожил
****

Карма: 2
Offline Offline

Сообщений: 326


Просмотр профиля Email
« Ответ #15 : 01 Декабря 2016, 14:32:30 »

Делаю связку Dhcp + Radius
А как в этом случае происходит разбор и регистрация по option 82?

И можно ли выдавать клиенту со статического пула адрес?
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4790



Просмотр профиля
« Ответ #16 : 01 Декабря 2016, 18:41:42 »

Цитировать
вводишь и вроде как у этого пользователя я ожидаю должна  сформироваться связка мак + ip

Должна сформироваться связка не mac + ip, а id абонента + mac. Это существенно. Потому что ip может быть выдан вообще любой. Благодаря этому упрощается настройка - в стандартной настройке isc-dhcpd выдает ip от балды, поскольку он не умеет radius  и ему никак не узнать какой ip нужно выдавать (есть еще настройка через периодическое формирование конфига для dhcp, но это другая тема). Поэтому биллинг адаптируется к тому, что выдал dhcp. Dchp сообщает биллингу: я выдал такой-то ip такому-то мак-у. И биллинг смотрит у кого такой мак и соответсвенно для данного ip либо включает либо выключает доступ, скорости и т.д. Когда мак неизвестен, то биллинг спрашивает логин и пароль, после чего связывает мак с id абонента. Это делается модулем dhcp личного кабинета. Если он не будет включен в список в настройках биллинга, то никакой связки сформировано не будет
Записан
fet4
Старожил
****

Карма: 2
Offline Offline

Сообщений: 326


Просмотр профиля Email
« Ответ #17 : 08 Декабря 2016, 18:35:52 »

В процедуре radreply передается атрибут Session-Timeout=600 и accel-ppp рвет сессию через 600 сек. я так понимаю это для не авторизованных? Но он же выдается всем?! Или я не прав? Или какой смысл его?
Записан
Pa4ka
Старожил
****

Карма: 4
Offline Offline

Сообщений: 281

591884591
Просмотр профиля Email
« Ответ #18 : 08 Декабря 2016, 19:31:12 »

В процедуре radreply передается атрибут Session-Timeout=600 и accel-ppp рвет сессию через 600 сек. я так понимаю это для не авторизованных? Но он же выдается всем?! Или я не прав? Или какой смысл его?
Для accel с ipoe у них на форуме есть темка, если конечно не читали еще
accel-ppp.org/forum/viewtopic.php?t=513
Session-Timeout я лично использую для не зарегистрированных маков получают специальный пул, у них есть несколько минут для авторизации через заглушку и потом сессия в любом случае рветься и клиент получит уже не гостевой ИП
Записан
fet4
Старожил
****

Карма: 2
Offline Offline

Сообщений: 326


Просмотр профиля Email
« Ответ #19 : 08 Декабря 2016, 21:05:26 »

Почитал. Понял.

У Вас это наверно как-то в процедурах описано что Session-Timeout получает только незареганные маки, если да можно глянуть? А то у меня в стандартных все получают его.
В принципе мне он и не нужен этот атрибут я его убрал, у меня так - клиент получил с пула ip, его кидает на заглушку, он регается, его вносит в список разрешенных и он пользуется инетом без передергиваний кабеля.

А как у Вас авторизация происходит vlan per user или option 82?
Записан
Pa4ka
Старожил
****

Карма: 4
Offline Offline

Сообщений: 281

591884591
Просмотр профиля Email
« Ответ #20 : 08 Декабря 2016, 21:24:36 »

Почитал. Понял.

У Вас это наверно как-то в процедурах описано что Session-Timeout получает только незареганные маки ? А то у меня в стандартных все получают его.
В принципе мне он и не нужен этот атрибут, у мня так - клиент получил с пула ip, его кидает на заглушку, он регается, его вносит в список разрешенных и он пользуется инетом без передергиваний кабеля.

А как у Вас авторизация происходит vlan per user или option 82?
Mysql процедуры я использую те что в документации только для freebsd+mpd5+radius.
Для серверов с accel или микротика или какие там еще другие НАСы писал на perl для rlm_perl(freeradius).
Ну а для accel что бы без передергивания я воспользовалься этим атрибутом(не так уж часто новые маки прилетаю, а если часто - то что то это не так и зачем давать из клиентского пула). Я даже решил что такие интерфейсы переназываю вместо ipoe+ создает guest+
А и еще забыл что ната нету на НАСах с accel-ppp.
Но это для своей сети(так сложилось за много лет) у нас и pppoe и dhcp+radius и vlan per user, короче говоря каша и ничего не поделаеш).
Записан
fet4
Старожил
****

Карма: 2
Offline Offline

Сообщений: 326


Просмотр профиля Email
« Ответ #21 : 08 Декабря 2016, 21:45:06 »

Понятно. У нас в принципе точно так же сейчас pppoe, isc-dhcp-option-82 и вот допиливаю accel.

Появился нюанс, не гаснет ключик в биллинге кто авторизовался через accel. Самое интересное Accounting-Request уже не шлется, accel сессию терминировал, а в биллинге пишет "Последнее обновление авторизации 2 сек назад" и время обновляется. В чем может быть проблема?

Кстати последний Accounting-Request пришел с таким аттрибутом Acct-Terminate-Cause = Lost-Carrier, типа связь потеряна, может по нему можно закрывать авторизацию в биллинге?
Записан
Pa4ka
Старожил
****

Карма: 4
Offline Offline

Сообщений: 281

591884591
Просмотр профиля Email
« Ответ #22 : 08 Декабря 2016, 22:03:25 »

Понятно. У нас в принципе точно так же сейчас pppoe, isc-dhcp-option-82 и вот допиливаю accel.

Появился нюанс, не гаснет ключик в биллинге кто авторизовался через accel. Самое интересное Accounting-Request уже не шлется, accel сессию терминировал, а в биллинге пишет "Последнее обновление авторизации 2 сек назад" и время обновляется. В чем может быть проблема?

Кстати последний Accounting-Request пришел с таким аттрибутом Acct-Terminate-Cause = Lost-Carrier, типа связь потеряна, может по нему можно закрывать авторизацию в биллинге?
Я точно за не скажу, пишу с телефона.
Но на сколько помню там был нюанс с запуженым модулем -m=dhcp биллинга. Он поддерживает авторизацию дальше без радиуса.
Записан
fet4
Старожил
****

Карма: 2
Offline Offline

Сообщений: 326


Просмотр профиля Email
« Ответ #23 : 08 Декабря 2016, 22:57:15 »

Понятно. У нас в принципе точно так же сейчас pppoe, isc-dhcp-option-82 и вот допиливаю accel.

Появился нюанс, не гаснет ключик в биллинге кто авторизовался через accel. Самое интересное Accounting-Request уже не шлется, accel сессию терминировал, а в биллинге пишет "Последнее обновление авторизации 2 сек назад" и время обновляется. В чем может быть проблема?

Кстати последний Accounting-Request пришел с таким аттрибутом Acct-Terminate-Cause = Lost-Carrier, типа связь потеряна, может по нему можно закрывать авторизацию в биллинге?
Я точно за не скажу, пишу с телефона.
Но на сколько помню там был нюанс с запуженым модулем -m=dhcp биллинга. Он поддерживает авторизацию дальше без радиуса.

Похоже что так, но если я отключу его то отвалятся клиенты те которые по dhcp без радиуса?!

Интересно что в двух документациях по DHCP+radius пишут по разному в одной нужно запускать модуль в другой нет.
Записан
Nafanya
NoDeny
Старожил
*

Карма: 1
Offline Offline

Сообщений: 459


412112973
Просмотр профиля Email
« Ответ #24 : 20 Декабря 2016, 22:13:44 »

Сделал, как прописано в документации. Работает. РРРоЕ не работает как надо. Логинется подключается. Все равно привязывать надо потом по логину и паролю (вводим логин и пароль) Я конечно понимаю тут идет привязка по маку, но как заставить работать роутеры, уже настроенные?
Да и кстати, доступ в инет клиент не получает до момента перезагрузки компа или же роутера. Или же как не дернет сетевой провод. Это конечно лучше было бы указать. Правда я с таким предупреждением сталкивался раньше, сейчас я его не нашел.
Записан

Кому то Бог дал ручки, а кому то - грабельки.
fet4
Старожил
****

Карма: 2
Offline Offline

Сообщений: 326


Просмотр профиля Email
« Ответ #25 : 26 Декабря 2016, 12:32:16 »

Знатоки подскажите, если прилетают такие вот атрибуты через радиус.

Код:
        DHCP-Option82 = 0x0106000400c8010d020800060012cf7ef380
        DHCP-Agent-Remote-Id = 0x00060012cf7ef380
        DHCP-Agent-Circuit-Id = 0x000400c8010d

Можно ли их как-то разобрать в sql процедуре и использовать при авторизации, вписывая в device_mac и device_port ?
Записан
NodenY45
NoDeny
Старожил
*

Карма: 2
Offline Offline

Сообщений: 365


Просмотр профиля
« Ответ #26 : 04 Января 2017, 11:59:19 »

Знатоки подскажите, если прилетают такие вот атрибуты через радиус.

Код:
        DHCP-Option82 = 0x0106000400c8010d020800060012cf7ef380
        DHCP-Agent-Remote-Id = 0x00060012cf7ef380
        DHCP-Agent-Circuit-Id = 0x000400c8010d

Можно ли их как-то разобрать в sql процедуре и использовать при авторизации, вписывая в device_mac и device_port ?

как то вроде goletsa писал:
Код:
DROP PROCEDURE IF EXISTS mx80radcheck;
DELIMITER $$ 
CREATE PROCEDURE mx80radcheck (IN login VARCHAR(64))
BEGIN
 DECLARE usr_id INT; 
 DECLARE usr_mac VARCHAR(12);
 DECLARE usr_vid INT;
 DECLARE usr_port INT;
 DECLARE usr_swmac VARCHAR(12);
 
SELECT UPPER(REPLACE(SUBSTRING(login,1,14),'.','')) INTO usr_mac;
SELECT CONV(SUBSTRING(login,20,4),16,10) INTO usr_vid;
SELECT CONV(SUBSTRING(login,26,2),16,10) INTO usr_port;
SELECT SUBSTRING(login,33,12) INTO usr_swmac;


  SELECT usr_mac AS 'MAC', usr_vid AS 'VID', usr_port AS 'PORT', usr_swmac AS 'SWMAC';
END$$
DELIMITER ;
Записан
Страниц: 1 [2]
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!