home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_ietf_i / draft-ietf-ipngwg-addr-arch-00.txt < prev    next >
Text File  |  1997-05-19  |  41KB  |  1,180 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. INTERNET-DRAFT                              R. Hinden, Ipsilon Networks
  8. May 16, 1997                                  S. Deering, Cisco Systems
  9.  
  10.  
  11.  
  12.  
  13.                   IP Version 6 Addressing Architecture
  14.  
  15.                   <draft-ietf-ipngwg-addr-arch-00.txt>
  16.  
  17.  
  18.  
  19.  
  20. Status of this Memo
  21.  
  22.    This document is an Internet-Draft.  Internet-Drafts are working
  23.    documents of the Internet Engineering Task Force (IETF), its areas,
  24.    and its working groups.  Note that other groups may also distribute
  25.    working documents as Internet-Drafts.
  26.  
  27.    Internet-Drafts are draft documents valid for a maximum of six months
  28.    and may be updated, replaced, or obsoleted by other documents at any
  29.    time.  It is inappropriate to use Internet- Drafts as reference
  30.    material or to cite them other than as ``work in progress.''
  31.  
  32.    To learn the current status of any Internet-Draft, please check the
  33.    ``1id-abstracts.txt'' listing contained in the Internet- Drafts
  34.    Shadow Directories on ds.internic.net (US East Coast), nic.nordu.net
  35.    (Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific
  36.    Rim).
  37.  
  38.    This Internet Draft expires November 16, 1997.
  39.  
  40.  
  41.  
  42. Abstract
  43.  
  44.    This specification defines the addressing architecture of the IP
  45.    Version 6 protocol [IPV6].  The document includes the IPv6 addressing
  46.    model, text representations of IPv6 addresses, definition of IPv6
  47.    unicast addresses, anycast addresses, and multicast addresses, and an
  48.    IPv6 nodes required addresses.
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58. draft-ietf-ipngwg-addr-arch-00.txt                              [Page 1]
  59.  
  60. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  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 Text Representation of Address Prefixes..................5
  71.       2.4 Address Type Representation..............................6
  72.       2.5 Unicast Addresses........................................8
  73.         2.5.1 Interface Identifiers................................9
  74.         2.5.2 The Unspecified Address.............................10
  75.         2.5.3 The Loopback Address................................10
  76.         2.5.4 IPv6 Addresses with Embedded IPv4 Addresses.........10
  77.         2.5.5 NSAP Addresses......................................11
  78.         2.5.6 IPX Addresses.......................................11
  79.         2.5.7 Aggregatable Global Unicast Addresses...............11
  80.         2.5.8 Local-use IPv6 Unicast Addresses....................12
  81.       2.6 Anycast Addresses.......................................13
  82.         2.6.1 Required Anycast Address............................14
  83.       2.7 Multicast Addresses.....................................14
  84.         2.7.1 Pre-Defined Multicast Addresses.....................16
  85.       2.8 A Node's Required Addresses.............................17
  86.  
  87.    REFERENCES.....................................................19
  88.  
  89.    SECURITY CONSIDERATIONS........................................20
  90.  
  91.    AUTHOR'S ADDRESSES.............................................20
  92.  
  93.    CHANGES FROM RFC-1884..........................................21
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114. draft-ietf-ipngwg-addr-arch-00.txt                              [Page 2]
  115.  
  116. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  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 authors would like to acknowledge the contributions of Paul
  126.    Francis, Scott Bradner, Jim Bound, Brian Carpenter, Matt Crawford,
  127.    Deborah Estrin, Bob Fink, Peter Ford, Bob Gilligan, Christian
  128.    Huitema, Tony Li, Greg Minshall, Thomas Narten, Erik Nordmark, Yakov
  129.    Rekhter, Bill Simpson, and Sue Thomson.
  130.  
  131.    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
  132.    "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
  133.    document are to be interpreted as described in [RFC 2119].
  134.  
  135.  
  136. 2.0 IPv6 ADDRESSING
  137.  
  138.    IPv6 addresses are 128-bit identifiers for interfaces and sets of
  139.    interfaces.  There are three types of addresses:
  140.  
  141.  
  142.     Unicast:   An identifier for a single interface.  A packet sent to a
  143.                unicast address is delivered to the interface identified
  144.                by that address.
  145.  
  146.     Anycast:   An identifier for a set of interfaces (typically
  147.                belonging to different nodes).  A packet sent to an
  148.                anycast address is delivered to one of the interfaces
  149.                identified by that address (the "nearest" one, according
  150.                to the routing protocols' measure of distance).
  151.  
  152.     Multicast: An identifier for a set of interfaces (typically
  153.                belonging to different nodes).  A packet sent to a
  154.                multicast address is delivered to all interfaces
  155.                identified by that address.
  156.  
  157.    There are no broadcast addresses in IPv6, their function being
  158.    superseded by multicast addresses.
  159.  
  160.    In this document, fields in addresses are given a specific name, for
  161.    example "subscriber".  When this name is used with the term "ID" for
  162.    identifier after the name (e.g., "subscriber ID"), it refers to the
  163.    contents of the named field.  When it is used with the term "prefix"
  164.    (e.g.  "subscriber prefix") it refers to all of the address up to and
  165.    including this field.
  166.  
  167.  
  168.  
  169.  
  170. draft-ietf-ipngwg-addr-arch-00.txt                              [Page 3]
  171.  
  172. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  173.  
  174.  
  175.    In IPv6, all zeros and all ones are legal values for any field,
  176.    unless specifically excluded.  Specifically, prefixes may contain
  177.    zero-valued fields or end in zeros.
  178.  
  179.  
  180. 2.1 Addressing Model
  181.  
  182.    IPv6 Addresses of all types are assigned to interfaces, not nodes.
  183.    Since each interface belongs to a single node, any of that node's
  184.    interfaces' unicast addresses may be used as an identifier for the
  185.    node.
  186.  
  187.    An IPv6 unicast address refers to a single interface.  A single
  188.    interface may be assigned multiple IPv6 addresses of any type
  189.    (unicast, anycast, and multicast).  There are two exceptions to this
  190.    model.  These are:
  191.  
  192.    1) A single address may be assigned to multiple physical interfaces
  193.       if the implementation treats the multiple physical interfaces as
  194.       one interface when presenting it to the internet layer.  This is
  195.       useful for load-sharing over multiple physical interfaces.
  196.  
  197.    2) Routers may have unnumbered interfaces (i.e., no IPv6 address
  198.       assigned to the interface) on point-to-point links to eliminate
  199.       the necessity to manually configure and advertise the addresses.
  200.       Addresses are not needed for point-to-point interfaces on routers
  201.       if those interfaces are not to be used as the origins or
  202.       destinations of any IPv6 datagrams.
  203.  
  204.    Currently IPv6 continues the IPv4 model that a subnet is associated
  205.    with one link.  Multiple subnets may be assigned to the same link.
  206.  
  207.  
  208. 2.2 Text Representation of Addresses
  209.  
  210.    There are three conventional forms for representing IPv6 addresses as
  211.    text strings:
  212.  
  213.    1. The preferred form is x:x:x:x:x:x:x:x, where the 'x's are the
  214.       hexadecimal values of the eight 16-bit pieces of the address.
  215.       Examples:
  216.  
  217.          FEDC:BA98:7654:3210:FEDC:BA98:7654:3210
  218.  
  219.          1080:0:0:0:8:800:200C:417A
  220.  
  221.       Note that it is not necessary to write the leading zeros in an
  222.       individual field, but there must be at least one numeral in every
  223.  
  224.  
  225.  
  226. draft-ietf-ipngwg-addr-arch-00.txt                              [Page 4]
  227.  
  228. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  229.  
  230.  
  231.       field (except for the case described in 2.).
  232.  
  233.    2. Due to the method of allocating certain styles of IPv6 addresses,
  234.       it will be common for addresses to contain long strings of zero
  235.       bits.  In order to make writing addresses containing zero bits
  236.       easier a special syntax is available to compress the zeros.  The
  237.       use of "::" indicates multiple groups of 16-bits of zeros.  The
  238.       "::" can only appear once in an address.  The "::" can also be
  239.       used to compress the leading and/or trailing zeros in an address.
  240.  
  241.       For example the following addresses:
  242.  
  243.          1080:0:0:0:8:800:200C:417A  a unicast address
  244.          FF01:0:0:0:0:0:0:43         a multicast address
  245.          0:0:0:0:0:0:0:1             the loopback address
  246.          0:0:0:0:0:0:0:0             the unspecified addresses
  247.  
  248.       may be represented as:
  249.  
  250.          1080::8:800:200C:417A       a unicast address
  251.          FF01::43                    a multicast address
  252.          ::1                         the loopback address
  253.          ::                          the unspecified addresses
  254.  
  255.    3. An alternative form that is sometimes more convenient when dealing
  256.       with a mixed environment of IPv4 and IPv6 nodes is
  257.       x:x:x:x:x:x:d.d.d.d, where the 'x's are the hexadecimal values of
  258.       the six high-order 16-bit pieces of the address, and the 'd's are
  259.       the decimal values of the four low-order 8-bit pieces of the
  260.       address (standard IPv4 representation).  Examples:
  261.  
  262.          0:0:0:0:0:0:13.1.68.3
  263.  
  264.          0:0:0:0:0:FFFF:129.144.52.38
  265.  
  266.       or in compressed form:
  267.  
  268.          ::13.1.68.3
  269.  
  270.          ::FFFF:129.144.52.38
  271.  
  272.  
  273. 2.3 Text Representation of Address Prefixes
  274.  
  275.    The text representation of IPv6 address prefixes is similar to the
  276.    way IPv4 addresses prefixes are written in CIDR notation.  An IPv6
  277.    address prefix is represented by the notation:
  278.  
  279.  
  280.  
  281.  
  282. draft-ietf-ipngwg-addr-arch-00.txt                              [Page 5]
  283.  
  284. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  285.  
  286.  
  287.       ipv6-address/prefix-length
  288.  
  289.    where
  290.  
  291.       ipv6-address    is an IPv6 address in any of the notations listed
  292.                       in section 2.2.
  293.  
  294.       prefix-length   is a decimal value specifying how many of the
  295.                       leftmost contiguous bits of the address comprise
  296.                       the prefix.
  297.  
  298.    For example, the following are legal representations of the 60-bit
  299.    prefix 12AB00000000CD3 (hexadecimal):
  300.  
  301.       12AB:0000:0000:CD30:0000:0000:0000:0000/60
  302.       12AB::CD30:0:0:0:0/60
  303.       12AB:0:0:CD30::/60
  304.  
  305.    The following are NOT legal representations of the above prefix:
  306.  
  307.       12AB:0:0:CD3/60   may drop leading zeros, but not trailing zeros,
  308.                         within any 16-bit chunk of the address
  309.  
  310.       12AB::CD30/60     address to left of "/" expands to
  311.                         12AB:0000:0000:0000:0000:000:0000:CD30
  312.  
  313.       12AB::CD3/60      address to left of "/" expands to
  314.                         12AB:0000:0000:0000:0000:000:0000:0CD3
  315.  
  316.    When writing both a node address and a prefix of that node address
  317.    (e.g., the node's subnet prefix), the two can combined as follows:
  318.  
  319.       the node address      12AB:0:0:CD30:123:4567:89AB:CDEF
  320.       and its subnet number 12AB:0:0:CD30::/60
  321.  
  322.       can be abbreviated as 12AB:0:0:CD30:123:4567:89AB:CDEF/60
  323.  
  324.  
  325. 2.4 Address Type Representation
  326.  
  327.    The specific type of an IPv6 address is indicated by the leading bits
  328.    in the address.  The variable-length field comprising these leading
  329.    bits is called the Format Prefix (FP).  The initial allocation of
  330.    these prefixes is as follows:
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338. draft-ietf-ipngwg-addr-arch-00.txt                              [Page 6]
  339.  
  340. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  341.  
  342.  
  343.       Allocation                            Prefix         Fraction of
  344.                                             (binary)       Address Space
  345.       -----------------------------------   --------       -------------
  346.       Reserved                              0000 0000      1/256
  347.       Unassigned                            0000 0001      1/256
  348.  
  349.       Reserved for NSAP Allocation          0000 001       1/128
  350.       Reserved for IPX Allocation           0000 010       1/128
  351.  
  352.       Unassigned                            0000 011       1/128
  353.       Unassigned                            0000 1         1/32
  354.       Unassigned                            0001           1/16
  355.  
  356.       Aggregatable Global Unicast Addresses 001            1/8
  357.       Unassigned                            010            1/8
  358.       Unassigned                            011            1/8
  359.       Unassigned                            100            1/8
  360.       Unassigned                            101            1/8
  361.       Unassigned                            110            1/8
  362.  
  363.       Unassigned                            1110           1/16
  364.       Unassigned                            1111 0         1/32
  365.       Unassigned                            1111 10        1/64
  366.       Unassigned                            1111 110       1/128
  367.       Unassigned                            1111 1110 0    1/512
  368.  
  369.       Link-Local Unicast Addresses          1111 1110 10   1/1024
  370.       Site-Local Unicast Addresses          1111 1110 11   1/1024
  371.  
  372.       Multicast Addresses                   1111 1111      1/256
  373.  
  374.    Notes:
  375.  
  376.       (1) The "unspecified address" (see section 2.4.2), the loopback
  377.           address (see section 2.4.3), and the IPv6 Addresses with
  378.           Embedded IPv4 Addresses (see section 2.4.4), are assigned out
  379.           of the 0000 0000 format prefix space.
  380.  
  381.       (2) The format prefixes 001 and higher, except for Multicast
  382.           Addresses (1111 1111), are all required to have to have 64-bit
  383.           interface identifiers in EUI-64 format.  See section 2.5.1 for
  384.           definitions.
  385.  
  386.  
  387.    This allocation supports the direct allocation of aggregation
  388.    addresses, local use addresses, and multicast addresses.  Space is
  389.    reserved for NSAP addresses and IPX addresses.  The remainder of the
  390.    address space is unassigned for future use.  This can be used for
  391.  
  392.  
  393.  
  394. draft-ietf-ipngwg-addr-arch-00.txt                              [Page 7]
  395.  
  396. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  397.  
  398.  
  399.    expansion of existing use (e.g., additional aggregatable addresses,
  400.    etc.) or new uses (e.g., separate locators and identifiers).  Fifteen
  401.    percent of the address space is initially allocated.  The remaining
  402.    85% is reserved for future use.
  403.  
  404.    Unicast addresses are distinguished from multicast addresses by the
  405.    value of the high-order octet of the addresses: a value of FF
  406.    (11111111) identifies an address as a multicast address; any other
  407.    value identifies an address as a unicast address.  Anycast addresses
  408.    are taken from the unicast address space, and are not syntactically
  409.    distinguishable from unicast addresses.
  410.  
  411.  
  412. 2.5 Unicast Addresses
  413.  
  414.    The IPv6 unicast address is contiguous bit-wise maskable, similar to
  415.    IPv4 addresses under Class-less Interdomain Routing [CIDR].
  416.  
  417.    There are several forms of unicast address assignment in IPv6,
  418.    including the global aggregatable global unicast address, the NSAP
  419.    address, the IPX hierarchical address, the site-local address, the
  420.    link-local address, and the IPv4-capable host address.  Additional
  421.    address types can be defined in the future.
  422.  
  423.    IPv6 nodes may have considerable or little knowledge of the internal
  424.    structure of the IPv6 address, depending on the role the node plays
  425.    (for instance, host versus router).  At a minimum, a node may
  426.    consider that unicast addresses (including its own) have no internal
  427.    structure:
  428.  
  429.    |                           128 bits                              |
  430.    +-----------------------------------------------------------------+
  431.    |                          node address                           |
  432.    +-----------------------------------------------------------------+
  433.  
  434.  
  435.    A slightly sophisticated host (but still rather simple) may
  436.    additionally be aware of subnet prefix(es) for the link(s) it is
  437.    attached to, where different addresses may have different values for
  438.    n:
  439.  
  440.    |                         n bits                 |   128-n bits   |
  441.    +------------------------------------------------+----------------+
  442.    |                   subnet prefix                | interface ID   |
  443.    +------------------------------------------------+----------------+
  444.  
  445.  
  446.    Still more sophisticated hosts may be aware of other hierarchical
  447.  
  448.  
  449.  
  450. draft-ietf-ipngwg-addr-arch-00.txt                              [Page 8]
  451.  
  452. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  453.  
  454.  
  455.    boundaries in the unicast address.  Though a very simple router may
  456.    have no knowledge of the internal structure of IPv6 unicast
  457.    addresses, routers will more generally have knowledge of one or more
  458.    of the hierarchical boundaries for the operation of routing
  459.    protocols.  The known boundaries will differ from router to router,
  460.    depending on what positions the router holds in the routing
  461.    hierarchy.
  462.  
  463.  
  464. 2.5.1 Interface Identifiers
  465.  
  466.    Interface identifiers in IPv6 unicast addresses are used to identify
  467.    interfaces on a link.  They are required to be unique on that link.
  468.    They may also be unique over a broader scope.  In many cases an
  469.    interface's identifier will be the same as that interface's link-
  470.    layer address.
  471.  
  472.    In a number of the format prefixes (see section 2.4) Interface IDs
  473.    are required to be 64 bits long and to be constructed in IEEE EUI-64
  474.    format [EUI-64].  EUI-64 based Interface identifiers may have global
  475.    scope when a global token is available or may have local scope where
  476.    a global token is not available (e.g., serial links, tunnel end-
  477.    points, etc.).  It is required that the "u" bit (universal/local bit
  478.    in IEEE EUI-64 terminology) be set correctly in the IEEE EUI-64
  479.    address.  The "u" bit is set to zero (0) to indicate global scope,
  480.    and it is set to one (1) to indicate local scope.  The first three
  481.    bytes in binary of an EUI-64 identifier are as follows:
  482.  
  483.  
  484.           0       0 0       1 1       2
  485.          |0       7 8       5 6       3|
  486.          +----+----+----+----+----+----+
  487.          |cccc|ccug|cccc|cccc|cccc|cccc|
  488.          +----+----+----+----+----+----+
  489.  
  490.  
  491.    written in Internet standard bit-order , where "u" is the
  492.    universal/local bit, "g" is the group/individual bit, and "c" are the
  493.    bits of the company_id.
  494.  
  495.    This use of the universal/local bit in the IEEE EUI-64 identifier is
  496.    to allow development of future technology that can take advantage of
  497.    interface identifiers with global scope.
  498.  
  499.    The details on forming interface identifiers is defined in the
  500.    appropriate "IPv6 over <link>" specification such as "IPv6 over
  501.    Ethernet" [ETHER], "IPv6 over FDDI" [FDDI], etc.
  502.  
  503.  
  504.  
  505.  
  506. draft-ietf-ipngwg-addr-arch-00.txt                              [Page 9]
  507.  
  508. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  509.  
  510.  
  511. 2.5.2 The Unspecified Address
  512.  
  513.    The address 0:0:0:0:0:0:0:0 is called the unspecified address.  It
  514.    must never be assigned to any node.  It indicates the absence of an
  515.    address.  One example of its use is in the Source Address field of
  516.    any IPv6 datagrams sent by an initializing host before it has learned
  517.    its own address.
  518.  
  519.    The unspecified address must not be used as the destination address
  520.    of IPv6 datagrams or in IPv6 Routing Headers.
  521.  
  522.  
  523. 2.5.3 The Loopback Address
  524.  
  525.    The unicast address 0:0:0:0:0:0:0:1 is called the loopback address.
  526.    It may be used by a node to send an IPv6 datagram to itself.  It may
  527.    never be assigned to any interface.
  528.  
  529.    The loopback address must not be used as the source address in IPv6
  530.    datagrams that are sent outside of a single node.  An IPv6 datagram
  531.    with a destination address of loopback must never be sent outside of
  532.    a single node and must never be forwarded by an IPv6 router.
  533.  
  534.  
  535. 2.5.4 IPv6 Addresses with Embedded IPv4 Addresses
  536.  
  537.    The IPv6 transition mechanisms include a technique for hosts and
  538.    routers to dynamically tunnel IPv6 packets over IPv4 routing
  539.    infrastructure.  IPv6 nodes that utilize this technique are assigned
  540.    special IPv6 unicast addresses that carry an IPv4 address in the low-
  541.    order 32-bits.  This type of address is termed an "IPv4-compatible
  542.    IPv6 address" and has the format:
  543.  
  544.  
  545.    |                80 bits               | 16 |      32 bits        |
  546.    +--------------------------------------+--------------------------+
  547.    |0000..............................0000|0000|    IPv4 address     |
  548.    +--------------------------------------+----+---------------------+
  549.  
  550.  
  551.    A second type of IPv6 address which holds an embedded IPv4 address is
  552.    also defined.  This address is used to represent the addresses of
  553.    IPv4-only nodes (those that *do not* support IPv6) as IPv6 addresses.
  554.    This type of address is termed an "IPv4-mapped IPv6 address" and has
  555.    the format:
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 10]
  563.  
  564. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  565.  
  566.  
  567.    |                80 bits               | 16 |      32 bits        |
  568.    +--------------------------------------+--------------------------+
  569.    |0000..............................0000|FFFF|    IPv4 address     |
  570.    +--------------------------------------+----+---------------------+
  571.  
  572.  
  573.  
  574. 2.5.5 NSAP Addresses
  575.  
  576.    This mapping of NSAP address into IPv6 addresses is defined in
  577.    [NSAP].  This document recommends that network implementors who have
  578.    planned or deployed an OSI NSAP addressing plan, and who wish to
  579.    deploy or transition to IPv6, should redesign a native IPv6
  580.    addressing plan to meet their needs.  However, it also defines a set
  581.    of mechanisms for the support of OSI NSAP addressing in an IPv6
  582.    network.  These mechanisms are the ones that must be used if such
  583.    support is required.  This document also defines a mapping of IPv6
  584.    addresses within the OSI address format, should this be required.
  585.  
  586.  
  587. 2.5.6 IPX Addresses
  588.  
  589.    This mapping of IPX address into IPv6 addresses is as follows:
  590.  
  591.  
  592.    |   7   |                   121 bits                              |
  593.    +-------+---------------------------------------------------------+
  594.    |0000010|                 to be defined                           |
  595.    +-------+---------------------------------------------------------+
  596.  
  597.    The draft definition, motivation, and usage are under study.
  598.  
  599.  
  600. 2.5.7 Aggregatable Global Unicast Addresses
  601.  
  602.    The global aggregatable global unicast address is defined in [AGGR].
  603.    This address format is designed to support both the current provider
  604.    based aggregation and a new type of aggregation called exchanges.
  605.    The combination will allow efficient routing aggregation for both
  606.    sites which connect directly to providers and who connect to
  607.    exchanges.  Sites will have the choice to connect to either type of
  608.    aggregation point.
  609.  
  610.    The IPv6 aggregatable global unicast address format is as follows:
  611.  
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 11]
  619.  
  620. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  621.  
  622.  
  623.    +---+-----+-----------+--------+--------------------------------+
  624.    |001| TLA |   NLA*    |  SLA*  |         Interface ID           |
  625.    +---+-----+-----------+--------+--------------------------------+
  626.  
  627.    Where
  628.  
  629.       001          Format Prefix (3 bit) for Aggregatable Global
  630.                    Unicast Addresses
  631.       TLA          Top Level Aggregator
  632.       NLA*         Next Level Aggregator(s)
  633.       SLA*         Site-Local Aggregator(s)
  634.       INTERFACE ID Interface Identifier
  635.  
  636.    The contents, field sizes, and assignment rules are defined in
  637.    [AGGR].
  638.  
  639.  
  640. 2.5.8 Local-Use IPv6 Unicast Addresses
  641.  
  642.    There are two types of local-use unicast addresses defined.  These
  643.    are Link-Local and Site-Local.  The Link-Local is for use on a single
  644.    link and the Site-Local is for use in a single site.  Link-Local
  645.    addresses have the following format:
  646.  
  647.    |   10     |
  648.    |  bits    |        54 bits          |          64 bits           |
  649.    +----------+-------------------------+----------------------------+
  650.    |1111111010|           0             |       interface ID         |
  651.    +----------+-------------------------+----------------------------+
  652.  
  653.    Link-Local addresses are designed to be used for addressing on a
  654.    single link for purposes such as auto-address configuration, neighbor
  655.    discovery, or when no routers are present.
  656.  
  657.    Routers MUST not forward any packets with link-local source or
  658.    destination addresses to other links.
  659.  
  660.    Site-Local addresses have the following format:
  661.  
  662.    |   10     |
  663.    |  bits    |   38 bits   |  16 bits  |         64 bits            |
  664.    +----------+-------------+-----------+----------------------------+
  665.    |1111111011|    0        | subnet ID |       interface ID         |
  666.    +----------+-------------+-----------+----------------------------+
  667.  
  668.  
  669.    Site-Local addresses are designed to be used for addressing inside of
  670.    a site without the need for a global prefix.
  671.  
  672.  
  673.  
  674. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 12]
  675.  
  676. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  677.  
  678.  
  679.    Routers MUST not forward any packets with site-local source or
  680.    destination addresses outside of the site.
  681.  
  682. 2.6 Anycast Addresses
  683.  
  684.    An IPv6 anycast address is an address that is assigned to more than
  685.    one interface (typically belonging to different nodes), with the
  686.    property that a packet sent to an anycast address is routed to the
  687.    "nearest" interface having that address, according to the routing
  688.    protocols' measure of distance.
  689.  
  690.    Anycast addresses are allocated from the unicast address space, using
  691.    any of the defined unicast address formats.  Thus, anycast addresses
  692.    are syntactically indistinguishable from unicast addresses.  When a
  693.    unicast address is assigned to more than one interface, thus turning
  694.    it into an anycast address, the nodes to which the address is
  695.    assigned must be explicitly configured to know that it is an anycast
  696.    address.
  697.  
  698.    For any assigned anycast address, there is a longest address prefix P
  699.    that identifies the topological region in which all interfaces
  700.    belonging to that anycast address reside.  Within the region
  701.    identified by P, each member of the anycast set must be advertised as
  702.    a separate entry in the routing system (commonly referred to as a
  703.    "host route"); outside the region identified by P, the anycast
  704.    address may be aggregated into the routing advertisement for prefix
  705.    P.
  706.  
  707.    Note that in, the worst case, the prefix P of an anycast set may be
  708.    the null prefix, i.e., the members of the set may have no topological
  709.    locality.  In that case, the anycast address must be advertised as a
  710.    separate routing entry throughout the entire internet, which presents
  711.    a severe scaling limit on how many such "global" anycast sets may be
  712.    supported.  Therefore, it is expected that support for global anycast
  713.    sets may be unavailable or very restricted.
  714.  
  715.    One expected use of anycast addresses is to identify the set of
  716.    routers belonging to an internet service aggregation.  Such addresses
  717.    could be used as intermediate addresses in an IPv6 Routing header, to
  718.    cause a packet to be delivered via a particular aggregation or
  719.    sequence of aggregations.  Some other possible uses are to identify
  720.    the set of routers attached to a particular subnet, or the set of
  721.    routers providing entry into a particular routing domain.
  722.  
  723.    There is little experience with widespread, arbitrary use of internet
  724.    anycast addresses, and some known complications and hazards when
  725.    using them in their full generality [ANYCST].  Until more experience
  726.    has been gained and solutions agreed upon for those problems, the
  727.  
  728.  
  729.  
  730. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 13]
  731.  
  732. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  733.  
  734.  
  735.    following restrictions are imposed on IPv6 anycast addresses:
  736.  
  737.       o An anycast address MUST NOT be used as the source address of an
  738.         IPv6 packet.
  739.  
  740.       o An anycast address MUST NOT be assigned to an IPv6 host, that
  741.         is, it may be assigned to an IPv6 router only.
  742.  
  743.  
  744. 2.6.1 Required Anycast Address
  745.  
  746.    The Subnet-Router anycast address is predefined.  Its format is as
  747.    follows:
  748.  
  749.  
  750.    |                         n bits                 |   128-n bits   |
  751.    +------------------------------------------------+----------------+
  752.    |                   subnet prefix                | 00000000000000 |
  753.    +------------------------------------------------+----------------+
  754.  
  755.  
  756.    The "subnet prefix" in an anycast address is the prefix which
  757.    identifies a specific link.  This anycast address is syntactically
  758.    the same as a unicast address for an interface on the link with the
  759.    interface identifier set to zero.
  760.  
  761.    Packets sent to the Subnet-Router anycast address will be delivered
  762.    to one router on the subnet.  All routers are required to support the
  763.    Subnet-Router anycast addresses for the subnets which they have
  764.    interfaces.
  765.  
  766.    The subnet-router anycast address is intended to be used for
  767.    applications where a node needs to communicate with one of a set of
  768.    routers on a remote subnet.  For example when a mobile host needs to
  769.    communicate with one of the mobile agents on its "home" subnet.
  770.  
  771.  
  772. 2.7 Multicast Addresses
  773.  
  774.    An IPv6 multicast address is an identifier for a group of nodes.  A
  775.    node may belong to any number of multicast groups.  Multicast
  776.    addresses have the following format:
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 14]
  787.  
  788. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  789.  
  790.  
  791.    |   8    |  4 |  4 |                  112 bits                   |
  792.    +------ -+----+----+---------------------------------------------+
  793.    |11111111|flgs|scop|                  group ID                   |
  794.    +--------+----+----+---------------------------------------------+
  795.  
  796.         11111111 at the start of the address identifies the address as
  797.         being a multicast address.
  798.  
  799.                                       +-+-+-+-+
  800.         flgs is a set of 4 flags:     |0|0|0|T|
  801.                                       +-+-+-+-+
  802.  
  803.              The high-order 3 flags are reserved, and must be
  804.              initialized to 0.
  805.  
  806.              T = 0 indicates a permanently-assigned ("well-known")
  807.              multicast address, assigned by the global internet
  808.              numbering authority.
  809.  
  810.              T = 1 indicates a non-permanently-assigned ("transient")
  811.              multicast address.
  812.  
  813.         scop is a 4-bit multicast scope value used to limit the scope of
  814.         the multicast group.  The values are:
  815.  
  816.              0  reserved
  817.              1  node-local scope
  818.              2  link-local scope
  819.              3  (unassigned)
  820.              4  (unassigned)
  821.              5  site-local scope
  822.              6  (unassigned)
  823.              7  (unassigned)
  824.              8  organization-local scope
  825.              9  (unassigned)
  826.              A  (unassigned)
  827.              B  (unassigned)
  828.              C  (unassigned)
  829.              D  (unassigned)
  830.              E  global scope
  831.              F  reserved
  832.  
  833.         group ID identifies the multicast group, either permanent or
  834.         transient, within the given scope.
  835.  
  836.    The "meaning" of a permanently-assigned multicast address is
  837.    independent of the scope value.  For example, if the "NTP servers
  838.    group" is assigned a permanent multicast address with a group ID of
  839.  
  840.  
  841.  
  842. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 15]
  843.  
  844. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  845.  
  846.  
  847.    43 (hex), then:
  848.  
  849.         FF01:0:0:0:0:0:0:43 means all NTP servers on the same node as
  850.         the sender.
  851.  
  852.         FF02:0:0:0:0:0:0:43 means all NTP servers on the same link as
  853.         the sender.
  854.  
  855.         FF05:0:0:0:0:0:0:43 means all NTP servers at the same site as
  856.         the sender.
  857.  
  858.         FF0E:0:0:0:0:0:0:43 means all NTP servers in the internet.
  859.  
  860.  
  861.    Non-permanently-assigned multicast addresses are meaningful only
  862.    within a given scope.  For example, a group identified by the non-
  863.    permanent, site-local multicast address FF15:0:0:0:0:0:0:43 at one
  864.    site bears no relationship to a group using the same address at a
  865.    different site, nor to a non-permanent group using the same group ID
  866.    with different scope, nor to a permanent group with the same group
  867.    ID.
  868.  
  869.    Multicast addresses must not be used as source addresses in IPv6
  870.    datagrams or appear in any routing header.
  871.  
  872.  
  873. 2.7.1 Pre-Defined Multicast Addresses
  874.  
  875.    The following well-known multicast addresses are pre-defined:
  876.  
  877.       Reserved Multicast Addresses:   FF00:0:0:0:0:0:0:0
  878.                                       FF01:0:0:0:0:0:0:0
  879.                                       FF02:0:0:0:0:0:0:0
  880.                                       FF03:0:0:0:0:0:0:0
  881.                                       FF04:0:0:0:0:0:0:0
  882.                                       FF05:0:0:0:0:0:0:0
  883.                                       FF06:0:0:0:0:0:0:0
  884.                                       FF07:0:0:0:0:0:0:0
  885.                                       FF08:0:0:0:0:0:0:0
  886.                                       FF09:0:0:0:0:0:0:0
  887.                                       FF0A:0:0:0:0:0:0:0
  888.                                       FF0B:0:0:0:0:0:0:0
  889.                                       FF0C:0:0:0:0:0:0:0
  890.                                       FF0D:0:0:0:0:0:0:0
  891.                                       FF0E:0:0:0:0:0:0:0
  892.                                       FF0F:0:0:0:0:0:0:0
  893.  
  894.    The above multicast addresses are reserved and shall never be
  895.  
  896.  
  897.  
  898. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 16]
  899.  
  900. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  901.  
  902.  
  903.    assigned to any multicast group.
  904.  
  905.       All Nodes Addresses:    FF01:0:0:0:0:0:0:1
  906.                               FF02:0:0:0:0:0:0:1
  907.  
  908.    The above multicast addresses identify the group of all IPv6 nodes,
  909.    within scope 1 (node-local) or 2 (link-local).
  910.  
  911.       All Routers Addresses:   FF01:0:0:0:0:0:0:2
  912.                                FF02:0:0:0:0:0:0:2
  913.                                FF05:0:0:0:0:0:0:2
  914.  
  915.    The above multicast addresses identify the group of all IPv6 routers,
  916.    within scope 1 (node-local), 2 (link-local), or 5 (site-local).
  917.  
  918.       Solicited-Node Address:  FF02:0:0:0:0:1:FFXX:XXXX
  919.  
  920.    The above multicast address is computed as a function of a node's
  921.    unicast and anycast addresses.  The solicited-node multicast address
  922.    is formed by taking the low-order 24 bits of the address (unicast or
  923.    anycast) and appending those bits to the prefix
  924.    FF02:0:0:0:0:1:FF00::/104 resulting in a multicast address in the
  925.    range
  926.  
  927.          FF02:0:0:0:0:1:FF00:0000
  928.  
  929.    to
  930.  
  931.          FF02:0:0:0:0:1:FFFF:FFFF
  932.  
  933.    For example, the solicited node multicast address corresponding to
  934.    the IPv6 address 4037::01:800:200E:8C6C is FF02::1:FF0E:8C6C.  IPv6
  935.    addresses that differ only in the high-order bits, e.g. due to
  936.    multiple high-order prefixes associated with different aggregations,
  937.    will map to the same solicited-node address thereby reducing the
  938.    number of multicast addresses a node must join.
  939.  
  940.    A node is required to compute and support a Solicited-Node multicast
  941.    addresses for every unicast and anycast address it is assigned.
  942.  
  943.    Additional IPv6 multicast addresses are defined and registered by the
  944.    IANA [MASGN].
  945.  
  946. 2.8 A Node's Required Addresses
  947.  
  948.    A host is required to recognize the following addresses as
  949.    identifying itself:
  950.  
  951.  
  952.  
  953.  
  954. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 17]
  955.  
  956. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  957.  
  958.  
  959.       o Its Link-Local Address for each interface
  960.       o Assigned Unicast Addresses
  961.       o Loopback Address
  962.       o All-Nodes Multicast Address
  963.       o Solicited-Node Multicast Address for each of its assigned
  964.         unicast and anycast addresses
  965.       o Multicast Addresses of all other groups which the host belongs.
  966.  
  967.    A router is required to recognize the following addresses as
  968.    identifying itself:
  969.  
  970.       o Its Link-Local Address for each interface
  971.       o Assigned Unicast Addresses
  972.       o Loopback Address
  973.       o The Subnet-Router anycast addresses for the links it has
  974.         interfaces.
  975.       o All other Anycast addresses with which the router has been
  976.         configured.
  977.       o All-Nodes Multicast Address
  978.       o All-Router Multicast Address
  979.       o Solicited-Node Multicast Address for each of its assigned
  980.         unicast and anycast addresses
  981.       o Multicast Addresses of all other groups which the router
  982.         belongs.
  983.  
  984.    The only address prefixes which should be predefined in an
  985.    implementation are the:
  986.  
  987.       o Unspecified Address
  988.       o Loopback Address
  989.       o Multicast Prefix (FF)
  990.       o Local-Use Prefixes (Link-Local and Site-Local)
  991.       o Pre-Defined Multicast Addresses
  992.       o IPv4-Compatible Prefixes
  993.  
  994.    Implementations should assume all other addresses are unicast unless
  995.    specifically configured (e.g., anycast addresses).
  996.  
  997.  
  998.  
  999.  
  1000.  
  1001.  
  1002.  
  1003.  
  1004.  
  1005.  
  1006.  
  1007.  
  1008.  
  1009.  
  1010. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 18]
  1011.  
  1012. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  1013.  
  1014.  
  1015. REFERENCES
  1016.  
  1017.  
  1018.      [AGGR]  Hinden, R., Deering, S., O'Dell, M., "An Aggregatable
  1019.              Global Unicast Address Format", internet draft, <draft-
  1020.              ietf-ipngwg-unicast-aggr-00.txt>, May 1997.
  1021.  
  1022.      [ALLOC] Rekhter, Y., Li, T., "An Architecture for IPv6 Unicast
  1023.              Address Allocation", RFC1887, December 1995.
  1024.  
  1025.      [ANYCST]C. Partridge, T. Mendez, and W. Milliken, "Host Anycasting
  1026.              Service", RFC1546, November 1993.
  1027.  
  1028.      [CIDR]  V. Fuller, T. Li, K. Varadhan, J. Yu, "Supernetting: an
  1029.              Address Assignment and Aggregation Strategy", RFC1338.
  1030.  
  1031.      [ETHER] M. Crawford, "Transmission of IPv6 Packets over Ethernet
  1032.              Networks", Internet Draft, <draft-ietf-ipngwg-trans-
  1033.              ethernet-00.txt>, March 1997.
  1034.  
  1035.      [EUI64] IEEE, "Guidelines for 64-bit Global Identifier (EUI-64)
  1036.              Registration Authority",
  1037.              http://standards.ieee.org/db/oui/tutorials/EUI64.html,
  1038.              March 1997.
  1039.  
  1040.      [FDDI] M. Crawford, "Transmission of IPv6 Packets over FDDI
  1041.              Networks", Internet Draft, <draft-ietf-ipngwg-trans-
  1042.              fddi-00.txt>, March 1997.
  1043.  
  1044.      [IPV6]  S. Deering, R. Hinden, Editors, "Internet Protocol, Version
  1045.              6 (IPv6) Specification", RFC1883, December 1995.
  1046.  
  1047.      [MASGN] R. Hinden, "IPv6 Multicast Address Assignments", Internet
  1048.              Draft, <draft-ietf-ipngwg-multicast-assgn-02.txt>, May
  1049.              1997.
  1050.  
  1051.      [MULT]  S. Deering, "Host Extensions for IP multicasting", RFC
  1052.              1112.
  1053.  
  1054.      [NSAP]  J. Bound, B. Carpenter, D. Harrington, J. Houldsworth, A.
  1055.              Lloyd, "OSI NSAPs and IPv6", RFC1888, August 1996.
  1056.  
  1057.      [RFC2119] S. Bradner, "Key words for use in RFCs to Indicate
  1058.              Requirement Levels", RFC2119, BCP14, March 1997.
  1059.  
  1060.  
  1061.  
  1062.  
  1063.  
  1064.  
  1065.  
  1066. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 19]
  1067.  
  1068. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  1069.  
  1070.  
  1071. SECURITY CONSIDERATIONS
  1072.  
  1073.    Documents of this type do not directly impact the security of the
  1074.    Internet infrastructure or its applications.
  1075.  
  1076.  
  1077. AUTHOR'S ADDRESSES
  1078.  
  1079.    Robert M. Hinden                     Stephen E. Deering
  1080.    Ipsilon Networks, Inc.               Cisco Systems, Inc.
  1081.    232 Java Drive                       170 West Tasman Drive
  1082.    Sunnyvale, CA 94089                  San Jose, CA 95134-1706
  1083.    USA                                  USA
  1084.  
  1085.    phone: +1 408 990-2004               phone: +1 408 527-8213
  1086.    fax:   +1 408 743-5677               fax:   +1 408 527-8254
  1087.    email: hinden@ipsilon.com            email: deering@cisco.com
  1088.  
  1089.  
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.  
  1097.  
  1098.  
  1099.  
  1100.  
  1101.  
  1102.  
  1103.  
  1104.  
  1105.  
  1106.  
  1107.  
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 20]
  1123.  
  1124. INTERNET-DRAFT        IPv6 Addressing Architecture              May 1997
  1125.  
  1126.  
  1127. CHANGES FROM RFC-1884
  1128.  
  1129.    This draft has the following changes from RFC-1884.
  1130.  
  1131.     - Added notation for defining IPv6 prefixes.
  1132.     - Changed solicited node multicast definition to use a longer
  1133.       prefix.
  1134.     - Added site scope all routers multicast address.
  1135.     - Defined Aggregatable Global Unicast Addresses to use "001" Format
  1136.       Prefix.
  1137.     - Changed "010" (Provider-Based Unicast) and "100" (Reserved for
  1138.       Geographic) Format Prefixes to Unassigned.
  1139.     - Added section on Interface ID definition for unicast addresses.
  1140.       Requires use of EUI-64 in range of format prefixes and rules for
  1141.       setting global/local scope bit in EUI-64.
  1142.     - Updated NSAP text to reflect working in RFC1888.
  1143.     - Removed protocol specific IPv6 multicast addresses (e.g., DHCP)
  1144.       and referenced the IANA definitions.
  1145.     - Removed section "Unicast Address Example".  Had become OBE.
  1146.     - Added new references.
  1147.     - Minor text clarifications and improvements.
  1148.  
  1149.  
  1150.  
  1151.  
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.  
  1162.  
  1163.  
  1164.  
  1165.  
  1166.  
  1167.  
  1168.  
  1169.  
  1170.  
  1171.  
  1172.  
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178. draft-ietf-ipngwg-addr-arch-00.txt                             [Page 21]
  1179.  
  1180.