IPv6 – DNS Part 2 (serving DNS over IPv6)

As I pointed out in the last IPv6 post, there are three parts of getting to “IPv6 DNS” and we only accomplished Step 1.

The first is to get AAAA (quad-A) records into your DNS system. At that point clients can ask for the AAAA records over IPv4 and everything will work just fine.

The second is for you to actually serve your DNS zones over IPv6.

The third is to get hooked into the global IPv6 DNS system, so that others can resolve your IPv6 addresses.

Here we go with Part 2, to get our own Bind name server to listen (and answer) on IPv6 transport.

Depending on your particular version of Bind and Linux, you may already be ready to listen for queries on IPv6. Look in /etc/bind for the config file that contains the Bind options. In my version of Ubuntu, this is /etc/bind/named.conf.options

All you need is the following directive:

listen-on-v6 {any};

This tells bind to listen on all IPv6 interfaces. There’s an implied “listen-on {any};” which does the same for IPv4. In both cases, you can also use the “listen” directive to select specific interfaces or ports for Bind to listen to in IPv4 and IPv6.

After changing the config file and restarting Bind, we can query DNS over IPv6 from the same computer: