Cellular Roaming Accounting

Alan DeKok aland at deployingradius.com
Tue Apr 9 21:09:49 CEST 2013

Gerry Gasca wrote:
> I have recently inherited working on  a freeRadius on openSUSE server on
> a cellular implementation. I'll be upfront that my Linux skills are
> minimal and I know nothing about freeRadius.

  Posting here is a good start.

> I don't know what version of freeRadius we are running I was afraid to
> run radiusd -v because the man page said it would run and exit. This is
> a production server and I didn't want to risk killing the process. I'll
> schedule a maintenance window to run that.

  Don't bother.  It's safe.  When you run "radiusd -v", the *current*
program prints the version and exits.  It doesn't poke the running daemon.

> My issue is I need to implement total data transferred daily logging for
> a particular realm to implement roaming. My first thought was to get it
> from the detail files. I can probably write a script to accomplish this
> but I can't find the RAT-Type attribute in the log entries. I need to
> break out 1xRTT and EVDO totals for this realm. The Radio Access
> Technology type would be perfect for this but as I said can't find it in
> the detail file.

  If it's not there, then the NAS isn't sending it.

> I know a little about mysql but not much. It is implemented on this
> server. Can I pull this data from the radacct table? I thought I might
> need to implement the rls_counter module. It is not currently implemented. 

  You could pull the data from the SQL table.  I'd recommend that.  The
detail file is really just a backup for SQL data.  (For various reasons)

  You should be able to query the SQL table, and key off of the
User-Name, where the realm is the one you want.  Then, add up the
various columns.

  So this is really an SQL issue.  Look at the tables shipped with
FreeRADIUS to determine the structure.  Then write SQL queries.

> Sorry I have short windows of time to try things on this server so I'm
> trying to line up as much as I can ahead of time before getting stuck
> and wasting a maintenance window.

  You should be able to query your SQL table live.  Just run "SELECT"s,
and nothing else.

  Alan DeKok.

More information about the Freeradius-Users mailing list