IPv6 Address Record (AAAA)

The current IETF recommendation is to use AAAA (Quad A) RR for forward mapping and PTR RRs for reverse mapping when defining IPv6 networks. The IPv6 AAAA RR is defined in RFC 3596. RFC 3363 changed the status of the A6 RR (defined in RFC 2874 from a PROPOSED STANDARD to EXPERIMENTAL due primarily to performance and operational concerns. Tech Info - IPv6.

Syntax of AAAA RR

name  ttl  class   rr     ipv6
joe        IN      A      2001:db8::1

If multiple addresses are defined with the same name then BIND will respond to queries with a list of the addresses but the order may change on sucessive queries depending on the value of the rrset-order statement in BIND's named.conf file. The default order is cyclic or round-robin. The same IP may be defined with different names. IP addresses do not have to be in the same subnet or use the same global routing prefix. The order in which AAAA RRs are defined is not significant but it may be easier to define them in either an ascending or descending order of IP address since this can prevent unintentional duplicate definitions. Since the ipv6 field is an address not a name there is no terminating dot. The following zone file fragment illustrates various uses of the AAAA RR.

; zone fragment for example.com
$TTL 2d ; zone default = 2 days or 172800 seconds
$ORIGIN example.com.
....
joe        IN      AAAA      2001:db8::3  ; joe & www = same ip
www        IN      AAAA      2001:db8::3
; functionally the same as the record above
www.example.com.   AAAA      2001:db8::3
fred  3600 IN      AAAA      2001:db8::4  ; ttl =3600 overrides $TTL default
ftp        IN      AAAA      2001:db8::5 ; round robin with next
           IN      AAAA      2001:db8::6
mail       IN      AAAA      2001:db8::7  ; mail = round robin
mail       IN      AAAA      2001:db8::32
mail       IN      AAAA      2001:db8::33
squat      IN      AAAA      2001:db8:0:0:1::13  ; address in another subnet

IPv6 and IPv4 RRs can be freely mixed in the zone file as shown the following fragment:

; zone fragment for example.com
$TTL 2d ; zone default = 2 days or 172800 seconds
$ORIGIN example.com.
....

www        IN      A      192.168.0.3
mail       IN      A      192.168.0.32
www        IN      AAAA   2001:db8::3
mail       IN      AAAA   2001:db8::32

Blank name substitution can also be used in mixed configurations if this is more convenient or understandable:

; zone fragment for example.com
$TTL 2d ; zone default = 2 days or 172800 seconds
$ORIGIN example.com.
....
www        IN      A      192.168.0.3
           IN      AAAA   2001:db8::3
mail       IN      A      192.168.0.32
           IN      AAAA   2001:db8::32

In both above fragments it is assumed that the hosts are running dual (IPv4/IPv6) IP stacks.

Pro DNS and BIND by Ron Aitchison

Contents

tech info
guides home
dns articles
intro
contents
1 objectives
big picture
2 concepts
3 reverse map
4 dns types
quickstart
5 install bind
6 samples
reference
7 named.conf
8 dns records
operations
9 howtos
10 tools
11 trouble
programming
12 bind api's
security
13 dns security
bits & bytes
15 messages
resources
notes & tips
registration FAQ
dns resources
dns rfc's
change log