Accounting-On and Accounting-Off being sent on a per-BSS basis not per-NAS
Nick Lowe
nick.lowe at lugatech.com
Wed Feb 24 13:22:29 PST 2016
hostapd is currently acting contrary to the original intent of RFC
2866 as it is sending Accounting-On and Accounting-Off
Accounting-Request packets on a per-BSS basis and not on a per-NAS
basis when accounting_init() is called from hostapd_setup_bss() and
accounting_deinit() is called from hostapd_free_hapd_data().
I filed an errata against the RADIUS accounting RFC last year around
APs that exhibit this behaviour as the original intent of the RFC was
ambiguous.
See: https://www.rfc-editor.org/errata_search.php?rfc=2866&eid=4485
To solve this, I would suggest reference counting against RADIUS
servers, sending Accounting-On as the first BSS comes up and
Accounting-Off as the last BSS goes down. This must be tracked on a
per-RADIUS server basis to be done correctly.
It is also incorrect to include a Called-Station-Id in
Accounting-On/Accounting-Off to scope to a BSS as an Accounting-On
cannot be sent on this basis.
Alan, really helpfully, put up the following about this issue:
http://freeradius.org/rfc/acct_status_type_subsystem.html
Additionally, it does not seem correct to include a NAS-Port-Type in
Accounting-On/Accounting-Off, nor WLAN-HESSID based on this context.
I am also incidentally curious now if the proposed Subsystem-on and
Subsystem-Off should support nesting for layered, sub-dependent
subsystems of a NAS.
Regards,
Nick
More information about the Hostap
mailing list