Hello<br><br>I'm having some problems when accounting with postgreSQL.<br>I'm using FreeRadius 1.1.3 with sqlippool and postgresql. Authentication is done via PAM to a LDAP server. Some authorization is done with LDAP (pool assignment, profiles...).
<br>I would like to use accounting and simultaneous use check  with postgreSQL. It seems that everything is working well.. But for some reason I don't get the assigned IP in my accounting tables whenever the user is logged. I just get it whenever the user is disconnected. I would like to have that info in real-time for debugging purposes.
<br><br>This is my postgresql.sql related config:<br>----<br>        sql_user_name = "%{Stripped-User-Name:-%{User-Name}}"<br><br>        accounting_start_query = "INSERT into ${acct_table1} \<br>                (AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress, NASPortId, NASPortType, AcctStartTime, AcctAuthentic, \
<br>                ConnectInfo_start, CalledStationId, CallingStationId, ServiceType, FramedProtocol, FramedIPAddress, AcctStartDelay ) \<br>                values('%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}', '%{SQL-User-Name}', '%{Realm}', '%{NAS-IP-Address}', \
<br>                '%{NAS-Port}', '%{NAS-Port-Type}', ('%S'::timestamp - '%{Acct-Delay-Time:-0}'::interval), '%{Acct-Authentic}', '%{Connect-Info}', \<br>                '%{Called-Station-Id}', '%{Calling-Station-Id}', '%{Service-Type}', '%{Framed-Protocol}', \
<br>                NULLIF('%{reply:Framed-IP-Address}', '')::inet, '%{Acct-Delay-Time:-0}')"<br>----<br><br>The %{reply:Framed-IP-Address} or %{Framed-IP-Address} isn't xlated at all... SQL module is executed after sqlippool, so, that variable should be available.
<br><br>The logs:<br>---<br>rlm_sql (sql): Reserving sql socket id: 2<br>radius_xlat:  'BEGIN'<br>rlm_sql_postgresql: query: BEGIN<br>rlm_sql_postgresql: Status: PGRES_COMMAND_OK<br>rlm_sql_postgresql: affected rows =
<br>radius_xlat:  'UPDATE radippool   SET expiry_time = 'now'::timestamp(0) + '3600 second'::interval   WHERE nasipaddress = '<a href="http://10.15.208.103">10.15.208.103</a>' AND pool_name = 'Pool-VODA-IPdina''
<br>rlm_sql_postgresql: query: UPDATE radippool   SET expiry_time = 'now'::timestamp(0) + '3600 second'::interval   WHERE nasipaddress = '<a href="http://10.15.208.103">10.15.208.103</a>' AND pool_name = 'Pool-VODA-IPdina'
<br>rlm_sql_postgresql: Status: PGRES_COMMAND_OK<br>rlm_sql_postgresql: affected rows = 2<br>radius_xlat:  'COMMIT'<br>rlm_sql_postgresql: query: COMMIT<br>rlm_sql_postgresql: Status: PGRES_COMMAND_OK<br>rlm_sql_postgresql: affected rows =
<br>rlm_sql (sql): Released sql socket id: 2<br>  modcall[accounting]: module "sqlippool" returns ok for request 6<br>radius_xlat:  'vodafone.dinamica@junta'<br>rlm_sql (sql): sql_set_user escaped user --> '
vodafone.dinamica@junta'<br>radius_xlat:  'INSERT into radacct ??(AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress, NASPortId, NASPortType, AcctStartTime, AcctAuthentic, ??ConnectInfo_start, CalledStationId, CallingStationId, ServiceType, FramedProtocol, FramedIPAddress, AcctStartDelay ) ??values('45D09AA81E8F00', '55addd923467ad3f', '
vodafone.dinamica@junta', '', '<a href="http://10.15.208.103">10.15.208.103</a>', ??'0', 'Async', ('2007-02-12 17:51:15'::timestamp - '0'::interval), 'RADIUS', '', ??'', '
<a href="http://10.15.208.106">10.15.208.106</a>', 'Framed-User', 'PPP', ??NULLIF('', '')::inet, '0')'<br>radius_xlat:  '/var/log/freeradius/sqltrace.sql'<br>rlm_sql (sql): Reserving sql socket id: 1
<br>rlm_sql_postgresql: query: INSERT into radacct ??(AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress, NASPortId, NASPortType, AcctStartTime, AcctAuthentic, ??ConnectInfo_start, CalledStationId, CallingStationId, ServiceType, FramedProtocol, FramedIPAddress, AcctStartDelay ) ??values('45D09AA81E8F00', '55addd923467ad3f', '
vodafone.dinamica@junta', '', '<a href="http://10.15.208.103">10.15.208.103</a>', ??'0', 'Async', ('2007-02-12 17:51:15'::timestamp - '0'::interval), 'RADIUS', '', ??'', '
<a href="http://10.15.208.106">10.15.208.106</a>', 'Framed-User', 'PPP', ??NULLIF('', '')::inet, '0')<br>rlm_sql_postgresql: Status: PGRES_COMMAND_OK<br>rlm_sql_postgresql: affected rows = 1
<br>rlm_sql (sql): Released sql socket id: 1<br>  modcall[accounting]: module "sql" returns ok for request 6<br>---<br>The assigned IP is <a href="http://10.247.254.3">10.247.254.3</a> (or <a href="http://10.247.254.5">
10.247.254.5</a>)...<br><br>The relevant part in radiusd.conf<br>----<br>accounting {<br> sqlippool<br> sql<br>}<br><br>-------------<br>By the way.. The username is not stripped, and @junta appears in the logs after the xlat call :/
<br><br>what am I doing wrong?<br><br>Thanks<br>