[ previous ] [ next ] [ threads ]
 From:  "Holger Bauer" <Holger dot Bauer at citec dash ag dot de>
 To:  <m0n0wall at lists dot m0n0 dot ch>
 Subject:  Radius Accounting problems using WinRadius
 Date:  Thu, 24 Aug 2006 15:48:19 +0200

I want to setup a cpative portal in a hotspot scenario where a radius server does accounting and
logs out the user after his time has expired. I'm using winradius as radius server. m0n0 is
configured to send out start/stop accounting information and reathenticate user every minute.

Basically it works but the time is not handled correctly. m0n0 always sends the complete time since
the user is only (for example if he was online for 2 minutes it sends "120") but the radius server
handles this as delta since the last update.

User has a 5 minute Account:
reauthentication/update after 1st minute:  60 seconds
reauthentication/update after 2nd minute: 120 seconds
reauthentication/update after 3rd minute: 180 seconds
reauthentication/update after 4th minute: 240 seconds
reauthentication/update after 5th minute: 300 seconds

WinRadius counts down in the following way:
User has 300 seconds account:
after 1st minute -60=240 left
after 2nd minute -120=120 left
after 3rd minute -180=-60 account expired

So the user only got 3 minutes instead of 5 and this becomes even worse with higher numbers. I'm not
sure if this is a problem with winradius or the captive portal. However I have not found a setting
to change this behaviour in winradius or m0n0. 

Anybody have a clue how to fix this or at which end the problem is located? Which is the correct
behaviour? Would switching to another radiusserver help, if yes, what radiusserver is recommended to
work correct in that situation? Preferably a free one that however should be windowsbased.

Thanks for any suggestions,