NGTRANS Working Group                                         F. Templin
INTERNET-DRAFT
Internet-Draft                                                     Nokia
Expires: June 13, 2003                                        T. Gleeson
                                                      Cisco Systems K.K.
                                                               M. Talwar
                                                               D. Thaler
                                                   Microsoft Corporation

Expires 31 April 2003                                  31 October
                                                       December 13, 2002

        Intra-Site Automatic Tunnel Addressing Protocol (ISATAP)

                    draft-ietf-ngtrans-isatap-06.txt
                    draft-ietf-ngtrans-isatap-07.txt

Status of this Memo

   This document is an Internet-Draft and is in full conformance with
   all provisions of Section 10 of RFC2026.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet- Drafts.
   Internet-Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet- Drafts Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt http://
   www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on June 13, 2003.

Copyright Notice

   Copyright (C) The Internet Society (2002).  All Rights Reserved.

Abstract

   This document specifies the an Intra-Site Automatic Tunnel Addressing
   Protocol (ISATAP) that connects IPv6 hosts and routers (nodes) within IPv4
   sites.  ISATAP is a transition mechanism that enables incremental
   deployment of IPv6 by treating treats the site's IPv4
   infrastructure as a Non-Broadcast Multiple Access (NBMA) link layer
   for IPv6. ISATAP
   mechanisms use an IPv6 interface identifier format that embeds an with no requirement for IPv4 address - this multicast.  ISATAP enables
   intra-site automatic IPv6-in-IPv4 tunneling within a
   site, whether the site uses globally assigned
   or private IPv4
   addresses.  The new interface identifier format can be used with both
   local and global unicast IPv6 prefixes - this enables IPv6 routing
   both locally and globally. ISATAP mechanisms introduce no impact on
   routing table size and require no special IPv4 services (e.g., IPv4
   multicast). addresses are used.

1. Introduction

   This document presents a simple approach that enables incremental
   deployment of IPv6 [1] within IPv4-based [2] sites in a manner that
   is com-
   patible compatible with inter-domain transition mechanisms, e.g., [6TO4]. RFC 3056
   (6to4) [17].  We refer to this approach as the Intra-Site Automatic
   Tunnel Addressing Protocol, or ISATAP (pronounced: "ice-a-tap").
   ISATAP allows dual-
   stack dual-stack nodes that do not share a common link with
   an IPv6 router to automatically tunnel packets to the IPv6 next-hop
   address through IPv4, i.e., the site's IPv4 infrastructure is treated
   as an NBMA link layer.

   This document specifies details for the transmission of IPv6 packets
   over ISATAP links (i.e., automatic IPv6-in-IPv4 tunneling), including
   a new EUI-64 [EUI64] based interface identifier [ADDR][AGGR] format [3][4][5] that embeds
   an IPv4 address.  This format supports configuration of global,
   site-local and link-local addresses as specified in [AUTO] RFC 2462 [6] as
   well as simple link-layer address mapping.  Simple validity checks
   for received packets are given.  Also specified in this document is
   the operation of IPv6 Neighbor Discovery for ISATAP, as permitted for
   NBMA links by [DISC]. RFC 2461 [7].  The document finally presents deployment
   and security considerations for ISATAP.

2. Applicability Statement

   ISATAP provides the following features:

     -

   o  treats site's IPv4 infrastructure as an NBMA link layer using
      automatic IPv6-in-IPv4 tunneling (i.e., no configured tunnel
      state)

     -

   o  enables incremental deployment of IPv6 hosts within IPv4 sites
      with no aggregation scaling issues at border gateways

     -

   o  requires no special IPv4 services within the site (e.g.,
      multicast)

     -

   o  supports both stateless address autoconfiguration and manual
      configuration

     -

   o  supports networks that use non-globally unique IPv4 addresses
      (e.g., when private address allocations [PRIVATE] [8] are used), but does
      not allow the virtual ISATAP link to span a Network Address
      Translator [NAT]
     - [9]

   o  compatible with other NGTRANS mechanisms (e.g., [6TO4]) 6to4 [17])

3. Terminology

   The terminology of [IPv6] RFC 2460 [1] applies to this document.  The
   following additional terms are defined:

   link:
      same definition as [AUTO][DISC]. [6][7].

   underlying link:
      a link layer that supports IPv4 (for ISATAP), and MAY also support
      IPv6 natively.

   ISATAP link:
      one or more underlying links used for IPv4 tunneling.  The IPv4 network
      layer addresses of the underlying links are used as link-layer
      addresses on the ISATAP link.

   ISATAP interface:
      a node's attachment to an ISATAP link.

   ISATAP prefix:
      a prefix used to configure an address on the ISATAP interface.
      This prefix is administratively assigned to the ISATAP link and
      MUST NOT be duplicated on native IPv6 links.

   ISATAP address:
      an IPv6 address with an ISATAP prefix and an ISATAP format
      interface identifier constructed as specified in section 4.

   ISATAP router:
      an IPv6 node that has an ISATAP interface over which it forwards
      packets not explicitly addressed to itself.

   ISATAP host:
      any node that has an ISATAP interface and is not an ISATAP router.

