Class attribute in accounting record.
Mark J Elkins
mje at posix.co.za
Mon Oct 29 15:45:14 CET 2007
My access provider is setting and sending me the "Class" attribute in an
accounting record...
I use MySQL to store such info in... and I'm using freeradius 1.1.6
in order to Capture the value - I modified all accounting "Insert"
statements to.... (as an example)
accounting_start_query = "INSERT into ${acct_table1} (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, Class)
values('%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}',
'%{SQL-User-Name}', '%{Realm}', '%{NAS-IP-Address}', '%{NAS-Port}',
'%{NAS-Port-Type}', '%S', '0', '0', '%{Acct-Authentic}',
'%{Telkom-Access-Type:-!SAIX} %{Connect-Info}', '', '0', '0',
'%{Called-Station-Id}', '%{Calling-Station-Id}', '', '%{Service-Type}',
'%{Framed-Protocol}', '%{Framed-IP-Address}', '%{Acct-Delay-Time}', '0',
'%{Class}')"
This captures the info fine.... (yes - also changed the MySQL table)
| 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 | Class |
+-----------+----------------------+------------------+---------------------------------+--------------+--------------+------------+-------------+---------------------+---------------------+-----------------+---------------+-------------------+------------------+-----------------+------------------+-----------------+------------------+--------------------+-------------+----------------+-----------------+----------------+---------------+----------+
| 21488415 | 7/0/0/2.157_13B0EB0F | 32161edf2c7a5dec |
xxxxxxxxxxxxxxx at xxxxxxxxxxx | realmname | 1.2.3.4 | 1879179421 |
Virtual | 2007-10-29 16:15:07 | 0000-00-00 00:00:00 |
0 | RADIUS | DSL AutoShapedVC | |
0 | 0 | |
| | Framed-User | PPP | 1.2.4.99
| 0 | 0 | 0x4e5331 |
... However - I get a Hex String ... 0x4e5331 - where I was expecting "NS1"
Reading the RFC's (with FreeRadius documentation) - this should be a
Char Octets kindof field...
Should the access provider sent the string in ASCII rather?
Did something in FreeRadius convert the ASCII to Hex?
What can I do to convert this on the fly into ASCII - save a bit of
space in my Database - etc.
Reading the mailing-lists archives - I see that it can contain binary
data - thus the Hex.
Which is "better" - to change the dictionary definition from octet to
string or some sort of mysql function call?
(better ==> less things to remember/patch between updates)
The access provider states that the info provided will always be ascii
(or translate to ascii - if decoded).
--
. . ___. .__ Posix Systems - Sth Africa
/| /| / /__ mje at posix.co.za - Mark J Elkins, SCO ACE, Cisco CCIE
/ |/ |ARK \_/ /__ LKINS Tel: +27 12 807 0590 Cell: +27 82 601 0496
More information about the Freeradius-Users
mailing list