UNIX System Administration Handbook - Evi Nemeth [269]
All info items must be quoted. You can use a single quoted string or multiple strings that are individually quoted. Be sure the quotes are balanced—a missing quote will wreak havoc with your DNS data because all the records between the missing quote and the next occurrence of a quote will mysteriously disappear.
TXT records have no intrinsic order. If you use several of them to add a paragraph of information to your DNS, they may all be scrambled by the time named and UDP are done with them.
IPv6 resource records
IPv6 is a new version of the IP protocol. It has spent nearly 10 years in the specification process and still isn’t done. IPv6 was originally motivated by a perceived need for more IP network addresses. However, the stopgap solutions to this problem—CIDR, NAT, and stricter control of addresses—have been so successful that a mass migration to IPv6 is unlikely to happen any time soon. Unless someone comes up with a new killer app that runs only on IPv6 (or some future version of Microsoft Windows defaults to it), sysadmins are unlikely to have to deal with IPv6 for a few more years. Some folks feel that the next generation of cell phones, which may have IP addresses, might just tip the scales in favor of IPv6.
See Chapter 13 for a more detailed discussion of IPv6.
Even though we don’t expect to see IPv6 deployed anytime soon, we think it’s worthwhile to describe the impact of 128-bit IP addresses on the DNS system. Both the address records and the pointer records have to change, but those changes are relatively simple compared to the task of supporting one of IPv6’s totally new concepts: shared ownership of addresses.
The host interface to which an IPv6 address corresponds owns some of the address bits but not all of them. Other bits are delegated to the site’s upstream ISPs in an attempt to make renumbering and changing ISPs an easy task. This design adds a lot of complexity. After looking at all the hoops that DNS has had to jump through to support the standards, we wonder if the standards’ authors have written any code lately. Probably not.
The IPv6 equivalent of DNS A records were originally called AAAA records, because IPv6 addresses were four times longer than IPv4 addresses. As the split-control scheme for IPv6 addresses evolved, the IETF standardized on two new record types: A6 records for name-to-address mappings and DNAME records for delegating portions of an address to different organizations. DNAMEs were inspired by the CNAME hack (see page 445), which allows delegation on bit boundaries. A6 records specify an address, but with the possibility that some of the high-order prefix bits must be obtained from another source.
Since we don’t expect IPv6 to be widely deployed before the next revision of this book, we defer detailed descriptions of the IPv6 lookup mechanisms until they have been better defined by the IETF and we have some operational experience with them. In the meantime, the following sections outline the gist of the new plan. You can skip ahead to Commands in zone files on page 453 if you’d rather not read about IPv6.
A6 records
The format of an A6 record is
hostname [ttl] IN A6 #-bits-deferred ipaddr referral
For example:
anchor IN A6 0 3ffe:8050:201:9:a00:20ff:fe81:2b32 .
anchor IN A6 48 ::9:a00:20ff:fe81:2b32 prefix.myisp.net.
These two records specify the same IPv6 address for the host anchor; one is fully specified with no prefix bits deferred, and the other has 48 prefix bits deferred to the host prefix.myisp.net. Note the dot as the referral parameter in the first form of the A6 record; it indicates that no further referral is needed.
Forward name lookups might have to talk to many name servers up the A6 chain to assemble a complete 128-bit address. For example, with the second line above, the next level up could defer 47 bits, the next level could defer 46 bits, and so on. 48 queries might be needed to get the full answer. Add to that number the DNSSEC queries needed to verify each piece of the address, and you have a 100-fold increase in