4. Transmission of IPv6 Packets on ISATAP Links

   ISATAP links transmit IPv6 packets via automatic tunneling tunnels using the
   site's IPv4 infrastructure as an NBMA link layer. Automatic tunneling
   for ISATAP uses the same encapsulation, hop limit, IPv4 header con-
   struction, and decapsualtion specifications in [MECH, 3], i.e., IPv6
   packets are automatically encapsulated in IPv4 using 'ip-protocol-41'
   as the payload type number. The specifications in [MECH, 3.2, 3.4] do
   not apply for ISATAP; instead:

    - The default link MTU SHOULD be set to the minimum IPv6 MTU of
      1280 bytes [IPV6], unless specific configuration information
      is available. The Don't Fragment bit SHOULD NOT be set in the
      encapsulating IPv4 header.

    -  IPv4 ICMP errors
   and ARP failures may be processed as link error notifications, as
   allowed by [DISC]

   Specific RFC 2461 [7].  The common tunneling mechanisms specified
   in Section 3 of RFC 2893 [10] are used, with the following noted
   specific considerations for ISATAP links are given below:

4.1. and automatic tunnels:

4.1 ISATAP Interface Identifier Construction

   IPv6 unicast addresses [ADDR][AGGR] [3][4] include a 64-bit interface iden-
   tifier identifier
   field in "modified EUI-64 format", based on the IEEE EUI-64
   [EUI64] [5]
   specification.  (Modified EUI-64 format inverts the sense of the 'u/l' 'u/
   l' bit from its specification in [EUI64], [5], i.e., 'u/l' = 0 indicates
   local-use.) ISATAP interface identifiers are constructed by
   prepending the 32-bit string '00-00-5E-FE' with an IPv4 address (see
   the following section for examples).  Appendix B includes text
   explaining the rationale for this construction rule.

4.2.

4.2 Stateless Autoconfiguration and Link-Local Addresses

   ISATAP addresses are unicast addresses [ADDR,2.5] that use ISATAP format
   interface identifiers as follows:

    |           64 bits            |     32 bits   |    32 bits     |
    +------------------------------+---------------+----------------+
    | link-local, site-local or    |   0000:5EFE   |  IPv4 Address  |
    |    global unicast prefix     |               | of ISATAP link |
    +------------------------------+---------------+----------------+

                                Figure 1

   Link-local, site-local, and global ISATAP addresses can be created
   exactly as specified in [ADDR], [3], (e.g., by auto-configuration [AUTO] [6] or
   manual configuration).  For example, the IPv6 address:

      3FFE:1A05:510:1111:0:5EFE:8CAD:8108

   has a prefix of '3FFE:1A05:510:1111::/64' and an ISATAP format inter-
   face
   interface identifier with embedded IPv4 address: '140.173.129.8'.
   The address is alternately written as:

      3FFE:1A05:510:1111:0:5EFE:140.173.129.8

   The link-local and site-local variants (respectively) are:

      FE80::0:5EFE:140.173.129.8
      FEC0::1111:0:5EFE:140.173.129.8

4.3.

4.3 ISATAP Link/Interface Configuration

   A node configures an

   An ISATAP link over consists of one or more underlying links that support
   IPv4
   links, i.e., the for tunneling within a site.

   ISATAP link MAY be interfaces are configured over one or more link-
   layer (IPv4) addresses. Each link-layer ISATAP links; each IPv4 address 'V4ADDR_LINK' is used
   assigned to configure a link-local address 'FE80::0:5EFE:V4ADDR_LINK' on an
   ISATAP interface. ISATAP interfaces MAY be assigned one per link-
   layer address, or underlying link is seen as a single interface link-layer address for multiple
   ISATAP.

   At least one link-layer
   addresses.

   In the former case, the address of per each ISATAP router interface
   SHOULD be added to the Potential Routers List (see section Section 5.2.1). In the lat-
   ter case, the interface will accept ISATAP packets addressed to any
   of the IPv4 link-layer addresses, but will choose one as its primary
   address, used for sourcing packets. Only this address need be repre-
   sented in the Potential Routers List.

4.4.

4.4 Sending Rules and Address Mapping

   The IPv6 next-hop address for packets sent on an ISATAP link MUST be
   an ISATAP address.  Packets that do not satisfy this constraint MUST
   be discarded and an ICMP ICMPv6 destination unreachable indication with
   code 3 (Address Unreachable) [ICMPv6] [11] MUST be returned.  No other sending
   rules are necessary.

   The procedure for mapping unicast addresses into link-layer addresses
   is to simply treat the last four octets of the ISATAP address as an
   IPv4 address (in network byte order).  No multicast address mappings
   are specified.

4.5.

4.5 Validity Checks for Received Packets

   Packets received on ISATAP interfaces MUST satisfy at least one
   (i.e., one or both) of the following validity checks:

     -

   o  the network-layer (IPv6) source address has a prefix configured on
      the ISATAP interface and an ISATAP-format interface identifier
      that embeds the link-layer (IPv4) source address, i.e., source is
      on-link

   o  the link-layer (IPv4) source address is in the Potential Routers
      List (see Section 5.2.1), i.e., previous hop is an on-link ISATAP
      router

   Packets that do not satisfy at least one of the above checks are
   silently discarded.

