������� "Chris A. Kalin" <[EMAIL PROTECTED]>:
> I actually saw this same problem way back in the post 0.3 CVS days
> (and
> before), and I wasn't even involving checkrad. I would turn on
> Simultaneous-Use, and I would immediately begin to get completely
> bogus
> Client-Ip-Addresses in my accounting packets...IPs that had nothing to
> do
> with my network (I remember 0.0.0.0 being one of the examples). And I
> would
> get them from my MAX TNTs, my PM3s, my Cisco AS5200s, and the various
> RADIUS
> servers that proxied to me. Some packets would be fine, others would
> be
> bogus.
> It was so weird and pervasive I just canned the implementation and
> didn't
> really troubleshoot past isolating Simultaneous-Use as the cause.
> I've
> actually been meaning to revisit this now that .5 is out and see if life
> is
> better.
> Although it is reassuring to see that it didn't only bite me. :)
So, there is a piece of code in rlm_radutmp.c/radutmp_checksimul():
radutmp_unlock(fd);
rcode = rad_check_ts(u.nas_address, u.nas_port, login,
session_id);
radutmp_lock(fd);
if (rcode == 1) {
++request->simul_count;
/*
* Does it look like a MPP attempt?
*/
if (strchr("SCPA", u.proto) &&
ipno && u.framed_address == ipno)
request->simul_mpp = 2;
else if (strchr("SCPA", u.proto) && call_num &&
!strncmp(u.caller_id,call_num,16))
request->simul_mpp = 2;
}
else {
/*
* False record - zap it.
*/
session_zap(u.nas_address, u.nas_port, login,
session_id, u.framed_address,
u.proto, 0);
}
If rad_check_ts() returns 1 (dup found), and no multilink is there, this code
simply increments request->simul_count, but if not, it does session_zap() (and
generates "fake" Accounting-Stop record with fields such in my case). So it
seems to be a problem in rad_process().
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html