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 - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html