4.6 Tunnel MTU and Fragmentation

   ISATAP interfaces implement automatic tunnels that may be configured
   over multiple underlying links with diverse MTUs.  The ISATAP
   interface MTU (ISATAP_MTU) SHOULD be no larger than the largest MTU
   of all underlying links (LINK_MTU), minus 20 bytes for IPv4
   encapsulation.

   The minimum value (ISATAP_MINMTU) MUST be at least 1280 bytes [1],
   but SHOULD be set to 1380 bytes (see note 1).  The maximum value used
   for ISATAP_MTU SHOULD be 4140 bytes (see note 2).  The maximum
   receive unit (ISATAP_MRU) MUST be at least 4400 bytes.

   IPv6 path MTU discovery [12] is required for IPv6 interfaces that
   send packets larger than 1280 bytes.  The following considerations
   for ISATAP interfaces are noted:

   o  ISATAP encapsulators and decapsulators are IPv6 neighbors since
      they share a common link layer, i.e., the ISATAP link

   o  ISATAP neighbors may be separated by multiple IPv4 hops requiring
      IPv4 path MTU discovery [13] to establish per-neighbor MTUs
      (NBR_MTU)

   o  NBR_MTU information is stored as link-layer (IPv4) information
      (e.g., in the IPv4 path MTU discovery cache), thus it may not be
      visible to upper layers in all implementations

   o  NBR_MTU information may not always be available for each neighbor
      due to finite storage limitations

   o  IPv4 path MTU discovery delivers ICMPv4 "fragmentation needed"
      messages, but these cannot be translated into ICMPv6 "packet too
      big" messages.  Thus,  encapsulated packets MUST be sent with the
      DF flag in the IPv4 header NOT set unless additional state is
      maintained in the encapsulator (see note 3)

   Traditional packetization and network (IPv6) layer implementations
   view ISATAP interfaces as ordinary IPv6 interfaces with a single MTU
   (ISATAP_MTU).  Such implementations forward only those IPv6 packets
   of size ISATAP_MTU or smaller to the ISATAP interface.  All other
   packets are dropped, and an IPv6 ICMP "packet too big" message with
   MTU = ISATAP_MTU is returned.

   Modified packetization and network (IPv6) layer implementations MAY
   look into the ISATAP link layer for per-neighbor MTU information.
   When available, this information supersedes ISATAP_MTU in determining
   whether to forward the packet or return an ICMPv6 "packet too big"
   (see above).

   For IPv6 packets forwarded to the ISATAP interface, all
   implementations employ the following algorithm at the link layer to
   determine when to perform IPv6-in-IPv4 encapsulation and when to
   return an IPv6 ICMP "packet too big" message:

   Determine per-neighbor LINK_MTU; NBR_MTU, e.g., by consulting IPv4
   forwarding table and/or IPv4 path MTU discovery cache, then:

   if NBR_MTU information exists
   	if packet is larger than NBR_MTU - 20 and packet
   	  is larger than ISATAP_MINMTU
   		Send IPv6 ICMP "packet too big" with
   		  MTU = MAX(NBR_MTU - 20, ISATAP_MINMTU)
   		Drop packet
   	else
   		Encapsulate but do not set the Don't Fragment
   		flag in the IPv4 header
   	endif
   else
   	if packet is larger than LINK_MTU - 20 and packet is
             larger than ISATAP_MINMTU
   		Send IPv6 ICMP "packet too big" with
   		  MTU = ISATAP_MINMTU
   		Drop packet
   	else
   		if IPv6 neighbor is an IPv4 neighbor on the
   		  underlying link, or packet is less than
                     or == ISATAP_MINMTU</t>
   			Encapsulate but do not set the Don't
   			  Fragment flag in the IPv4 hdr
   		else
   			send ICMPv6 "packet too big" with
   			  MTU = ISATAP_MINMTU
   			Drop packet
   		endif
   	endif
   endif

                                Figure 2

   NOTES:

   1.  Nearly all IPv4 routers can forward 1500 byte packets without
       fragmentation.  However, sub-IPv4 layer encapsulation (e.g., for
       VPNs) may occur on some paths.  Commonly-deployed VPNs use an MTU
       of 1400 bytes, thus 1380 bytes SHOULD be used as ISATAP_MINMTU.

   2.  TCP adapts to an overestimated MSS by reducing the segment size
       based on IPv6 "packet too big" messages ([12], section 5.4), thus
       setting ISATAP_MTU to the largest MTU of all underlying links
       would optimize performance for asymmetric paths.

       SCTP ([14], section 7.3) and other packetization layers ([12],
       section 5.5), perform upper-layer fragmentation based on IPv6
       "packet too big" messages, which may result in unacceptable loss
       when the initial MTU estimate is too large.

       4140 is the RECOMMENDED maximum value for ISATAP_MTU, since:

       *  4140 bytes makes efficient use of common larger-than- ethernet
          MTUs in the link-layer (IPv4) source address is internet (e.g., FDDI)

       *  Locally-generated ICMPv6 "packet too big" messages are likely
          to advertise an "active" member MTU of 1380, resulting in at most three
          fragments and limiting loss probability

   3.  Implementations MAY cache recently-sent IPv6 packets to provide
       state for translating ICMPv4 "fragmentation needed" messages into
       ICMPv6 "packet too big" messages.  Such implementations MAY set
       the Potential Routers List (see section 5.2), i.e., previous
       hop is an on-link ISATAP router actively being used by DF flag in the node

   Packets IPv4 header in the above algorithm for packets
       that do not satisfy will be retained in the cache at least one of as long as the above checks are
   silently discarded.
       round-trip time (RTT) between the encapsulator and decapsulator.

5. Neighbor Discovery for ISATAP Links

   Section 3.2 of [DISC] ("Supported Link Types") RFC 2461 [7] provides the following guidelines for
   non-broadcast multiple access (NBMA) link support:

      "Redirect, Neighbor Unreachability Detection and next-hop determi-
     nation
      determination should be implemented as described in this document.
      Address resolution and the mechanism for delivering Router
      Solicitations and Advertisements on NBMA links is not specified in
      this docu-
     ment." document."

   ISATAP links SHOULD implement Redirect, Neighbor Unreachability
   Detection, and next-hop determination exactly as specified in [DISC]. [7].
   Address resolution and the mechanisms for delivering Router Solicita-
   tions
   Solicitations and Advertisements for ISATAP links are not specified
   by
   [DISC]; [7]; instead, they are specified in this document.  (Note that
   these mechanisms MAY potentially apply to other types of NBMA links
   in the future.)

