[libvirt] [PATCH] handle DNS over IPv6

Daniel P. Berrange berrange at redhat.com
Thu Jan 6 14:54:48 UTC 2011


On Fri, Dec 31, 2010 at 02:57:16PM -0500, Laine Stump wrote:
> On 12/29/2010 10:00 AM, Paweł Krześniak wrote:
> >Firstly: Add ip6tables rules to allow DNS over IPv6 in network.
> >
> >Secondly: start dnsmasq with --interface option instead of --listen-address.
> >
> >Dnsmasq currently uses "--listen-address IPv4_address" option, which
> >restricts DNS service to one IPv4 address only.
> >We could append --listen-address for every IPv[46] address defined on
> >interface, but it's cleaner to use "--interface brname".
> >
> >There were some problems in the past with --interface option. Dnsmasq
> >version 2.46 and earlier exited with error when tired to bind() to IPv6
> >addresses on just brought up interfaces, because DAD (Duplicate
> >Address Detection) takes some time to finish and bind() returns
> >EADDRNOTAVAIL which caused dnsmasq to exit.
> >Dnsmasq version 2.47 (released on 05-Feb-2009) fixed this issue by
> >retrying bind() after getting EADDRNOTAVAIL error (as described in
> >http://www.thekelleys.org.uk/dnsmasq/CHANGELOG;
> >loop itself is defined in dnsmasq-2.47/src/network.c:404)
> 
> In general this would be a good change to have. I'm not certain how
> careful we need to be about preserving compatibility with any
> platform that is still using dnsmasq older than 2.47, though. Dan or
> Dan, would you like to weigh in on that?

RHEL5 is still a primary platform targetted for libvirt
releases and that has dnsmasq 2.45. Thus I'd prefer that
we found a way to support the IPv6 DNS feature if dnsmasq
is new enough, without preventing people using IPv4 only
DNS on older dnsmasq.

Daniel




More information about the libvir-list mailing list