DNS Extensions to support IP version 6
RFC 1886

Document Type RFC - Proposed Standard (December 1995; No errata)
Obsoleted by RFC 3596
Updated by RFC 2874, RFC 3152
Last updated 2013-03-02
Stream IETF
Formats plain text pdf html
Stream WG state (None)
Document shepherd No shepherd assigned
IESG IESG state RFC 1886 (Proposed Standard)
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                         S. Thomson
Request for Comments: 1886                                      Bellcore
Category: Standards Track                                     C. Huitema
                                                           December 1995

                DNS Extensions to support IP version 6

Status of this Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.


   This document defines the changes that need to be made to the Domain
   Name System to support hosts running IP version 6 (IPv6).  The
   changes include a new resource record type to store an IPv6 address,
   a new domain to support lookups based on an IPv6 address, and updated
   definitions of existing query types that return Internet addresses as
   part of additional section processing.  The extensions are designed
   to be compatible with existing applications and, in particular, DNS
   implementations themselves.

Thompson & Huitema          Standards Track                    [Page 1]
RFC 1886                  IPv6 DNS Extensions              December 1995


   Current support for the storage of Internet addresses in the Domain
   Name System (DNS)[1,2] cannot easily be extended to support IPv6
   addresses[3] since applications assume that address queries return
   32-bit IPv4 addresses only.

   To support the storage of IPv6 addresses we define the following

      o A new resource record type is defined to map a domain name to an
        IPv6 address.

      o A new domain is defined to support lookups based on address.

      o Existing queries that perform additional section processing to
        locate IPv4 addresses are redefined to perform additional
        section processing on both IPv4 and IPv6 addresses.

   The changes are designed to be compatible with existing software. The
   existing support for IPv4 addresses is retained. Transition issues
   related to the co-existence of both IPv4 and IPv6 addresses in DNS
   are discussed in [4].


   A new record type is defined to store a host's IPv6 address. A host
   that has more than one IPv6 address must have more than one such

2.1 AAAA record type

   The AAAA resource record type is a new record specific to the
   Internet class that stores a single IPv6 address.

   The value of the type is 28 (decimal).

2.2 AAAA data format

   A 128 bit IPv6 address is encoded in the data portion of an AAAA
   resource record in network byte order (high-order byte first).

Thompson & Huitema          Standards Track                    [Page 2]
RFC 1886                  IPv6 DNS Extensions              December 1995

2.3 AAAA query

   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.

2.4 Textual format of AAAA records

   The textual representation of the data portion of the AAAA resource
   record used in a master database file is the textual representation
   of a IPv6 address as defined in [3].

2.5 IP6.INT Domain

   A special domain is defined to look up a record given an address. The
   intent of this domain is to provide a way of mapping an IPv6 address
   to a host name, although it may be used for other purposes as well.
   The domain is rooted at IP6.INT.

   An IPv6 address is represented as a name in the IP6.INT domain by a
   sequence of nibbles separated by dots with the suffix ".IP6.INT". The
   sequence of nibbles is encoded in reverse order, i.e. the low-order
   nibble is encoded first, followed by the next low-order nibble and so
   on. Each nibble is represented by a hexadecimal digit. For example,
   the inverse lookup domain name corresponding to the address


   would be



   All existing query types that perform type A additional section
   processing, i.e. name server (NS), mail exchange (MX) and mailbox
   (MB) query types, must be redefined to perform both type A and type
Show full document text