Re: Double radius accounting

James Cameron <[email protected]> Thu, 14 Nov 2013 07:26:09 +1100
Newsgroups gmane.network.poptop
Organization Netrek Vanilla Server Dictator
Message-ID <[email protected]>
On Wed, Nov 13, 2013 at 02:55:55PM +0100, Lorenzo Milesi wrote:
> My clients are DDWRT routers connecting to a Debian server with pptp
> version 1.3.4-3.

The latest version is now 1.4.0 released 2013-10-23 but none of the
changes seem related to your problem, and at the point of execution
only pppd would matter, not pptpd.

> They normally work, but for some connections I see double accounting records. 
> The two sessions are almost identical, they differ by just one (or zero) second in the start time.
> I don't know if this can matter but in syslog I see the following:
> 
> Nov 13 14:47:02 hotspotserver-dev pptpd[15329]: CTRL: Client 212.124.0.2 control connection started
> Nov 13 14:47:03 hotspotserver-dev pptpd[15329]: CTRL: Starting call (launching pppd, opening GRE)
> Nov 13 14:47:03 hotspotserver-dev pppd[15330]: Plugin radius.so loaded.
> Nov 13 14:47:03 hotspotserver-dev pppd[15330]: RADIUS plugin initialized.
> Nov 13 14:47:03 hotspotserver-dev pppd[15330]: Plugin radattr.so loaded.
> Nov 13 14:47:03 hotspotserver-dev pppd[15330]: RADATTR plugin initialized.
> Nov 13 14:47:03 hotspotserver-dev pppd[15330]: Plugin radius.so loaded.
> Nov 13 14:47:03 hotspotserver-dev pppd[15330]: RADIUS plugin initialized.
> Nov 13 14:47:03 hotspotserver-dev pppd[15330]: Plugin radattr.so loaded.
> Nov 13 14:47:03 hotspotserver-dev pppd[15330]: RADATTR plugin
> initialized.

I don't remember seeing this symptom, but I speculate that it may be
caused by two requests for the plugins in options files or command
line to pppd.  You can do an audit of the options that pppd processes,
by adding the option "dump".  See man pppd to see the explanation of
the option.

However, given that the problem is intermittent, this is not a
satisfying explanation.

I suggest adding code to pppd to detect the situation; perhaps there
is a race loading the plugins.

-- 
James Cameron
http://quozl.linux.org.au/

------------------------------------------------------------------------------
DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps
OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access
Free app hosting. Or install the open source package on any LAMP server.
Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native!
http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk