Freeradius, bind addresses, and multihoming

Gary T. Giesen giesen at snickers.org
Mon May 2 23:20:00 CEST 2011


I've compiled freeradius with the --with-udpfromto directive.
Everything works as expected when I bind to all IPs:

listen {
       ipaddr = *
       port = 1812
       type = auth
}

listen {
       ipaddr = *
       port = 1813
       type = acct
}


However, if I specify multiple IPs to bind to (rather than just one or
all), it reverts to the the behaviour of responding to all requests
with a source IP of the first bind directive listed. For example:

listen {
       ipaddr = 192.168.1.250
       port = 1812
       type = auth
}

listen {
       ipaddr = 192.168.1.250
       port = 1813
       type = acct
}

listen {
       ipaddr = 1.2.3.4
       port = 1812
       type = auth
}

listen {
       ipaddr = 1.2.3.4
       port = 1813
       type = acct
}

In this configuration, freeradius will always respond from
192.168.1.250, even if the initial request was sent to 1.2.3.4. This
is obviously breaking things for me, as I'd rather not have freeradius
listen on every interface on the server (and there are a number of
them). Am I doing something wrong? Am I expecting the wrong behaviour?
Or is this a bug?

GG



More information about the Freeradius-Users mailing list