Log out client when no accounting updates received
Johan Meiring
jmeiring at amobia.com
Wed Sep 30 09:31:53 UTC 2009
wlanmac wrote:
> I think it could be an option.. even a compile-time option + runtime
> configuration for number of missed acct'ing responses. But, it's not a
> feature I would imagine many would use.
>
Whether people would use it or not, is probably a case of people don't know
that they need it.
Hope the following makes sense.....
I process about 2 million radius accounting records per month (probably very
few in some people's book).
I discovered (by accident) that accounting data sometimes got lost, I would
never have known about it, had I not stumbled on a "weird" session.
Let me explain how this can go wrong.
You have a NAS (chillispot) natted behind an ADSL line. It handles few
users with long sessions.
A Linux device (probably every ADSL router out there) is handling the DSL
line. In the Linux conntrack table, the authentication and accounting
become tracked (and masqueraded/source natted).
Now the authentication conntrack times out, but the accounting conntrack
session stays, (few authentications, but frequent accounting updates).
Now the ADSL connection is dropped and re-established with a new IP.
Because the accounting conntrack still exists, the accounting packets are
source natted behind the old IP, and therefore gets lost. The
authentication is behind the new IP, and works. Now everyone on this
hotspot gets free bandwidth.
I realise there are other ways to fix the spesific issue above (manipulting
the conntrack table in ip-up/ip-down) but as Wickert mentioned, lots of
people have seperate authentication and accounting systems. The one system
does not neccesarily know the other is down, and now people can use
resources without being billed for them.
It would be interesting for everyone on the list that may have hotspots
behind dymanic IP connections, to see how many successfull authentications
they have without any accounting data.
The problem could be solved from the radius side (using COA), but only if
the Radius server can contact the NAS - which it can't if the NAS is behind
a NATTED connection.
If the Radius server received no Radius Accounting, it has no opportunity to
stop (COA) the client.
Hope this makes sense.
If you think it is worth implementing, I can offer to help wherever I can.
My c skills is limited to "copy and paste" programming, but I am willing to
assist.
--
Johan Meiring
Amobia Communications
Tel: (0861) AMOBIA / (0861) 266242
Fax: (0861) AMOFAX / (0861) 266329
More information about the Chilli
mailing list