home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / rfc / rfc1884 < prev    next >
Text File  |  1996-01-03  |  38KB  |  1,012 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                       R. Hinden, Ipsilon Networks
  8. Request for Comments: 1884                       S. Deering, Xerox PARC
  9. Category: Standards Track                                       Editors
  10.                                                           December 1995
  11.  
  12.  
  13.                   IP Version 6 Addressing Architecture
  14.  
  15.  
  16.  
  17.  
  18. Status of this Memo
  19.  
  20.    This document specifies an Internet standards track protocol for the
  21.    Internet community, and requests discussion and suggestions for
  22.    improvements.  Please refer to the current edition of the "Internet
  23.    Official Protocol Standards" (STD 1) for the standardization state
  24.    and status of this protocol.  Distribution of this memo is unlimited.
  25.  
  26.  
  27. Abstract
  28.  
  29.    This specification defines the addressing architecture of the IP
  30.    Version 6 protocol [IPV6].  The document includes the IPv6 addressing
  31.    model, text representations of IPv6 addresses, definition of IPv6
  32.    unicast addresses, anycast addresses, and multicast addresses, and an
  33.    IPv6 nodes required addresses.
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58. Hinden & Deering            Standards Track                     [Page 1]
  59.  
  60. RFC 1884              IPv6 Addressing Architecture         December 1995
  61.  
  62.  
  63. Table of Contents
  64.  
  65.    1. Introduction................................................3
  66.  
  67.    2. IPv6 Addressing.............................................3
  68.       2.1 Addressing Model........................................4
  69.       2.2 Text Representation of Addresses........................4
  70.       2.3 Address Type Representation.............................5
  71.       2.4 Unicast Addresses.......................................7
  72.         2.4.1 Unicast Address Example.............................8
  73.         2.4.2 The Unspecified Address.............................9
  74.         2.4.3 The Loopback Address................................9
  75.         2.4.4 IPv6 Addresses with Embedded IPv4 Addresses.........9
  76.         2.4.5 NSAP Addresses......................................10
  77.         2.4.6 IPX Addresses.......................................10
  78.         2.4.7 Provider-Based Global Unicast Addresses.............10
  79.         2.4.8 Local-use IPv6 Unicast Addresses....................11
  80.       2.5 Anycast Addresses.......................................12
  81.         2.5.1 Required Anycast Address............................13
  82.       2.6 Multicast Addresses.....................................14
  83.         2.6.1 Pre-Defined Multicast Addresses.....................15
  84.       2.7 A Node's Required Addresses.............................17
  85.  
  86.    REFERENCES.....................................................18
  87.  
  88.    SECURITY CONSIDERATIONS........................................18
  89.  
  90.    DOCUMENT EDITOR'S ADDRESSES....................................18
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114. Hinden & Deering            Standards Track                     [Page 2]
  115.  
  116. RFC 1884              IPv6 Addressing Architecture         December 1995
  117.  
  118.  
  119. 1.0 INTRODUCTION
  120.  
  121.    This specification defines the addressing architecture of the IP
  122.    Version 6 protocol.  It includes a detailed description of the
  123.    currently defined address formats for IPv6 [IPV6].
  124.  
  125.    The editors would like to acknowledge the contributions of Paul
  126.    Francis, Jim Bound, Brian Carpenter, Deborah Estrin, Peter Ford, Bob
  127.    Gilligan, Christian Huitema, Tony Li, Greg Minshall, Erik Nordmark,
  128.    Yakov Rekhter, Bill Simpson, and Sue Thomson.
  129.  
  130. 2.0 IPv6 ADDRESSING
  131.  
  132.    IPv6 addresses are 128-bit identifiers for interfaces and sets of
  133.    interfaces.  There are three types of addresses:
  134.  
  135.  
  136.        Unicast:   An identifier for a single interface.  A packet sent
  137.                   to a unicast address is delivered to the interface
  138.                   identified by that address.
  139.  
  140.        Anycast:   An identifier for a set of interfaces (typically
  141.                   belonging to different nodes).  A packet sent to an
  142.                   anycast address is delivered to one of the interfaces
  143.                   identified by that address (the "nearest" one,
  144.                   according to the routing protocols' measure of
  145.                   distance).
  146.  
  147.        Multicast: An identifier for a set of interfaces (typically
  148.                   belonging to different nodes).  A packet sent to a
  149.                   multicast address is delivered to all interfaces
  150.                   identified by that address.
  151.  
  152.    There are no broadcast addresses in IPv6, their function being
  153.    superseded by multicast addresses.
  154.  
  155.    In this document, fields in addresses are given a specific name, for
  156.    example "subscriber".  When this name is used with the term "ID" for
  157.    identifier after the name (e.g., "subscriber ID"), it refers to the
  158.    contents of the named field.  When it is used with the term "prefix"
  159.    (e.g., "subscriber prefix") it refers to all of the address up to and
  160.    including this field.
  161.  
  162.    In IPv6, all zeros and all ones are legal values for any field,
  163.    unless specifically excluded.  Specifically, prefixes may contain
  164.    zero-valued fields or end in zeros.
  165.  
  166.  
  167.  
  168.  
  169.  
  170. Hinden & Deering            Standards Track                     [Page 3]
  171.  
  172. RFC 1884              IPv6 Addressing Architecture         December 1995
  173.  
  174.  
  175.    2.1 Addressing Model
  176.  
  177.    IPv6 Addresses of all types are assigned to interfaces, not nodes.
  178.    Since each interface belongs to a single node, any of that node's
  179.    interfaces' unicast addresses may be used as an identifier for the
  180.    node.
  181.  
  182.    An IPv6 unicast address refers to a single interface.  A single
  183.    interface may be assigned multiple IPv6 addresses of any type
  184.    (unicast, anycast, and multicast).  There are two exceptions to this
  185.    model.  These are:
  186.  
  187.      1) A single address may be assigned to multiple physical interfaces
  188.         if the implementation treats the multiple physical interfaces as
  189.         one interface when presenting it to the internet layer.  This is
  190.         useful for load-sharing over multiple physical interfaces.
  191.  
  192.      2) Routers may have unnumbered interfaces (i.e., no IPv6 address
  193.         assigned to the interface) on point-to-point links to eliminate
  194.         the necessity to manually configure and advertise the addresses.
  195.         Addresses are not needed for point-to-point interfaces on
  196.         routers if those interfaces are not to be used as the origins or
  197.         destinations of any IPv6 datagrams.
  198.  
  199.    IPv6 continues the IPv4 model that a subnet is associated with one
  200.    link.  Multiple subnets may be assigned to the same link.
  201.  
  202.  
  203.    2.2 Text Representation of Addresses
  204.  
  205.    There are three conventional forms for representing IPv6 addresses as
  206.    text strings:
  207.  
  208.      1. The preferred form is x:x:x:x:x:x:x:x, where the 'x's are the
  209.         hexadecimal values of the eight 16-bit pieces of the address.
  210.         Examples:
  211.  
  212.                    FEDC:BA98:7654:3210:FEDC:BA98:7654:3210
  213.  
  214.                    1080:0:0:0:8:800:200C:417A
  215.  
  216.         Note that it is not necessary to write the leading zeros in an
  217.         individual field, but there must be at least one numeral in
  218.         every field (except for the case described in 2.).
  219.  
  220.      2. Due to the method of allocating certain styles of IPv6
  221.         addresses, it will be common for addresses to contain long
  222.         strings of zero bits.  In order to make writing addresses
  223.  
  224.  
  225.  
  226. Hinden & Deering            Standards Track                     [Page 4]
  227.  
  228. RFC 1884              IPv6 Addressing Architecture         December 1995
  229.  
  230.  
  231.         containing zero bits easier a special syntax is available to
  232.         compress the zeros.  The use of "::" indicates multiple groups
  233.         of 16-bits of zeros.  The "::" can only appear once in an
  234.         address.  The "::" can also be used to compress the leading
  235.         and/or trailing zeros in an address.
  236.  
  237.         For example the following addresses:
  238.  
  239.              1080:0:0:0:8:800:200C:417A  a unicast address
  240.              FF01:0:0:0:0:0:0:43         a multicast address
  241.              0:0:0:0:0:0:0:1             the loopback address
  242.              0:0:0:0:0:0:0:0             the unspecified addresses
  243.  
  244.         may be represented as:
  245.  
  246.              1080::8:800:200C:417A       a unicast address
  247.              FF01::43                    a multicast address
  248.              ::1                         the loopback address
  249.              ::                          the unspecified addresses
  250.  
  251.      3. An alternative form that is sometimes more convenient when
  252.         dealing with a mixed environment of IPv4 and IPv6 nodes is
  253.         x:x:x:x:x:x:d.d.d.d, where the 'x's are the hexadecimal values
  254.         of the six high-order 16-bit pieces of the address, and the 'd's
  255.         are the decimal values of the four low-order 8-bit pieces of the
  256.         address (standard IPv4 representation).  Examples:
  257.  
  258.              0:0:0:0:0:0:13.1.68.3
  259.  
  260.              0:0:0:0:0:FFFF:129.144.52.38
  261.  
  262.         or in compressed form:
  263.  
  264.              ::13.1.68.3
  265.  
  266.              ::FFFF:129.144.52.38
  267.  
  268.  
  269.    2.3 Address Type Representation
  270.  
  271.    The specific type of an IPv6 address is indicated by the leading bits
  272.    in the address.  The variable-length field comprising these leading
  273.    bits is called the Format Prefix (FP).  The initial allocation of
  274.    these prefixes is as follows:
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282. Hinden & Deering            Standards Track                     [Page 5]
  283.  
  284. RFC 1884              IPv6 Addressing Architecture         December 1995
  285.  
  286.  
  287.         Allocation                         Prefix         Fraction of
  288.                                            (binary)       Address Space
  289.         -------------------------------    --------       -------------
  290.         Reserved                           0000 0000      1/256
  291.         Unassigned                         0000 0001      1/256
  292.  
  293.         Reserved for NSAP Allocation       0000 001       1/128
  294.         Reserved for IPX Allocation        0000 010       1/128
  295.  
  296.         Unassigned                         0000 011       1/128
  297.         Unassigned                         0000 1         1/32
  298.         Unassigned                         0001           1/16
  299.         Unassigned                         001            1/8
  300.  
  301.         Provider-Based Unicast Address     010            1/8
  302.  
  303.         Unassigned                         011            1/8
  304.  
  305.         Reserved for Geographic-
  306.         Based Unicast Addresses            100            1/8
  307.  
  308.         Unassigned                         101            1/8
  309.         Unassigned                         110            1/8
  310.         Unassigned                         1110           1/16
  311.         Unassigned                         1111 0         1/32
  312.         Unassigned                         1111 10        1/64
  313.         Unassigned                         1111 110       1/128
  314.  
  315.         Unassigned                         1111 1110 0    1/512
  316.  
  317.         Link Local Use Addresses           1111 1110 10   1/1024
  318.         Site Local Use Addresses           1111 1110 11   1/1024
  319.  
  320.         Multicast Addresses                1111 1111      1/256
  321.  
  322.         Note: The "unspecified address" (see section 2.4.2), the
  323.         loopback address (see section 2.4.3), and the IPv6 Addresses
  324.         with Embedded IPv4 Addresses (see section 2.4.4), are assigned
  325.         out of the 0000 0000 format prefix space.
  326.  
  327.  
  328.    This allocation supports the direct allocation of provider addresses,
  329.    local use addresses, and multicast addresses.  Space is reserved for
  330.    NSAP addresses, IPX addresses, and geographic addresses.  The
  331.    remainder of the address space is unassigned for future use.  This
  332.    can be used for expansion of existing use (e.g., additional provider
  333.    addresses, etc.) or new uses (e.g., separate locators and
  334.    identifiers).  Fifteen percent of the address space is initially
  335.  
  336.  
  337.  
  338. Hinden & Deering            Standards Track                     [Page 6]
  339.  
  340. RFC 1884              IPv6 Addressing Architecture         December 1995
  341.  
  342.  
  343.    allocated.  The remaining 85% is reserved for future use.
  344.  
  345.    Unicast addresses are distinguished from multicast addresses by the
  346.    value of the high-order octet of the addresses: a value of FF
  347.    (11111111) identifies an address as a multicast address; any other
  348.    value identifies an address as a unicast address.  Anycast addresses
  349.    are taken from the unicast address space, and are not syntactically
  350.    distinguishable from unicast addresses.
  351.  
  352.  
  353.    2.4 Unicast Addresses
  354.  
  355.    The IPv6 unicast address is contiguous bit-wise maskable, similar to
  356.    IPv4 addresses under Class-less Interdomain Routing [CIDR].
  357.  
  358.    There are several forms of unicast address assignment in IPv6,
  359.    including the global provider based unicast address, the geographic
  360.    based unicast address, the NSAP address, the IPX hierarchical
  361.    address, the site-local-use address, the link-local-use address, and
  362.    the IPv4-capable host address.  Additional address types can be
  363.    defined in the future.
  364.  
  365.    IPv6 nodes may have considerable or little knowledge of the internal
  366.    structure of the IPv6 address, depending on the role the node plays
  367.    (for instance, host versus router).  At a minimum, a node may
  368.    consider that unicast addresses (including its own) have no internal
  369.    structure:
  370.  
  371.     |                           128 bits                              |
  372.     +-----------------------------------------------------------------+
  373.     |                          node address                           |
  374.     +-----------------------------------------------------------------+
  375.  
  376.  
  377.    A slightly sophisticated host (but still rather simple) may
  378.    additionally be aware of subnet prefix(es) for the link(s) it is
  379.    attached to, where different addresses may have different values for
  380.    n:
  381.  
  382.     |                         n bits                 |   128-n bits   |
  383.     +------------------------------------------------+----------------+
  384.     |                   subnet prefix                | interface ID   |
  385.     +------------------------------------------------+----------------+
  386.  
  387.  
  388.    Still more sophisticated hosts may be aware of other hierarchical
  389.    boundaries in the unicast address.  Though a very simple router may
  390.    have no knowledge of the internal structure of IPv6 unicast
  391.  
  392.  
  393.  
  394. Hinden & Deering            Standards Track                     [Page 7]
  395.  
  396. RFC 1884              IPv6 Addressing Architecture         December 1995
  397.  
  398.  
  399.    addresses, routers will more generally have knowledge of one or more
  400.    of the hierarchical boundaries for the operation of routing
  401.    protocols.  The known boundaries will differ from router to router,
  402.    depending on what positions the router holds in the routing
  403.    hierarchy.
  404.  
  405.  
  406.    2.4.1 Unicast Address Examples
  407.  
  408.    An example of a Unicast address format which will likely be common on
  409.    LANs and other environments where IEEE 802 MAC addresses are
  410.    available is:
  411.  
  412.  
  413.     |              n bits            | 80-n bits |     48 bits        |
  414.     +--------------------------------+-----------+--------------------+
  415.     |        subscriber prefix       | subnet ID |   interface ID     |
  416.     +--------------------------------+-----------+--------------------+
  417.  
  418.    Where the 48-bit Interface ID is an IEEE-802 MAC address.  The use of
  419.    IEEE 802 MAC addresses as a interface ID is expected to be very
  420.    common in environments where nodes have an IEEE 802 MAC address.  In
  421.    other environments, where IEEE 802 MAC addresses are not available,
  422.    other types of link layer addresses can be used, such as E.164
  423.    addresses, for the interface ID.
  424.  
  425.    The inclusion of a unique global interface identifier, such as an
  426.    IEEE MAC address, makes possible a very simple form of auto-
  427.    configuration of addresses.  A node may discover a subnet ID by
  428.    listening to Router Advertisement messages sent by a router on its
  429.    attached link(s), and then fabricating an IPv6 address for itself by
  430.    using its IEEE MAC address as the interface ID on that subnet.
  431.  
  432.    Another unicast address format example is where a site or
  433.    organization requires additional layers of internal hierarchy.  In
  434.    this example the subnet ID is divided into an area ID and a subnet
  435.    ID.  Its format is:
  436.  
  437.     |         s bits       | n bits  |   m bits     | 128-s-n-m bits  |
  438.     +----------------------+---------+--------------+-----------------+
  439.     |   subscriber prefix  | area ID |  subnet ID   |  interface ID   |
  440.     +----------------------+---------+--------------+-----------------+
  441.  
  442.    This technique can be continued to allow a site or organization to
  443.    add additional layers of internal hierarchy.  It may be desirable to
  444.    use an interface ID smaller than a 48-bit IEEE 802 MAC address to
  445.    allow more space for the additional layers of internal hierarchy.
  446.    These could be interface IDs which are administratively created by
  447.  
  448.  
  449.  
  450. Hinden & Deering            Standards Track                     [Page 8]
  451.  
  452. RFC 1884              IPv6 Addressing Architecture         December 1995
  453.  
  454.  
  455.    the site or organization.
  456.  
  457.  
  458.    2.4.2 The Unspecified Address
  459.  
  460.    The address 0:0:0:0:0:0:0:0 is called the unspecified address.  It
  461.    must never be assigned to any node.  It indicates the absence of an
  462.    address.  One example of its use is in the Source Address field of
  463.    any IPv6 datagrams sent by an initializing host before it has learned
  464.    its own address.
  465.  
  466.    The unspecified address must not be used as the destination address
  467.    of IPv6 datagrams or in IPv6 Routing Headers.
  468.  
  469.  
  470.    2.4.3 The Loopback Address
  471.  
  472.    The unicast address 0:0:0:0:0:0:0:1 is called the loopback address.
  473.    It may be used by a node to send an IPv6 datagram to itself.  It may
  474.    never be assigned to any interface.
  475.  
  476.    The loopback address must not be used as the source address in IPv6
  477.    datagrams that are sent outside of a single node.  An IPv6 datagram
  478.    with a destination address of loopback must never be sent outside of
  479.    a single node.
  480.  
  481.  
  482.    2.4.4 IPv6 Addresses with Embedded IPv4 Addresses
  483.  
  484.    The IPv6 transition mechanisms include a technique for hosts and
  485.    routers to dynamically tunnel IPv6 packets over IPv4 routing
  486.    infrastructure.  IPv6 nodes that utilize this technique are assigned
  487.    special IPv6 unicast addresses that carry an IPv4 address in the
  488.    low-order 32-bits.  This type of address is termed an "IPv4-
  489.    compatible IPv6 address" and has the format:
  490.  
  491.  
  492.     |                80 bits               | 16 |      32 bits        |
  493.     +--------------------------------------+--------------------------+
  494.     |0000..............................0000|0000|    IPv4 address     |
  495.     +--------------------------------------+----+---------------------+
  496.  
  497.  
  498.    A second type of IPv6 address which holds an embedded IPv4 address is
  499.    also defined.  This address is used to represent the addresses of
  500.    IPv4-only nodes (those that *do not* support IPv6) as IPv6 addresses.
  501.    This type of address is termed an "IPv4-mapped IPv6 address" and has
  502.    the format:
  503.  
  504.  
  505.  
  506. Hinden & Deering            Standards Track                     [Page 9]
  507.  
  508. RFC 1884              IPv6 Addressing Architecture         December 1995
  509.  
  510.  
  511.  
  512.     |                80 bits               | 16 |      32 bits        |
  513.     +--------------------------------------+--------------------------+
  514.     |0000..............................0000|FFFF|    IPv4 address     |
  515.     +--------------------------------------+----+---------------------+
  516.  
  517.  
  518.  
  519.    2.4.5 NSAP Addresses
  520.  
  521.    This mapping of NSAP address into IPv6 addresses is as follows:
  522.  
  523.  
  524.     |   7   |                   121 bits                              |
  525.     +-------+---------------------------------------------------------+
  526.     |0000001|                 to be defined                           |
  527.     +-------+---------------------------------------------------------+
  528.  
  529.    The draft definition, motivation, and usage are under study [NSAP].
  530.  
  531.  
  532.    2.4.6 IPX Addresses
  533.  
  534.    This mapping of IPX address into IPv6 addresses is as follows:
  535.  
  536.  
  537.     |   7   |                   121 bits                              |
  538.     +-------+---------------------------------------------------------+
  539.     |0000010|                 to be defined                           |
  540.     +-------+---------------------------------------------------------+
  541.  
  542.    The draft definition, motivation, and usage are under study.
  543.  
  544.  
  545.    2.4.7 Provider-Based Global Unicast Addresses
  546.  
  547.    The global provider-based unicast address is assigned as described in
  548.    [ALLOC].  This initial assignment plan for these unicast addresses is
  549.    similar to assignment of IPv4 addresses under the CIDR scheme [CIDR].
  550.    The IPv6 global provider-based unicast address format is as follows:
  551.  
  552.  
  553.     | 3 |  n bits   |  m bits   |   o bits    |   125-n-m-o bits   |
  554.     +---+-----------+-----------+-------------+--------------------+
  555.     |010|registry ID|provider ID|subscriber ID|  intra-subscriber  |
  556.     +---+-----------+-----------+-------------+--------------------+
  557.  
  558.  
  559.  
  560.  
  561.  
  562. Hinden & Deering            Standards Track                    [Page 10]
  563.  
  564. RFC 1884              IPv6 Addressing Architecture         December 1995
  565.  
  566.  
  567.    The high-order part of the address is assigned to registries, who
  568.    then assign portions of the address space to providers, who then
  569.    assign portions of the address space to subscribers, etc.
  570.  
  571.    The registry ID identifies the registry which assigns the provider
  572.    portion of the address.  The term "registry prefix" refers to the
  573.    high-order part of the address up to and including the registry ID.
  574.  
  575.    The provider ID identifies a specific provider which assigns the
  576.    subscriber portion of the address.  The term "provider prefix" refers
  577.    to the high-order part of the address up to and including the
  578.    provider ID.
  579.  
  580.    The subscriber ID distinguishes among multiple subscribers attached
  581.    to the provider identified by the provider ID.  The term "subscriber
  582.    prefix" refers to the high-order part of the address up to and
  583.    including the subscriber ID.
  584.  
  585.    The intra-subscriber portion of the address is defined by an
  586.    individual subscriber and is organized according to the subscribers
  587.    local internet topology.  It is likely that many subscribers will
  588.    choose to divide the intra-subscriber portion of the address into a
  589.    subnet ID and an interface ID.  In this case the subnet ID identifies
  590.    a specific physical link and the interface ID identifies a single
  591.    interface on that subnet.
  592.  
  593.  
  594.    2.4.8 Local-use IPv6 Unicast Addresses
  595.  
  596.    There are two types of local-use unicast addresses defined.  These
  597.    are Link-Local and Site-Local.  The Link-Local is for use on a single
  598.    link and the Site-Local is for use in a single site.  Link-Local
  599.    addresses have the following format:
  600.  
  601.     |   10     |
  602.     |  bits    |        n bits           |       118-n bits           |
  603.     +----------+-------------------------+----------------------------+
  604.     |1111111010|           0             |       interface ID         |
  605.     +----------+-------------------------+----------------------------+
  606.  
  607.    Link-Local addresses are designed to be used for addressing on a
  608.    single link for purposes such as auto-address configuration, neighbor
  609.    discovery, or when no routers are present.
  610.  
  611.    Routers MUST not forward any packets with link-local source
  612.    addresses.
  613.  
  614.  
  615.  
  616.  
  617.  
  618. Hinden & Deering            Standards Track                    [Page 11]
  619.  
  620. RFC 1884              IPv6 Addressing Architecture         December 1995
  621.  
  622.  
  623.    Site-Local addresses have the following format:
  624.  
  625.     |   10     |
  626.     |  bits    | n bits  |    m bits     |       118-n-m bits         |
  627.     +----------+---------+---------------+----------------------------+
  628.     |1111111011|    0    |   subnet ID   |       interface ID         |
  629.     +----------+---------+---------------+----------------------------+
  630.  
  631.  
  632.    Site-Local addresses may be used for sites or organizations that are
  633.    not (yet) connected to the global Internet.  They do not need to
  634.    request or "steal" an address prefix from the global Internet address
  635.    space.  IPv6 site-local addresses can be used instead.  When the
  636.    organization connects to the global Internet, it can then form global
  637.    addresses by replacing the site-local prefix with a subscriber
  638.    prefix.
  639.  
  640.    Routers MUST not forward any packets with site-local source addresses
  641.    outside of the site.
  642.  
  643.    2.5 Anycast Addresses
  644.  
  645.    An IPv6 anycast address is an address that is assigned to more than
  646.    one interface (typically belonging to different nodes), with the
  647.    property that a packet sent to an anycast address is routed to the
  648.    "nearest" interface having that address, according to the routing
  649.    protocols' measure of distance.
  650.  
  651.    Anycast addresses are allocated from the unicast address space, using
  652.    any of the defined unicast address formats.  Thus, anycast addresses
  653.    are syntactically indistinguishable from unicast addresses.  When a
  654.    unicast address is assigned to more than one interface, thus turning
  655.    it into an anycast address, the nodes to which the address is
  656.    assigned must be explicitly configured to know that it is an anycast
  657.    address.
  658.  
  659.    For any assigned anycast address, there is a longest address prefix P
  660.    that identifies the topological region in which all interfaces
  661.    belonging to that anycast address reside.  Within the region
  662.    identified by P, each member of the anycast set must be advertised as
  663.    a separate entry in the routing system (commonly referred to as a
  664.    "host route"); outside the region identified by P, the anycast
  665.    address may be aggregated into the routing advertisement for prefix
  666.    P.
  667.  
  668.    Note that in, the worst case, the prefix P of an anycast set may be
  669.    the null prefix, i.e., the members of the set may have no topological
  670.    locality.  In that case, the anycast address must be advertised as a
  671.  
  672.  
  673.  
  674. Hinden & Deering            Standards Track                    [Page 12]
  675.  
  676. RFC 1884              IPv6 Addressing Architecture         December 1995
  677.  
  678.  
  679.    separate routing entry throughout the entire internet, which presents
  680.    a severe scaling limit on how many such "global" anycast sets may be
  681.    supported.  Therefore, it is expected that support for global anycast
  682.    sets may be unavailable or very restricted.
  683.  
  684.    One expected use of anycast addresses is to identify the set of
  685.    routers belonging to an internet service provider.  Such addresses
  686.    could be used as intermediate addresses in an IPv6 Routing header, to
  687.    cause a packet to be delivered via a particular provider or sequence
  688.    of providers.  Some other possible uses are to identify the set of
  689.    routers attached to a particular subnet, or the set of routers
  690.    providing entry into a particular routing domain.
  691.  
  692.    There is little experience with widespread, arbitrary use of internet
  693.    anycast addresses, and some known complications and hazards when
  694.    using them in their full generality [ANYCST].  Until more experience
  695.    has been gained and solutions agreed upon for those problems, the
  696.    following restrictions are imposed on IPv6 anycast addresses:
  697.  
  698.       o An anycast address MUST NOT be used as the source address of an
  699.         IPv6 packet.
  700.  
  701.       o An anycast address MUST NOT be assigned to an IPv6 host, that
  702.         is, it may be assigned to an IPv6 router only.
  703.  
  704.  
  705.    2.5.1 Required Anycast Address
  706.  
  707.    The Subnet-Router anycast address is predefined.  It's format is as
  708.    follows:
  709.  
  710.  
  711.     |                         n bits                 |   128-n bits   |
  712.     +------------------------------------------------+----------------+
  713.     |                   subnet prefix                | 00000000000000 |
  714.     +------------------------------------------------+----------------+
  715.  
  716.  
  717.    The "subnet prefix" in an anycast address is the prefix which
  718.    identifies a specific link.  This anycast address is syntactically
  719.    the same as a unicast address for an interface on the link with the
  720.    interface identifier set to zero.
  721.  
  722.    Packets sent to the Subnet-Router anycast address will be delivered
  723.    to one router on the subnet.  All routers are required to support the
  724.    Subnet-Router anycast addresses for the subnets which they have
  725.    interfaces.
  726.  
  727.  
  728.  
  729.  
  730. Hinden & Deering            Standards Track                    [Page 13]
  731.  
  732. RFC 1884              IPv6 Addressing Architecture         December 1995
  733.  
  734.  
  735.    The subnet-router anycast address is intended to be used for
  736.    applications where a node needs to communicate with one of a set of
  737.    routers on a remote subnet.  For example when a mobile host needs to
  738.    communicate with one of the mobile agents on it's "home" subnet.
  739.  
  740.  
  741.    2.6 Multicast Addresses
  742.  
  743.    An IPv6 multicast address is an identifier for a group of nodes.  A
  744.    node may belong to any number of multicast groups.  Multicast
  745.    addresses have the following format:
  746.  
  747.     |   8    |  4 |  4 |                  112 bits                   |
  748.     +------ -+----+----+---------------------------------------------+
  749.     |11111111|flgs|scop|                  group ID                   |
  750.     +--------+----+----+---------------------------------------------+
  751.  
  752.         11111111 at the start of the address identifies the address as
  753.         being a multicast address.
  754.  
  755.                                       +-+-+-+-+
  756.         flgs is a set of 4 flags:     |0|0|0|T|
  757.                                       +-+-+-+-+
  758.  
  759.              The high-order 3 flags are reserved, and must be
  760.              initialized to 0.
  761.  
  762.              T = 0 indicates a permanently-assigned ("well-known")
  763.              multicast address, assigned by the global internet
  764.              numbering authority.
  765.  
  766.              T = 1 indicates a non-permanently-assigned ("transient")
  767.              multicast address.
  768.  
  769.         scop is a 4-bit multicast scope value used to limit the scope of
  770.         the multicast group.  The values are:
  771.  
  772.              0  reserved
  773.              1  node-local scope
  774.              2  link-local scope
  775.              3  (unassigned)
  776.              4  (unassigned)
  777.              5  site-local scope
  778.              6  (unassigned)
  779.              7  (unassigned)
  780.              8  organization-local scope
  781.              9  (unassigned)
  782.              A  (unassigned)
  783.  
  784.  
  785.  
  786. Hinden & Deering            Standards Track                    [Page 14]
  787.  
  788. RFC 1884              IPv6 Addressing Architecture         December 1995
  789.  
  790.  
  791.              B  (unassigned)
  792.              C  (unassigned)
  793.              D  (unassigned)
  794.              E  global scope
  795.              F  reserved
  796.  
  797.         group ID identifies the multicast group, either permanent or
  798.         transient, within the given scope.
  799.  
  800.    The "meaning" of a permanently-assigned multicast address is
  801.    independent of the scope value.  For example, if the "NTP servers
  802.    group" is assigned a permanent multicast address with a group ID of
  803.    43 (hex), then:
  804.  
  805.         FF01:0:0:0:0:0:0:43 means all NTP servers on the same node as
  806.         the sender.
  807.  
  808.         FF02:0:0:0:0:0:0:43 means all NTP servers on the same link as
  809.         the sender.
  810.  
  811.         FF05:0:0:0:0:0:0:43 means all NTP servers at the same site as
  812.         the sender.
  813.  
  814.         FF0E:0:0:0:0:0:0:43 means all NTP servers in the internet.
  815.  
  816.    Non-permanently-assigned multicast addresses are meaningful only
  817.    within a given scope.  For example, a group identified by the non-
  818.    permanent, site-local multicast address FF15:0:0:0:0:0:0:43 at one
  819.    site bears no relationship to a group using the same address at a
  820.    different site, nor to a non-permanent group using the same group ID
  821.    with different scope, nor to a permanent group with the same group
  822.    ID.
  823.  
  824.    Multicast addresses must not be used as source addresses in IPv6
  825.    datagrams or appear in any routing header.
  826.  
  827.  
  828.    2.6.1 Pre-Defined Multicast Addresses
  829.  
  830.    The following well-known multicast addresses are pre-defined:
  831.  
  832.         Reserved Multicast Addresses:   FF00:0:0:0:0:0:0:0
  833.                                         FF01:0:0:0:0:0:0:0
  834.                                         FF02:0:0:0:0:0:0:0
  835.                                         FF03:0:0:0:0:0:0:0
  836.                                         FF04:0:0:0:0:0:0:0
  837.                                         FF05:0:0:0:0:0:0:0
  838.                                         FF06:0:0:0:0:0:0:0
  839.  
  840.  
  841.  
  842. Hinden & Deering            Standards Track                    [Page 15]
  843.  
  844. RFC 1884              IPv6 Addressing Architecture         December 1995
  845.  
  846.  
  847.                                         FF07:0:0:0:0:0:0:0
  848.                                         FF08:0:0:0:0:0:0:0
  849.                                         FF09:0:0:0:0:0:0:0
  850.                                         FF0A:0:0:0:0:0:0:0
  851.                                         FF0B:0:0:0:0:0:0:0
  852.                                         FF0C:0:0:0:0:0:0:0
  853.                                         FF0D:0:0:0:0:0:0:0
  854.                                         FF0E:0:0:0:0:0:0:0
  855.                                         FF0F:0:0:0:0:0:0:0
  856.  
  857.    The above multicast addresses are reserved and shall never be
  858.    assigned to any multicast group.
  859.  
  860.         All Nodes Addresses:    FF01:0:0:0:0:0:0:1
  861.                                 FF02:0:0:0:0:0:0:1
  862.  
  863.    The above multicast addresses identify the group of all IPv6 nodes,
  864.    within scope 1 (node-local) or 2 (link-local).
  865.  
  866.         All Routers Addresses:   FF01:0:0:0:0:0:0:2
  867.                                  FF02:0:0:0:0:0:0:2
  868.  
  869.    The above multicast addresses identify the group of all IPv6 routers,
  870.    within scope 1 (node-local) or 2 (link-local).
  871.  
  872.         DHCP Server/Relay-Agent: FF02:0:0:0:0:0:0:C
  873.  
  874.    The above multicast addresses identify the group of all IPv6 DHCP
  875.    Servers and Relay Agents within scope 2 (link-local).
  876.  
  877.         Solicited-Node Address:  FF02:0:0:0:0:1:XXXX:XXXX
  878.  
  879.    The above multicast address is computed as a function of a node's
  880.    unicast and anycast addresses.  The solicited-node multicast address
  881.    is formed by taking the low-order 32 bits of the address (unicast or
  882.    anycast) and appending those bits to the 96-bit prefix FF02:0:0:0:0:1
  883.    resulting in a multicast address in the range
  884.  
  885.            FF02:0:0:0:0:1:0000:0000
  886.  
  887.    to
  888.  
  889.            FF02:0:0:0:0:1:FFFF:FFFF
  890.  
  891.    For example, the solicited node multicast address corresponding to
  892.    the IPv6 address 4037::01:800:200E:8C6C is FF02::1:200E:8C6C.  IPv6
  893.    addresses that differ only in the high-order bits, e.g., due to
  894.    multiple high-order prefixes associated with different providers,
  895.  
  896.  
  897.  
  898. Hinden & Deering            Standards Track                    [Page 16]
  899.  
  900. RFC 1884              IPv6 Addressing Architecture         December 1995
  901.  
  902.  
  903.    will map to the same solicited-node address thereby reducing the
  904.    number of multicast addresses a node must join.
  905.  
  906.    A node is required to compute and support a Solicited-Node multicast
  907.    addresses for every unicast and anycast address it is assigned.
  908.  
  909.    2.7 A Node's Required Addresses
  910.  
  911.    A host is required to recognize the following addresses as
  912.    identifying itself:
  913.  
  914.       o Its Link-Local Address for each interface
  915.       o Assigned Unicast Addresses
  916.       o Loopback Address
  917.       o All-Nodes Multicast Address
  918.       o Solicited-Node Multicast Address for each of its assigned
  919.         unicast and anycast addresses
  920.       o Multicast Addresses of all other groups which the host belongs.
  921.  
  922.    A router is required to recognize the following addresses as
  923.    identifying itself:
  924.  
  925.       o Its Link-Local Address for each interface
  926.       o Assigned Unicast Addresses
  927.       o Loopback Address
  928.       o The Subnet-Router anycast addresses for the links it has
  929.         interfaces.
  930.       o All other Anycast addresses with which the router has been
  931.         configured.
  932.       o All-Nodes Multicast Address
  933.       o All-Router Multicast Address
  934.       o Solicited-Node Multicast Address for each of its assigned
  935.         unicast and anycast addresses
  936.       o Multicast Addresses of all other groups which the router
  937.         belongs.
  938.  
  939.    The only address prefixes which should be predefined in an
  940.    implementation are the:
  941.  
  942.       o Unspecified Address
  943.       o Loopback Address
  944.       o Multicast Prefix (FF)
  945.       o Local-Use Prefixes (Link-Local and Site-Local)
  946.       o Pre-Defined Multicast Addresses
  947.       o IPv4-Compatible Prefixes
  948.  
  949.    Implementations should assume all other addresses are unicast unless
  950.    specifically configured (e.g., anycast addresses).
  951.  
  952.  
  953.  
  954. Hinden & Deering            Standards Track                    [Page 17]
  955.  
  956. RFC 1884              IPv6 Addressing Architecture         December 1995
  957.  
  958.  
  959. REFERENCES
  960.  
  961.      [ALLOC] Rekhter, Y., and T. Li, "An Architecture for IPv6 Unicast
  962.              Address Allocation", RFC 18XX, cisco Systems, December
  963.              1995.
  964.  
  965.      [ANYCST] Partridge, C., Mendez, T., and W. Milliken, "Host
  966.              Anycasting Service", RFC 1546, BBN, November 1993.
  967.  
  968.      [CIDR] Fuller, V., Li, T., Varadhan, K., and J. Yu, "Supernetting:
  969.              an Address Assignment and Aggregation Strategy", RFC 1338,
  970.              BARRNet, cisco, Merit, OARnet, June 1992.
  971.  
  972.      [IPV6] Deering, S., and R. Hinden, Editors, "Internet Protocol,
  973.              Version 6 (IPv6) Specification", RFC 1883, Xerox PARC,
  974.              Ipsilon Networks, December 1995.
  975.  
  976.      [MULT] Deering, S., "Host Extensions for IP multicasting", STD 5,
  977.              RFC 1112, Stanford University, August 1989.
  978.  
  979.      [NSAP] Carpenter, B., Editor, "Mechanisms for OSIN SAPs, CLNP and
  980.              TP over IPv6", Work in Progress.
  981.  
  982.  
  983.  
  984. SECURITY CONSIDERATIONS
  985.  
  986.    Security issues are not discussed in this document.
  987.  
  988.  
  989. DOCUMENT EDITOR'S ADDRESSES
  990.  
  991.    Robert M. Hinden                     Stephen E. Deering
  992.    Ipsilon Networks, Inc.               Xerox Palo Alto Research Center
  993.    2191 E. Bayshore Road, Suite 100     3333 Coyote Hill Road
  994.    Palo Alto, CA 94303                  Palo Alto, CA 94304
  995.    USA                                  USA
  996.  
  997.    Phone: +1 415 846 4604               Phone: +1 415 812 4839
  998.    Fax:   +1 415 855 1414               Fax:   +1 415 812 4471
  999.    EMail: hinden@ipsilon.com            EMail: deering@parc.xerox.com
  1000.  
  1001.  
  1002.  
  1003.  
  1004.  
  1005.  
  1006.  
  1007.  
  1008.  
  1009.  
  1010. Hinden & Deering            Standards Track                    [Page 18]
  1011.  
  1012.