FreeRadius

Marcel Grandemange thavinci at thavinci.za.net
Thu Oct 2 11:14:26 CEST 2008


>Hi Marcel

>I don't know if i'm right, or if it's related to your problem, but if you check the source of rlm_sqlcounter (rlm_sqlcounter.c), you may see that this module >seems really time based (Alan will correct me if i'm wrong). Indeed the module contains a function that make it possible for a user to start using its next >month's quota, if the integer returned by the check-name is greater than the number of seconds untill the reset time. In your case this would suggest you >compare bytes your with seconds, and mso maybe you allow sometime user to use their quota twice a month, or something like this.



You would have to explain to me in really basic terms as im a newbie.

I am aware that the module is mostly time based, but is intended for data usage aswell although NOT very well documented.

I struggled for months to get the information to set it up as is.

 

 


>Once again what I say here needs  to be checked, but i'm almost sure sqlcounter mechanism are time related.

Like I said cannot recall where I eventually did find the docs, but know many use this function on Chillispot hotspot installs.

>Marcel Grandemange a écrit : 

>I have a working FreeRadius installation used for PPPOE clients using a Mikrotik NAS (Essentialy Linux)

 

 

>I am using Freeradius to limit data a user can send/receive within a month and automatically reset it every month.

 

>I used an example from chilliuspot hotspot for this.

 

>However what im noticing is sometimes a customer gets denied access because he has exceeded he’s monthly allowance, however when I check the

>Db this is not the case cause it’s the beginning of month.

 

 

>This only happens sometimes so im lost!

 

 

>I use sqlcounter.conf for the counter part of things and INCLUDE this from radius.conf.

 

 

>sqlcounter monthlytraffic {

>                counter-name = Monthly-Traffic

>                 check-name = Max-Monthly-Traffic

>                 reply-name = Mikrotik-Xmit-Limit-Gigawords

>                sqlmod-inst = sql

>                 key = User-Name

>                 reset = monthly

>query = "SELECT SUM(AcctInputOctets - GREATEST((%b - UNIX_TIMESTAMP(AcctStartTime)), 0))+ SUM(AcctOutputOctets -GREATEST((%b - >UNIX_TIMESTAMP(AcctStartTime)), 0)) FROM radacct WHERE UserName='%{%k}' AND UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime > '%b'"

>}

 

 

>Anybody for input? I would greately appreciate help here! A Work around is to simply increase he’s allowance till he is allowed to connect!

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeradius.org/pipermail/freeradius-users/attachments/20081002/ca1a6ca7/attachment.html>


More information about the Freeradius-Users mailing list