5.1.

5.1 Address Resolution

   Protocol addresses (IPv6) in ISATAP are resolved to link-layer
   addresses (IPv4) by a static computation, i.e., the last four octets
   are treated as an IPv4 address.

   ISATAP nodes hosts SHOULD enhance the static address resolution computation
   with a unicast Neighbor Solicitation(NS)/Neighbor Advertisement(NA)
   exchange to ensure IPv6 level reachability of the neighbor and also
   SHOULD perform Neighbor Unreachability Detection (NUD) as specified
   in [DISC, 7.3], (RFC 2461 [7], section 7.3).  ISATAP routers MAY implement the
   enhanced address resolution and NUD, but this might not scale in all
   environments.  All ISATAP nodes MUST send solicited neighbor adver-
   tisements as specified in [DISC, 7.2.4].

   The link-layer address option used in [DISC] is not needed. Link-
   layer
   advertisements ([7], section 7.2.4).

   Link-layer address options ([7], section 4.6.1) for this
   specification MUST have Length = 1 and a six-octet interface
   identifier consisting of two zero octets followed by a four-octet
   IPv4 address.  Options of this form SHOULD NOT be sent in any Neighbor Discovery
   packets, NS/NA
   messages and MUST be silently ignored in any received Neighbor Dis-
   covery packets.

5.2. NS/NA messages.

5.2 Router and Prefix Discovery

   Since the site's IPv4 infrastructure is treated as an NBMA link
   layer, unsolicited Router Advertisements do not provide sufficient
   means for router discovery on ISATAP links.  Thus, alternate mecha-
   nisms
   mechanisms are required and specified below:

5.2.1.

5.2.1 Conceptual Data Structures

   ISATAP nodes use the conceptual data structures Prefix List and
   Default Router List exactly as specified in [DISC,5.1]. ([7], section 5.1).  ISATAP links
   add a new conceptual data structure "Potential Router List" and the
   following new configuration variable:

   ResolveInterval
      Time between name service resolutions.  Default and suggested
      minimum: 1hr

   A Potential Router List (PRL) is associated with every ISATAP link.
   The PRL provides context for router discovery and a trust basis for router validation (see security
   considerations).  Each entry in the PRL has an IPv4 address and an
   associated timer used for polling. timer.  The IPv4 address represents a router's ISATAP
   interface (likely to be an "advertising interface"), and is used to
   construct the ISATAP link-
   local link-local address for that interface.  The
   following sections specify the process for initializing the PRL:

   When a node enables an ISATAP link, it initializes first discovers a DNS (RFC
   1035 [20]) fully-qualified domain name for the Potential
   Router List (PRL) site's ISATAP service.
   The domain name MAY be established by a DHCPv4 [15] option for that link. Unless other information ISATAP
   (option code TBD, see IANA Considerations), by manual configuration,
   or by an unspecified alternative method.  The DHCPv4 option for
   ISATAP is avail-
   able (e.g., implemented exactly as in RFC 3361 [16] with the following
   noted exceptions:

   o  the DHCP option code for ISATAP (TBD) is used

   o  the encoding byte MUST be 0, i.e.; only FQDNs are accepted

   o  if multiple domain names occur, only the first is used

   Next, the node initializes the link's PRL with IPv4 addresses
   associated with the domain name discovered above.  IPv4 addresses are
   discovered through manual address configuration, a vendor-specific DHCP
   option, etc.) config or by querying the following method (similar name service to
   resolving the [SIP, 1.4.2] pro-
   cedure) SHOULD be used:

     1. The site administrator maintains domain name into address records (e.g., DNS 'A'
   resource records) containing IPv4 addresses.  Unspecified alternative
   methods may also be used.

   Notes:

   1.  Site administrators maintain a domain name for the ISATAP
        router interfaces, service
       and makes these available a list of IPv4 addresses representing ISATAP router
       interfaces (normally as address records in the site's name service. Nodes attempt to find one or more addresses
        for the PRL by querying
       service).  Administrators may also advertise the domain name service. in a
       DHCPv4 option for ISATAP.

   2.  There are no mandatory rules on for the selection of domain name
        to be used within a site for this purpose, domain name,
       but administrators are encouraged to use the "isatap.domainname" convention
       "isatap.domainname" (e.g., isatap.example.com), as specified in [RFC2219]. Nodes
        can construct this domain name by prepending the label "isatap"
        to their parent domain name, which is established by other
        means. Nodes then query this domain name for address records
        (e.g., DNS 'A' resource records), and initialize the PRL with
        the IPv4 addresses in the replies. isatap.example.com).

   3.  After initialization, nodes periodically repeat the above
        procedure ResolveInterval to update re-initialize the PRL with any IPv4
        addresses added/deleted since the previous iteration.
       (after ResolveInterval).  When DNS is used, nodes MUST follow the procedures in [RFC1035]
        regarding
       cache invalidation procedures in [20] when the DNS time-to-live
       expires.

5.2.2.  Validation of

5.2.2 Validity Checks for Router Advertisement Messages Advertisements

   A node MUST silently discard any received Router Advertisement mes-
   sages messages it
   receives that do not satisfy both the validity checks in [DISC,6.1.2] as well
   as ([7],
   section 6.1.2) and the following additional validity check for
   ISATAP:

        -

   o  the network-layer (IPv6) source address is derived from an ISATAP address and
      embeds an IPv4 address in from the PRL

