URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 2044
[ Назад ]

Исходное сообщение
"Radius Local client ip"

Отправлено SnaiperRoman , 23-Апр-05 12:08 
Как сделать проверку на локальный айпи ? Или какими параметрами можно вытянуть из радиуса local_ip клиента ? Не framed-ip !! Т.е. интересно сделать так, что бы мне в логах sql в таблице радиуса была пометка с какого айпи адреса подключается клиент.

Заранее благодарю за помощь !!!


Содержание

Сообщения в этом обсуждении
"Radius Local client ip"
Отправлено .zZz. , 24-Апр-05 13:36 
>Как сделать проверку на локальный айпи ? Или какими параметрами можно вытянуть
>из радиуса local_ip клиента ? Не framed-ip !! Т.е. интересно сделать
>так, что бы мне в логах sql в таблице радиуса была
>пометка с какого айпи адреса подключается клиент.
>
>Заранее благодарю за помощь !!!

обычно клиент радиуса запихивает адрес подключающегося по аналогии с телефоном звонящего в CallingStationId.
Если интересует как заставить это делать poptop - есть патчик для pptpctrl.c:

su-2.05b# cat pptpd-1.1.4-exppp-cli.patch
diff -ruN poptop-1.1.4/pptpctrl.c poptop-1.1.4-cli/pptpctrl.c
--- poptop-1.1.4/pptpctrl.c     2003-05-13 16:10:12.000000000 +0300
+++ poptop-1.1.4-cli/pptpctrl.c 2004-02-21 13:25:04.000000000 +0200
@@ -389,6 +389,8 @@
                                       ntohs(((struct pptp_out_call_rply *) (rply_packet))->call_id_peer),
                                       ntohs(((struct pptp_out_call_rply *) (rply_packet))->call_id));

+                               setenv("clid",inet_ntoa(inetaddrs[1]),1);
+                               setenv("cid",inet_ntoa(inetaddrs[0]),1);
                                if ((pty_fd = startCall(pppaddrs)) > maxfd)
                                        maxfd = pty_fd;
                                if ((gre_fd = pptp_gre_init(call_id_pair, pty_fd, inetaddrs)) > maxfd)



"Radius Local client ip"
Отправлено SnaiperRoman , 30-Апр-05 10:01 
>>Как сделать проверку на локальный айпи ? Или какими параметрами можно вытянуть
>>из радиуса local_ip клиента ? Не framed-ip !! Т.е. интересно сделать
>>так, что бы мне в логах sql в таблице радиуса была
>>пометка с какого айпи адреса подключается клиент.
>>
>>Заранее благодарю за помощь !!!
>
>обычно клиент радиуса запихивает адрес подключающегося по аналогии с телефоном звонящего в
>CallingStationId.
>Если интересует как заставить это делать poptop - есть патчик для pptpctrl.c:
>
>
>su-2.05b# cat pptpd-1.1.4-exppp-cli.patch
>diff -ruN poptop-1.1.4/pptpctrl.c poptop-1.1.4-cli/pptpctrl.c
>--- poptop-1.1.4/pptpctrl.c     2003-05-13 16:10:12.000000000 +0300
>+++ poptop-1.1.4-cli/pptpctrl.c 2004-02-21 13:25:04.000000000 +0200
>@@ -389,6 +389,8 @@
>                                       ntohs(((struct pptp_out_call_rply *) (rply_packet))->call_id_peer),
>                                       ntohs(((struct pptp_out_call_rply *) (rply_packet))->call_id));
>
>+            
>          
>        setenv("clid",inet_ntoa(inetaddrs[1]),1);
>+            
>          
>        setenv("cid",inet_ntoa(inetaddrs[0]),1);
>                                if ((pty_fd = startCall(pppaddrs)) > maxfd)
>            
>          
>          
>      maxfd = pty_fd;
>                                if ((gre_fd = pptp_gre_init(call_id_pair, pty_fd, inetaddrs)) > maxfd)


