Convice Bind to listen on IP alias with a range of IPs.

Augie Schwer augie.schwer at
Tue May 1 21:32:17 UTC 2012

On Tue, May 1, 2012 at 2:00 AM, Phil Mayers <p.mayers at> wrote:
> Which operating system are you running?

Linux, I'm sorry I did not mention that earlier as it may have saved
some confusion.

> Contrary to what a lot of other people have suggested, it is in fact
> possible using the socket API to bind() to IPs which aren't explicitly
> created, due to special handling on the loopback interface. This can
> certainly be done under Linux, for example., and I have just re-confirmed
> that to myself.

Thank you for confirming for others that this is a real feature.

> Unfortunately, it seems likely that named is using the normal socket APIs to
> first enumerate the list of IPs on the box, and then filter those through
> listen-on statements to get the final list of IPs to pass to a bind() socket
> call - this would be a sensible way to implement the CIDR listen
> functionality.
> If so, then if the IP isn't *explicitly* on an interface, it won't appear in
> the final output set, regardless of the fact a bind() call will succeed.

OK, that makes sense, I have found that the following work-around does work:

sudo ifconfig lo:1 netmask
sudo ifconfig lo:2 netmask

I get the full usable range on my loop-back interface, and Bind will
happily now listen-on the address.

Augie Schwer    -    Augie at    -

More information about the bind-users mailing list