5.2.3.

5.2.3 Router Specification

   Advertising ISATAP interfaces of routers behave the same as advertis-
   ing
   advertising interfaces described in [DISC,6.2]. ([7], section 6.2).  However,
   periodic unsolicited multicast Router Advertisements are not
   required, thus the "interval timer" associated with advertising
   interfaces is not used for that purpose.

   When an ISATAP router receives a valid Router Solicitation on an
   advertising ISATAP interface, it replies with a unicast Router Adver-
   tisement
   Advertisement to the address of the node which sent the Router Solicita-
   tion.
   Solicitation.  The source address of the Router Advertisement is a
   link-local unicast address associated with the interface.  This MAY
   be the same as the destination address of the Router Solicitation.
   ISATAP routers MAY engage in the polling solicitation process described under
   Host Specification
   below (e.g. below, e.g., if Router Advertisement consistency
   verification
   [DISC,6.2.7] is desired), but this ([7], section 6.2.7) is not required.

5.2.4. desired.

5.2.4 Host Specification

   All entries in the PRL are assumed to represent active ISATAP routers
   within the site, i.e., the PRL provides trust basis only; not
   reachability detection.  Hosts periodically poll solicit information from
   one or more entries in the PRL ("PRL(i)") by sending unicast Router
   Solicitation messages using the IPv4 address ("V4ADDR_PRL(i)") and
   associated timer in the entry.  Hosts add the following variable to
   support the polling solicitation process:

   MinRouterSolicitInterval
      Minimum time between sending Router Solicitations to any router.
      Default and suggested minimum: 15min

   When a PRL(i) is selected for polling, selected, the host sets its associated timer to
   MinRouterSolicitInterval and initiates polling solicitation following a short
   delay as for initial solicitations [ND,6.3.7]), and in ([7], section 6.3.7).  The solicitation process repeats
   when the associated timer expires.

   Polling

   Solicitation consists of sending Router Solicitations to the ISATAP link-
   local
   link-local address constructed from the entry's IPv4 address, i.e.,
   they are sent to 'FE80::0:5EFE:V4ADDR_PRL(i)' instead of 'All-Routers mul-
   ticast'.
   multicast'.  They are otherwise sent exactly as in the same manner described in
   [DISC,6.3.7].

   When the host receives a valid Router Advertisement (i.e., one that
   satisfies the validity checks in sections 4.5 and 5.2.2) it is pro-
   cesses in the same manner described ([7], section
   6.3.7).

   Hosts process received Router Advertisements exactly as in [DISC,6.3.4]. The host addi-
   tionally resets ([7],
   section 6.3.4).  Hosts additionally reset the timer associated with
   the V4ADDR_PRL(i) embedded in the network-layer source address in the
   each received Router Advertisement.  The timer is reset to either 0.5
   * (the minimum value in the router life-
   time lifetime or valid lifetime of any
   on-link prefixes advertised) or Min-
   RouterSolicitInterval; MinRouterSolicitInterval; whichever
   is longer.

   ([7], section 6.3.4) includes the following specification:

      "To limit the storage needed for the Default Router List, a host
      MAY choose not to store all of the router addresses discovered via
      advertisements.  However, a host MUST retain at least two
      addresses and SHOULD retain more."

   The router solicitation process for ISATAP nodes is analogous to
   choosing which router addresses to store as in the above text.
   ISATAP nodes may wish to consider the control traffic overhead of
   this process when choosing how many routers to solict.  The manner of
   choosing particular routers in the PRL for solicitation is outside
   the scope of this specification.

6. ISATAP Deployment Considerations

6.1.

6.1 Host And Router Deployment Considerations

   For hosts, if an underlying link supports both IPv4 (over which ISA-
   TAP
   ISATAP is implemented) and also supports IPv6 natively, then ISATAP
   MAY be enabled if the native IPv6 layer does not receive Router Adver-
   tisements
   Advertisements (i.e., does not have connection with an IPv6 router).
   After a non-link-local address has been configured and a default
   router acquired on the native link, the host SHOULD discontinue the 'Router
   Polling Process'
   router solicitation process specified described in section 5.2.4 the host specification and
   allow exist-
   ing existing ISATAP address configurations to expire as specified
   in
   [DISC,5.3][AUTO,5.5.4]. ([7], section 5.3) and ([6], section 5.5.4).  Any ISATAP addresses
   added to the DNS for this host should also be removed.  In this way,
   ISATAP use will gradu-
   ally gradually diminish as IPv6 routers are widely
   deployed throughout the site.

   Routers MAY configure an interface to simultaneously support both
   native IPv6, and also ISATAP (over IPv4).  Routing will operate as
   usual between these two domains.  Note that the prefixes used on the
   ISATAP and native IPv6 interfaces will be distinct.  The IPv4
   address(es) configured on a router's ISATAP interface(s) SHOULD be
   added (either automatically or manually) to the site's address
   records for ISATAP router interfaces (see section 5.2.1).

6.2. interfaces.