Пропатчил , не помогло :(

А системка у меня ASP 9.2
pppd version 2.4.2b3
Poptop v1.2.1
freeradius-0.9.3-1.1
ppp-radius-2.4.2-0.20030925asp

В табличке radacct новых полей в записе не обнаруженно:

Это поля таблицы самой
RadAcctId AcctSessionId AcctUniqueId UserName Realm NASIPAddress NASPortId NASPortType AcctStartTime AcctStopTime AcctSessionTime AcctAuthentic ConnectInfo_start ConnectInfo_stop AcctInputOctets AcctOutputOctets CalledStationId CallingStationId AcctTerminateCause ServiceType FramedProtocol FramedIPAddress AcctStartDelay AcctStopDelay


А это сама запись которая добавилась:
8 42731C985F51 d6cdbf271316418f Roman   194.226.20.1 1 Async 2005-04-30 09:50:16 2005-04-30 09:51:19 64 RADIUS     7187 15980       Framed-User PPP 192.168.0.235 0 0
  


"Radius Local client ip"
Отправлено .zZz. , 03-Май-05 10:34 
>>>Как сделать проверку на локальный айпи ? Или какими параметрами можно вытянуть
>>>из радиуса local_ip клиента ? Не framed-ip !! Т.е. интересно сделать
>>>так, что бы мне в логах sql в таблице радиуса была
>>>пометка с какого айпи адреса подключается клиент.
>>>
>>>Заранее благодарю за помощь !!!
>>
>>обычно клиент радиуса запихивает адрес подключающегося по аналогии с телефоном звонящего в
>>CallingStationId.
>>Если интересует как заставить это делать poptop - есть патчик для pptpctrl.c:

...

>Пропатчил , не помогло :(
>
>А системка у меня ASP 9.2
>pppd version 2.4.2b3
>Poptop v1.2.1
>freeradius-0.9.3-1.1
>ppp-radius-2.4.2-0.20030925asp
>
>В табличке radacct новых полей в записе не обнаруженно:
>
>Это поля таблицы самой
>RadAcctId AcctSessionId AcctUniqueId UserName Realm NASIPAddress NASPortId NASPortType AcctStartTime AcctStopTime AcctSessionTime AcctAuthentic
>ConnectInfo_start ConnectInfo_stop AcctInputOctets AcctOutputOctets CalledStationId CallingStationId AcctTerminateCause ServiceType FramedProtocol FramedIPAddress AcctStartDelay
>AcctStopDelay
>
>
>А это сама запись которая добавилась:
>8 42731C985F51 d6cdbf271316418f Roman   194.226.20.1 1 Async 2005-04-30 09:50:16 2005-04-30
>09:51:19 64 RADIUS     7187 15980  
>    Framed-User PPP 192.168.0.235 0 0
>

ууууу какое мясо... ;) всё в кучу. Вообщем, у меня 100% работает - при этом в CalledStationId и в CallingStationId  записываются ip NAS и клиента соответственно.

Может чё то не то патчил? ;)


"Radius Local client ip"
Отправлено SnaiperRoman , 15-Май-05 02:18 
>>Как сделать проверку на локальный айпи ? Или какими параметрами можно вытянуть
>>из радиуса local_ip клиента ? Не framed-ip !! Т.е. интересно сделать
>>так, что бы мне в логах sql в таблице радиуса была
>>пометка с какого айпи адреса подключается клиент.
>>
>>Заранее благодарю за помощь !!!
>
>обычно клиент радиуса запихивает адрес подключающегося по аналогии с телефоном звонящего в
>CallingStationId.
>Если интересует как заставить это делать poptop - есть патчик для pptpctrl.c:
>
>
>su-2.05b# cat pptpd-1.1.4-exppp-cli.patch
>diff -ruN poptop-1.1.4/pptpctrl.c poptop-1.1.4-cli/pptpctrl.c
>--- poptop-1.1.4/pptpctrl.c     2003-05-13 16:10:12.000000000 +0300
>+++ poptop-1.1.4-cli/pptpctrl.c 2004-02-21 13:25:04.000000000 +0200
>@@ -389,6 +389,8 @@
>                                       ntohs(((struct pptp_out_call_rply *) (rply_packet))->call_id_peer),
>                                       ntohs(((struct pptp_out_call_rply *) (rply_packet))->call_id));
>
>+            
>          
>        setenv("clid",inet_ntoa(inetaddrs[1]),1);
>+            
>          
>        setenv("cid",inet_ntoa(inetaddrs[0]),1);
>                                if ((pty_fd = startCall(pppaddrs)) > maxfd)
>            
>          
>          
>      maxfd = pty_fd;
>                                if ((gre_fd = pptp_gre_init(call_id_pair, pty_fd, inetaddrs)) > maxfd)


А не мог бы ты ещё конфиг от радиуса скинуть ? sql.conf :)


"Radius Local client ip"
Отправлено kir , 25-Апр-05 13:42 
смотря какой сервер доступа