src_ipaddr with proxies
Alexander Clouter
alex at digriz.org.uk
Fri Sep 10 16:36:52 CEST 2010
Alan DeKok <aland at deployingradius.com> wrote:
>
> Alexander Clouter wrote:
>
>> Found a bug in 2.1.9 (is is the Debian squeeze release), probably due to
>> my mis-use of src_ipaddr in the home_server stanza.
>
Occurs in the v2.1.x branch too, last commit
8fadcb9d1d7fa8c5b92cc0e5a21a5bbd3673de72, but I guess you already
guessed this as there have been no recently tweaks to those relevant
functions.
>> My proxy definition looks like:
>
> Do you have *more* of a configuration?
>
Well yes, I do thank you very much. </don't-you-talk-to-me-like-that>
Guess it was my fault not posting the entire tarball of /etc/freeradius
here blatted onto the mailing list...sorry.
> That one doesn't work as-is, and if I replace ${local...} with a real
> IP, the server starts up fine.
>
Well I included what I thought was enough to replicate the issue and get
over what I was doing and how (I thought I had it pinned down to
'src_ipaddr' being the culprit). Obviously not as changing to hardcoded
values at my end has no effect and I still get the spinning issue.
Doing a dumb straight replacement of '${local.MY.addr.eduroam.v4}' to
'212.219.238.5' and '${local.MY.addr.eduroam.v6}' to
'2001:630:1b:6003:372d:f782:e3d9:ae6' in my template changes nothing.
Doing a just as dumb removing the cascading templating and moving
'src_ipaddr = ...' directly into the home_server stanza also changes
nothing.
Doing an equally as dumb forgetting templating and duplicating
everything needed into home_server also...<drum roll> changes nothing.
http://stuff.digriz.org.uk/freeradius-hang.tar.bz2
>> If I move the 'src_ipaddr' entry explicitly into my 'home_server'
>> stanza, then I get an assert():
>
> That can be fixed. See the attached patch (event.c). If it works, it
> should go into 2.1.10.
>
Well the assert() issue is no more, so now we are just down to the
spinning when you have more than one src_ipaddr...
>> Further investigation shows that if I have more than one 'src_ipaddr'
>> entry present, I get no assert() and things spin again.
>
> More that one src_ipaddr... where? At all? Or more than one in the
> same home_server section?
>
'At all', as yeah of cause multiple 'src_ipaddr' makes perfect sense
within the same home_server stanza... *sigh* Thanks for your vote of
confidence, if you had spent a minute looking at my original email you
would have seen when you unroll the templating you get a *single*
src_ipaddr key/value pair in each home_server.
The spinning occurs when you have more than one src_ipaddr present
across all your home_server definitions, regardless if they are for
different address families. So even if for the first home_server you
have v6 and the second home_server you have v4 src_ipaddr...it spins.
Same happens for v6-v6 and v4-v4 combinations, and of course v6-v6-v4,
v4-v4-v6, etc etc ad nausem.
You'll see the 'unrolling' I have done in the 'LOCAL/proxy.conf' file of
the linked to tarball above.
> See also the realms.c patch. That may address the spinning issue.
>
Where's that patch? I cannot see anything in the git log for any branch
so I'm guessing it's elsewhere (missing attachment?).
Cheers
--
Alexander Clouter
.sigmonster says: Adults die young.
More information about the Freeradius-Devel
mailing list