6.2 Site Administration Considerations

   The following considerations are noted for sites that deploy ISATAP:

     -

   o  ISATAP links are administratively defined by a set of router
      interfaces, and set of nodes which have those interface addresses
      in their potential router lists.  Thus, ISATAP links are defined
      by administrative (not physical) boundaries.

     -

   o  ISATAP hosts and routers can be deployed in an ad-hoc and
      independent fashion.  In particular, ISATAP hosts can be deployed
      with little/no advanced knowledge of existing ISATAP routers, and
      ISATAP routers can deployed with no reconfiguration requirements
      for hosts.

     -

   o  ISATAP nodes periodically send Router Solicitations (RS) to all entries
       in the Potential Router List. Worst-case control traffic is on the
       order of (M x N), where 'M' is the number one or
      more members of routers in the Potential potential router list.  When Router List and 'N' is
      Advertisements (RAs) are received, the total number of nodes on Router Lifetime value
      provides a timer for the ISATAP link.
       The MinRouterSolicitInterval ([5.2.4]) bounds control traffic next RS to be sent.  Worst-case is for
       large numbers
      small values of nodes even in worst-case scenarios.

     - Router Lifetime which is bounded by
      MinRouterSolicitInterval.

   o  ISATAP nodes periodically refresh the entries on the PRL,
      typically by polling querying the DNS.  Responsible site administration
      can reduce the control traffic.  At a minimum, administrators
      SHOULD ensure that the site's address records for ISATAP router
      interfaces (see
       section 5.2.1) are well maintained.

7. IANA considerations Considerations

   A DHCPv4 option assignment for ISATAP is requested, as outlined in
   the procedures found in RFC 2939 [21], section 3.

   Appendix B offers one possible proposes a specification for managing the IEEE OUI
   assigned to IANA for EUI-64 interface identifier construction.  This
   specification is made freely available to IANA for any purpose they
   may find useful.

8. Security considerations

   Site administrators are advised that, in addition to possible attacks
   against IPv6, security attacks against IPv4 MUST also be considered.
   Many security considerations in [6OVER4,9] RFC 2529 [18], section 9 apply also
   to ISATAP.

   Responsible IPv4 site security management is strongly encouraged.  In
   particular, border gateways SHOULD implement filtering to detect
   spoofed IPv4 source addresses at a minimum; ip-protocol-41 filtering
   SHOULD also be implemented.

   If IPv4 source address filtering is not correctly implemented, the
   ISATAP validity checks in section 4.7 will not be effective in preventing IPv6
   source address spoofing.

   If filtering for ip-protocol-41 is not correctly implemented, IPv6
   source address spoofing is clearly possible, but this can be elimi-
   nated
   eliminated if both IPv4 source address filtering, and the ISATAP
   validity checks
   in section 4.7 are implemented.

   [DISC,6.1.2]

   (RFC 2461 [7]), section 6.1.2 implies that nodes trust Router
   Advertisements they receive from on-link routers, as indicated by a
   value of 255 in the IPv6 'hop-limit' field.  Since this field is not
   decremented when ip-
   protocol-41 ip-protocol-41 packets traverse multiple IPv4 hops [MECH,3.3],
   ([10], section 3), ISATAP links require a different trust model.  In
   particular, ONLY those Router Advertisements received from a member
   of the Potential Routers List are trusted; all others are silently discarded (see section
   5.2.2).
   discarded.  This trust model is predicated on IPv4 source address filter-
   ing,
   filtering, as described above.

   The ISATAP address format does not support privacy extensions for
   stateless address autoconfiguration [PRIVACY]. [19].  However, since the ISATAP
   interface identifier is derived from the node's IPv4 address, ISATAP
   addresses do not have the same level of privacy concerns as IPv6
   addresses that use an interface identifier derived from the MAC
   address.  (This issue is the same for NAT'd addresses.)

9. Acknowledgements

   Some of the ideas presented in this draft were derived from work at
   SRI with internal funds and contractual support.  Government sponsors
   who supported the work include Monica Farah-Stapleton and Russell
   Langan from U.S.  Army CECOM ASEO, and Dr.  Allen Moshfegh from U.S.
   Office of Naval Research.  Within SRI, Dr.  Mike Frankel, J.  Peter Mar-
   cotullio,
   Marcotullio, Lou Rodriguez, and Dr.  Ambatipudi Sastry supported the
   work and helped foster early interest.

   The following peer reviewers are acknowledged for taking the time to
   review a pre-release of this document and provide input: Jim Bound,
   Rich Draves, Cyndi Jung, Ambatipudi Sastry, Aaron Schrader, Ole
   Troan, Vlad Yasevich.

   The authors acknowledge members of the NGTRANS community who have
   made significant contributions to this effort, including Rich Draves,
   Alain Durand, Nathan Lutchansky, Karen Nielsen, Art Shelest, Margaret
   Wasserman, and Brian Zill.

   The authors also wish to acknowledge the work of Quang Nguyen [VET] [22]
   under the guidance of Dr.  Lixia Zhang that proposed very similar
   ideas to those that appear in this document.  This work was first
   brought to the authors' attention on September 20, 2002.

   Finally, the authors recognize that ideas similar to those in this
   document may have already been presented by others and wish to
   acknowledge any other such contributions.

Normative References

   [ADDR]

   [1]   Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6)
         Specification", RFC 2460, December 1998.

   [2]   Postel, J., "Internet Protocol", STD 5, RFC 791, September
         1981.

   [3]   Hinden, R., R. and S. Deering, "IP Version 6 Addressing
         Architecture", RFC 2373, July 1998. (Pending approval
              of "addr-arch-v3").

   [AGGR]     Hinden., R, O'Dell, M.,

   [4]   Hinden, R. and S. Deering, S., "An IPv6 Aggregatable Global Unicast
         Address Format", RFC 2374, July 1998.

   [AUTO]

   [5]   IEEE, "http://standards.ieee.org/regauth/oui/tutorials/
         EUI64.html", March 1997.

   [6]   Thomson, S., S. and T. Narten, "IPv6 Stateless Address
         Autoconfiguration", RFC 2462, December 1998.

   [DISC]

   [7]   Narten, T., Nordmark, E., E. and W. Simpson, "Neighbor Discovery
         for IP Version 6 (IPv6)", RFC 2461, December 1998.

   [EUI64]    IEEE, "Guidelines

   [8]   Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G. and E.
         Lear, "Address Allocation for 64-bit Global Identifier (EUI-64)
              Registration Authority",
              http://standards.ieee.org/regauth/oui/tutori-
   als/EUI64.html,
              March 1997.

   [ICMPv6] Private Internets", BCP 5, RFC
         1918, February 1996.

   [9]   Egevang, K. and P. Francis, "The IP Network Address Translator
         (NAT)", RFC 1631, May 1994.

   [10]  Gilligan, R. and E. Nordmark, "Transition Mechanisms for IPv6
         Hosts and Routers", RFC 2893, August 2000.

   [11]  Conta, A. and S. Deering, "Internet Control Message Protocol
         (ICMPv6) for the Internet Protocol Version 6 (IPv6)
         Specification", RFC 2463, December 1998.

   [IPV4]     Postel,

   [12]  McCann, J., "Internet Protocol", RFC 791.

   [IPV6] Deering, S., and R. Hinden, "Internet Protocol, Version 6
              (IPv6) Specification", RFC 2460.

   [MECH]     Gilligan, R., S. and E. Nordmark, "Transition Mechanisms J. Mogul, "Path MTU Discovery for
              IPv6 Hosts and Routers",
         IP version 6", RFC 2893, 1981, August 2000.

   [NAT]      Egevang, K., 1996.

   [13]  Mogul, J. and P. Francis, "The IP Network Address
              Translator (NAT)", S. Deering, "Path MTU discovery", RFC 1631, May 1994.

   [PRIVATE]  Rekhter, Y., Moskowitz, B., Karrenberg, D., de Groot, G., 1191,
         November 1990.

   [14]  Stewart, R., Xie, Q., Morneault, K., Sharp, C., Schwarzbauer,
         H., Taylor, T., Rytina, I., Kalla, M., Zhang, L. and E. Lear, "Address Allocation for Private Internets", V. Paxson,
         "Stream Control Transmission Protocol", RFC 1918, February 1996.

   [SIP]      Handley, M., 2960, October 2000.

   [15]  Droms, R., "Dynamic Host Configuration Protocol", RFC 2131,
         March 1997.

   [16]  Schulzrinne, H., Schooler, E., and
              J. Rosenberg, "SIP: "Dynamic Host Configuration Protocol
         (DHCP-for-IPv4) Option for Session Initiation Protocol", Protocol (SIP)
         Servers", RFC 2543, March 1999. 3361, August 2002.

