DNS Extensions to support IP version 6
Extracted elements (11)
Existing DNS infrastructure assumed address queries return only 32-bit IPv4 addresses, making it impossible to extend for IPv6 without defining a new resource record type. The AAAA record and IP6.INT domain are designed to be backward-compatible, preserving existing IPv4 support.
The textual representation of the AAAA record data in master database files follows the IPv6 address text format defined in RFC 1884, ensuring consistency across DNS tooling and configuration files.
A host that has more than one IPv6 address MUST have more than one AAAA record.
All existing query types that perform type A additional section processing (NS, MX, MB) must be redefined to perform both type A and type AAAA additional section processing, so that relevant IPv4 and IPv6 addresses are added to the additional section.
An AAAA query for a specified domain name in the Internet class returns all associated AAAA resource records in the answer section of a response. A type AAAA query does not perform additional section processing.
The AAAA resource record type (type value 28, decimal) is defined as an Internet-class record that stores a single IPv6 address, mapping a domain name to a 128-bit IPv6 address.
The IP6.INT special domain supports reverse lookups of IPv6 addresses. An IPv6 address is encoded as a sequence of nibbles in reverse order separated by dots with the suffix '.IP6.INT', where each nibble is represented as a hexadecimal digit.
This document defines DNS resource record type 28 (AAAA) for storing IPv6 addresses, implicitly updating the IANA DNS Resource Record Type registry.
The RFC explicitly states that security issues are not discussed in this memo, providing no security analysis for the new AAAA record type or IP6.INT reverse lookup domain.
In the IP6.INT reverse lookup domain, the address nibbles are encoded in reverse order (low-order nibble first). For example, 4321:0:1:2:3:4:567:89ab becomes b.a.9.8.7.6.5.0.4.0.0.0.3.0.0.0.2.0.0.0.1.0.0.0.0.0.0.0.1.2.3.4.IP6.INT.
The AAAA record data field encodes a 128-bit IPv6 address in network byte order (high-order byte first) in the RDATA portion of the resource record.