Informative References

   [6OVER4]

   [17]  Carpenter, B. and C. Jung, "Transmission of IPv6 over IPv4
              Domains without Explicit Tunnels", RFC 2529.

   [6TO4]     Carpenter, B., and K. Moore, "Connection of IPv6 Domains via
         IPv4 Clouds", RFC 3056, February 2001.

   [IANA]     Reynolds, J.,

   [18]  Carpenter, B. and J. Postel, "Assigned Numbers", STD 2,
              USC/Information Sciences Institute, October 1994.

   [PRIVACY] C. Jung, "Transmission of IPv6 over IPv4
         Domains without Explicit Tunnels", RFC 2529, March 1999.

   [19]  Narten, T., T. and R. Draves, "Privacy Extensions for Stateless
         Address Autoconfiguration in IPv6", RFC 3041, January 2001.

   [RFC1035]

   [20]  Mockapetris, P., "Domain Names names - Implementation implementation and
              Specification",
         specification", STD 13, RFC 1035, November 1987.

   [RFC2219]  Hamilton, M.,

   [21]  Droms, R., "Procedures and R. Wright, "Use of DNS Aliases IANA Guidelines for
              Network Services", Definition of
         New DHCP Options and Message Types", BCP 43, RFC 2219 (BCP), October 1997.

   [VET] 2939,
         September 2000.

   [22]  Nguyen, Quang, "Virtual Ethernet: A New Approach to
              IPv6 Transition", http://irl.cs.ucla.edu/vet/report.ps,
              MS Project Report, Spring Q., "http://irl.cs.ucla.edu/vet/report.ps", spring
         1998.

Authors

Authors' Addresses

   Fred L. Templin
   Nokia
   313 Fairchild Drive
   Mountain View, CA, USA CA  94110
   US

   Phone: (650)-625-2331
      Email: +1 650 625 2331
   EMail: ftemplin@iprg.nokia.com

   Tim Gleeson
   Cisco Systems K.K.
   Shinjuku Mitsu Building
   2-1-1 Nishishinjuku, Shinjuku-ku
   Tokyo 163-0409, JAPAN
      email:  163-0409
   Japan

   EMail: tgleeson@cisco.com
   Mohit Talwar
   Microsoft Corporation
   One Microsoft Way
   Redmond, WA WA>  98052-6399
   US

   Phone: +1 425 705 3131
   EMail: mohitt@microsoft.com

   Dave Thaler
   Microsoft Corporation
   One Microsoft Way
   Redmond, WA  98052-6399
   US

   Phone: +1 425 703 8835
   EMail: dthaler@microsoft.com

APPENDIX A:

Appendix A. Major Changes

   changes from version 06 to version 07:

   o  clarified address resolution, Neighbor Unreachability Detection

   o  specified MTU/MRU requirements

   changes from version 05 to version 06:

     -

   o  Addressed operational issues identified in 05 based on discussion
      between co-authors

     -

   o  Clarified ambiguous text per comments from Hannu Flinck; Jason
      Goldschmidt

   changes from version 04 to version 05:

     -

   o  Moved historical text in section 4.1 to Appendix B in response to
      comments from Pekka Savola

     -

   o  Identified operational issues for anticipated deployment scenarios

     -

   o  Included SRI IPR statement and contact information

     -

   o  Included reference to Quang Nguyen work

   changes from version 03 to version 04:

     -

   o  Re-wrote section on Potential Router List initialization to
      reference existing precedence in other documents

     -

   o  several minor wording changes based on feedback from the community

   changes from version 02 to version 03:

     -

   o  Added contributing co-authors

     -

   o  RSs are now sent to unicast addresses rather than
      all-routers-multicast
     -

   o  Brought draft into better alignment with other IPv6
      standards-track documents

     -

   o  Added applicability statement

   changes from version 01 to version 02:

     -

   o  Cleaned up text and tightened up terminology. terminology

   o  Changed "IPv6 destination address" to "IPv6 next-hop address"
      under "sending rules". rules"

   o  Changed definition of ISATAP prefix to include link and site-local. site-local

   o  Changed language in sections 4 and 5

   changes from version 00 to version 01:

     -

   o  Revised draft to require different /64 prefixes for ISATAP
      addresses and native IPv6 addresses.  Thus, a node's ISATAP
      interface is assigned a /64 prefix that is distinct from the
      prefixes assigned to any other interfaces attached to the node -
      be they physical or logical interfaces.  This approach eliminates
      ISATAP-specific sending rules presented in earlier draft versions.

     -

   o  Changed sense of 'u/l' bit in the ISATAP address interface
      identifier to indicate "local scope", since ISATAP interface
      identifiers are unique only within the scope of the ISATAP prefix.
      (See section 4.)

   changes from personal draft to version 00:

     -

   o  Title change to provide higher-level description of field of use
      addressed by this draft.  Removed other extraneous text.

     -

   o  Major new section on automatic discovery of off-link IPv6 routers
      when IPv6-IPv4 compatibility addresses are used.

APPENDIX B:

Appendix B. Rationale for Interface Identifier Construction Rules

   ISATAP specifies an [EUI64]-format EUI64-format address construction for the Orga-
   nizationally-Unique
   Organizationally-Unique Identifier (OUI) owned by the Internet
   Assigned Numbers Authority [IANA]. (IANA).  This format (given below) is used
   to con-
   struct construct both native [EUI64] EUI64 addresses for general use and modified
   EUI-64 format interface identifiers for use in IPv6 unicast
   addresses:

    |0                      2|2      3|3      3|4                      6|
    |0                      3|4      1|2      9|0                      3|
    +------------------------+--------+--------+------------------------+
    |  OUI ("00-00-5E"+u+g)  |  TYPE  |  TSE   |          TSD           |
    +------------------------+--------+--------+------------------------+

   Where the fields are:

      OUI     IANA's OUI: 00-00-5E with 'u' and 'g' bits (3 octets)

      TYPE    Type field; specifies interpretation of (TSE, TSD) (1 octet)

      TSE     Type-Specific Extension (1 octet)

      TSD     Type-Specific Data (3 octets)

   And the following interpretations are specified based on TYPE:

      TYPE         (TSE, TSD) Interpretation
      ----         -------------------------
      0x00-0xFD    RESERVED for future IANA use
      0xFE         (TSE, TSD) together contain an embedded IPv4 address
      0xFF         TSD is interpreted based on TSE as follows:

                   TSE          TSD Interpretation
                   ---          ------------------
                   0x00-0xFD    RESERVED for future IANA use
                   0xFE         TSD contains 24-bit EUI-48 intf id
                   0xFF         RESERVED by IEEE/RAC

                                Figure 3

   Thus, if TYPE=0xFE, TSE is an extension of TSD.  If TYPE=0xFF, TSE is
   an extension of TYPE.  Other values for TYPE (hence, (thus, other interpreta-
   tions
   interpretations of TSE, TSD) are reserved for future IANA use.

   The above specification is compatible with all aspects of [EUI64], EUI64,
   including support for encapsulating legacy EUI-48 interface identi-
   fiers
   identifiers (e.g., an IANA EUI-48 format multicast address such as:

   '01-00-5E-01-02-03' is encapsulated as: '01-00-5E-FF-FE-01-02-03').
   But, the specification also provides a special TYPE (0xFE) to indi-
   cate
   indicate an IPv4 address is embedded.  Thus, when the first four
   octets of
   a [ADDR]-compatible an IPv6 interface identifier are: '00-00-5E-FE' (note: the
   'u/l' bit MUST be 0) the interface identifier is said to be in
   "ISATAP format" and the next four octets embed an IPv4 address
   encoded in network byte order.

Appendix C. INTELLECTUAL PROPERTY

   SRI International has notified the IETF of IPR considerations for
   some aspects of this specification.  For more information consult the
   online list of claimed rights.

Intellectual Property Statement

   The IETF takes no position regarding the validity or scope of any
   intellectual property or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; neither does it represent that it
   has made any effort to identify any such rights.  Information on the
   IETF's procedures with respect to rights in standards-track and
   standards-related documentation can be found in BCP-11.  Copies of
   claims of rights made available for publication and any assurances of
   licenses to be made available, or the result of an attempt made to
   obtain a general license or permission for the use of such
   proprietary rights by implementors or users of this specification can
   be obtained from the IETF Secretariat.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights which may cover technology that may be required to practice
   this standard.  Please address the information to the IETF Executive
   Director.

Full Copyright Statement

   Copyright (C) The Internet Society (2002).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assignees.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.