draft-ietf-ngtrans-isatap-08.txt   draft-ietf-ngtrans-isatap-09.txt 
NGTRANS Working Group F. Templin NGTRANS Working Group F. Templin
Internet-Draft Nokia Internet-Draft Nokia
Expires: June 19, 2003 T. Gleeson Expires: July 1, 2003 T. Gleeson
Cisco Systems K.K. Cisco Systems K.K.
M. Talwar M. Talwar
D. Thaler D. Thaler
Microsoft Corporation Microsoft Corporation
December 19, 2002 December 31, 2002
Intra-Site Automatic Tunnel Addressing Protocol (ISATAP) Intra-Site Automatic Tunnel Addressing Protocol (ISATAP)
draft-ietf-ngtrans-isatap-08.txt draft-ietf-ngtrans-isatap-09.txt
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026. all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as other groups may also distribute working documents as
Internet-Drafts. Internet-Drafts.
skipping to change at page 1, line 36 skipping to change at page 1, line 36
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at http:// The list of current Internet-Drafts can be accessed at http://
www.ietf.org/ietf/1id-abstracts.txt. www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on June 19, 2003. This Internet-Draft will expire on July 1, 2003.
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (2002). All Rights Reserved. Copyright (C) The Internet Society (2002). All Rights Reserved.
Abstract Abstract
This document specifies an Intra-Site Automatic Tunnel Addressing This document specifies an Intra-Site Automatic Tunnel Addressing
Protocol (ISATAP) that connects IPv6 hosts and routers within IPv4 Protocol (ISATAP) that connects IPv6 hosts and routers within IPv4
sites. ISATAP is a transition mechanism that treats the site's IPv4 sites. ISATAP treats the site's IPv4 infrastructure as a link layer
infrastructure as a Non-Broadcast Multiple Access (NBMA) link layer
for IPv6 with no requirement for IPv4 multicast. ISATAP enables for IPv6 with no requirement for IPv4 multicast. ISATAP enables
intra-site automatic IPv6-in-IPv4 tunneling whether globally assigned intra-site automatic IPv6-in-IPv4 tunneling whether globally assigned
or private IPv4 addresses are used. or private IPv4 addresses are used.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Applicability Statement . . . . . . . . . . . . . . . . . . 3 2. Applicability Statement . . . . . . . . . . . . . . . . . . 3
3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . 4 3. Requirements . . . . . . . . . . . . . . . . . . . . . . . . 4
4. Transmission of IPv6 Packets on ISATAP Links . . . . . . . . 4 4. Terminology . . . . . . . . . . . . . . . . . . . . . . . . 4
4.1 ISATAP Interface Identifier Construction . . . . . . . . . . 4 5. Basic IPv6 Operation on ISATAP Links . . . . . . . . . . . . 5
4.2 Stateless Autoconfiguration and Link-Local Addresses . . . . 5 5.1 Interface Identifiers and Address Construction . . . . . . . 5
4.3 ISATAP Link/Interface Configuration . . . . . . . . . . . . 5 5.2 ISATAP Link/Interface Configuration . . . . . . . . . . . . 5
4.4 Sending Rules and Address Mapping . . . . . . . . . . . . . 6 5.3 Dual Stack Operation and Address Configuration . . . . . . . 6
4.5 Validity Checks for Received Packets . . . . . . . . . . . . 6 5.4 Tunneling Mechanisms . . . . . . . . . . . . . . . . . . . . 6
4.6 Tunnel MTU and Fragmentation . . . . . . . . . . . . . . . . 6 5.4.1 Encapsulation . . . . . . . . . . . . . . . . . . . . . . . 6
5. Neighbor Discovery for ISATAP Links . . . . . . . . . . . . 9 5.4.2 Tunnel MTU and Fragmentation . . . . . . . . . . . . . . . . 6
5.1 Address Resolution . . . . . . . . . . . . . . . . . . . . . 9 5.4.3 Handling IPv4 ICMP Errors . . . . . . . . . . . . . . . . . 7
5.2 Router and Prefix Discovery . . . . . . . . . . . . . . . . 10 5.4.4 Decapsulation . . . . . . . . . . . . . . . . . . . . . . . 7
5.2.1 Conceptual Data Structures . . . . . . . . . . . . . . . . . 10 5.4.5 Link-Local Addresses . . . . . . . . . . . . . . . . . . . . 7
5.2.2 Validity Checks for Router Advertisements . . . . . . . . . 11 5.4.6 Ingress Filtering . . . . . . . . . . . . . . . . . . . . . 7
5.2.3 Router Specification . . . . . . . . . . . . . . . . . . . . 12 6. Neighbor Discovery and Address Autoconfiguration . . . . . . 8
5.2.4 Host Specification . . . . . . . . . . . . . . . . . . . . . 12 6.1 Address Resolution . . . . . . . . . . . . . . . . . . . . . 8
6. ISATAP Deployment Considerations . . . . . . . . . . . . . . 13 6.2 Address Autoconfiguration and Router Discovery . . . . . . . 9
6.1 Host And Router Deployment Considerations . . . . . . . . . 13 6.2.1 Conceptual Data Structures . . . . . . . . . . . . . . . . . 9
6.2 Site Administration Considerations . . . . . . . . . . . . . 13 6.2.2 Validity Checks for Router Advertisements . . . . . . . . . 10
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . 14 6.2.3 Router Specification . . . . . . . . . . . . . . . . . . . . 10
8. Security considerations . . . . . . . . . . . . . . . . . . 14 6.2.4 Host Specification . . . . . . . . . . . . . . . . . . . . . 11
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 15 7. ISATAP Deployment Considerations . . . . . . . . . . . . . . 12
Normative References . . . . . . . . . . . . . . . . . . . . 16 7.1 Host And Router Deployment Considerations . . . . . . . . . 12
Informative References . . . . . . . . . . . . . . . . . . . 17 7.2 Site Administration Considerations . . . . . . . . . . . . . 12
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 17 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . 13
A. Major Changes . . . . . . . . . . . . . . . . . . . . . . . 18 9. Security considerations . . . . . . . . . . . . . . . . . . 13
B. Rationale for Interface Identifier Construction Rules . . . 21 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 14
C. INTELLECTUAL PROPERTY . . . . . . . . . . . . . . . . . . . 22 Normative References . . . . . . . . . . . . . . . . . . . . 14
Intellectual Property and Copyright Statements . . . . . . . 23 Informative References . . . . . . . . . . . . . . . . . . . 15
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 16
A. Major Changes . . . . . . . . . . . . . . . . . . . . . . . 17
B. Rationale for Interface Identifier Construction . . . . . . 18
C. Dynamic Per-neighbor MTU Discovery . . . . . . . . . . . . . 19
Intellectual Property and Copyright Statements . . . . . . . 21
1. Introduction 1. Introduction
This document presents a simple approach that enables incremental This document presents a simple approach that enables incremental
deployment of IPv6 [1] within IPv4-based [2] sites in a manner that deployment of IPv6 [1] within IPv4-based [2] sites in a manner that
is compatible with inter-domain transition mechanisms, e.g., RFC 3056 is compatible with inter-domain tunneling mechanisms, e.g., RFC 3056
(6to4) [19]. We refer to this approach as the Intra-Site Automatic (6to4) [18]. We refer to this approach as the Intra-Site Automatic
Tunnel Addressing Protocol, or ISATAP (pronounced: "ice-a-tap"). Tunnel Addressing Protocol (ISATAP). ISATAP allows dual-stack nodes
ISATAP allows dual-stack nodes that do not share a common link with that do not share a physical link with an IPv6 router to
an IPv6 router to automatically tunnel packets to the IPv6 next-hop automatically tunnel packets to the IPv6 next-hop address through
address through IPv4, i.e., the site's IPv4 infrastructure is treated IPv4, i.e., the site's IPv4 infrastructure is treated as an link
as an NBMA link layer. layer for IPv6.
This document specifies details for the transmission of IPv6 packets This document specifies details for the transmission of IPv6 packets
over ISATAP links (i.e., automatic IPv6-in-IPv4 tunneling), including over ISATAP links (i.e., automatic IPv6-in-IPv4 tunneling), including
a new EUI-64 based interface identifier format [3][4][5] that embeds an interface identifier format that embeds an IPv4 address. This
an IPv4 address. This format supports configuration of global, format supports IPv6 protocol mechanisms for address configuration as
site-local and link-local addresses as specified in RFC 2462 [6] as
well as simple link-layer address mapping. Simple validity checks well as simple link-layer address mapping. Simple validity checks
for received packets are given. Also specified in this document is for received packets are given. Also specified in this document is
the operation of IPv6 Neighbor Discovery for ISATAP, as permitted for the operation of IPv6 Neighbor Discovery for ISATAP. The document
NBMA links by RFC 2461 [7]. The document finally presents deployment finally presents deployment and security considerations for ISATAP.
and security considerations for ISATAP.
2. Applicability Statement 2. Applicability Statement
ISATAP provides the following features: ISATAP provides the following features:
o treats site's IPv4 infrastructure as an NBMA link layer using o treats site's IPv4 infrastructure as link layer for IPv6 using
automatic IPv6-in-IPv4 tunneling (i.e., no configured tunnel automatic IPv6-in-IPv4 tunneling (i.e., no configured tunnel
state) state)
o enables incremental deployment of IPv6 hosts within IPv4 sites o enables incremental deployment of IPv6 hosts within IPv4 sites
with no aggregation scaling issues at border gateways with no aggregation scaling issues at border gateways
o requires no special IPv4 services within the site (e.g., o requires no special IPv4 services within the site (e.g.,
multicast) multicast)
o supports both stateless address autoconfiguration and manual o supports both stateless address autoconfiguration and manual
configuration configuration
o supports networks that use non-globally unique IPv4 addresses o supports networks that use non-globally unique IPv4 addresses
(e.g., when private address allocations [8] are used), but does (e.g., when private address allocations [3] are used), but does
not allow the virtual ISATAP link to span a Network Address not allow the virtual ISATAP link to span a Network Address
Translator [9] Translator [4]
o compatible with other NGTRANS mechanisms (e.g., 6to4 [19]) o compatible with other NGTRANS mechanisms (e.g., 6to4 [18])
3. Terminology 3. Requirements
The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD,
SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL, when they appear in this
document, are to be interpreted as described in [5].
This document also makes use of internal conceptual variables to
describe protocol behavior and external variables that an
implementation must allow system administrators to change. The
specific variable names, how their values change, and how their
settings influence protocol behavior are provided to demonstrate
protocol behavior. An implementation is not required to have them in
the exact form described here, so long as its external behavior is
consistent with that described in this document.
4. Terminology
The terminology of RFC 2460 [1] applies to this document. The The terminology of RFC 2460 [1] applies to this document. The
following additional terms are defined: following additional terms are defined:
link: link; on-link:
same definition as [6][7]. same definitions as ([6], section 2.1).
underlying link: underlying link:
a link layer that supports IPv4 (for ISATAP), and MAY also support a link layer that supports IPv4 (for ISATAP), and MAY also support
IPv6 natively. IPv6 natively.
ISATAP link: ISATAP link:
one or more underlying links used for tunneling. The IPv4 network one or more underlying links used for tunneling. The IPv4 network
layer addresses of the underlying links are used as link-layer layer addresses of the underlying links are used as link-layer
addresses on the ISATAP link. addresses on the ISATAP link.
ISATAP interface: ISATAP interface:
a node's attachment to an ISATAP link. 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: ISATAP address:
an IPv6 address with an ISATAP prefix and an ISATAP format an on-link address on an ISATAP interface and with an interface
interface identifier constructed as specified in section 4. identifier constructed as specified in Section 5.1
ISATAP router: ISATAP router:
an IPv6 node that has an ISATAP interface over which it forwards an IPv6 node that has an ISATAP interface over which it forwards
packets not explicitly addressed to itself. packets not explicitly addressed to itself.
ISATAP host: ISATAP host:
any node that has an ISATAP interface and is not an ISATAP router. any node that has an ISATAP interface and is not an ISATAP router.
4. Transmission of IPv6 Packets on ISATAP Links 5. Basic IPv6 Operation on ISATAP Links
ISATAP links transmit IPv6 packets via automatic tunnels using the ISATAP links transmit IPv6 packets via automatic tunnels using the
site's IPv4 infrastructure as an NBMA link layer. IPv4 ICMP errors site's IPv4 infrastructure as a link layer for IPv6, i.e., the site's
and ARP failures may be processed as link error notifications, as IPv4 infrastructure is treated as a Non-Broadcast, Multiple Access
allowed by RFC 2461 [7]. The common tunneling mechanisms specified (NBMA) link layer. The following subsections outline basic
in Section 3 of RFC 2893 [10] are used, with the following noted operational details for IPv6 on ISATAP links:
specific considerations for ISATAP links and automatic tunnels:
4.1 ISATAP Interface Identifier Construction 5.1 Interface Identifiers and Address Construction
IPv6 unicast addresses [3][4] include a 64-bit interface identifier
field in "modified EUI-64 format", based on the IEEE EUI-64 [5]
specification. (Modified EUI-64 format inverts the sense of the 'u/
l' bit from its specification in [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 Stateless Autoconfiguration and Link-Local Addresses (RFC2491 [7], section 5.1) requires companion documents to specify
the exact mechanism for generating interface tokens (i.e.,
identifiers). Interface identifiers for ISATAP are compatible with
the EUI-64 identifier format ([8], section 2.5.1), and are
constructed by appending an IPv4 address on the ISATAP link to the
32-bit string '00-00-5E-FE'. (Appendix B includes non-normative text
explaining the rationale for this construction rule.)
ISATAP addresses are unicast addresses that use ISATAP format Global and Local-use ISATAP addresses are constructed as follows:
interface identifiers as follows:
| 64 bits | 32 bits | 32 bits | | 64 bits | 32 bits | 32 bits |
+------------------------------+---------------+----------------+ +------------------------------+---------------+----------------+
| link-local, site-local or | 0000:5EFE | IPv4 Address | | global or local-use unicast | 0000:5EFE | IPv4 Address |
| global unicast prefix | | of ISATAP link | | prefix | | of ISATAP link |
+------------------------------+---------------+----------------+ +------------------------------+---------------+----------------+
Figure 1 Figure 1
Link-local, site-local, and global ISATAP addresses can be created For example, the global unicast address:
exactly as specified in [3], (e.g., by auto-configuration [6] or
manual configuration). For example, the IPv6 address:
3FFE:1A05:510:1111:0:5EFE:8CAD:8108 3FFE:1A05:510:1111:0:5EFE:8CAD:8108
has a prefix of '3FFE:1A05:510:1111::/64' and an ISATAP format has a prefix of '3FFE:1A05:510:1111::/64' and an ISATAP interface
interface identifier with embedded IPv4 address: '140.173.129.8'. identifier with embedded IPv4 address: '140.173.129.8'. The address
The address is alternately written as: is alternately written as:
3FFE:1A05:510:1111:0:5EFE:140.173.129.8 3FFE:1A05:510:1111:0:5EFE:140.173.129.8
The link-local and site-local variants (respectively) are: (Similar examples for local-use addresses are made obvious by the
above and with reference to the IPv6 addressing architecture
FE80::0:5EFE:140.173.129.8 document.)
FEC0::1111:0:5EFE:140.173.129.8
4.3 ISATAP Link/Interface Configuration 5.2 ISATAP Link/Interface Configuration
An ISATAP link consists of one or more underlying links that support ISATAP Link/Interface configuration is consistent with (RFC2491 [7],
IPv4 for tunneling within a site. sections 5.1.1 and 5.1.2).
Using the terminology of Section 4, an ISATAP link consists of one or
more underlying links that support IPv4 for tunneling within a site.
ISATAP interfaces are configured over ISATAP links; each IPv4 address ISATAP interfaces are configured over ISATAP links; each IPv4 address
assigned to an underlying link is seen as a link-layer address for assigned to an underlying link is seen as a link-layer address for
ISATAP. ISATAP.
At least one link-layer address per each ISATAP router interface 5.3 Dual Stack Operation and Address Configuration
SHOULD be added to the Potential Routers List (see Section 5.2.1).
4.4 Sending Rules and Address Mapping ISATAP uses the same specification found in ([9], section 2). That
is, ISATAP nodes implement "IPv6/IPv4" or "dual-stack" configurations
and operate with both stacks enabled. Address configuration and DNS
considerations are the same as for ([9], sections 2.1 and 2.2)
The IPv6 next-hop address for packets sent on an ISATAP link MUST be 5.4 Tunneling Mechanisms
an ISATAP address. Packets that do not satisfy this constraint MUST
be discarded and an ICMPv6 destination unreachable indication with
code 3 (Address Unreachable) [11] MUST be returned. No other sending
rules are necessary.
The procedure for mapping unicast addresses into link-layer addresses The common tunneling mechanisms specified in ([9], sections 3.1
is to simply treat the last four octets of the ISATAP address as an through 3.7) are used, with the following noted specific
IPv4 address (in network byte order). No multicast address mappings considerations:
are specified.
4.5 Validity Checks for Received Packets 5.4.1 Encapsulation
Packets received on ISATAP interfaces MUST satisfy at least one The specification in ([9], section 3.1) is used. Additionally, the
(i.e., one or both) of the following validity checks: IPv6 next-hop address for packets sent on an ISATAP link MUST be an
ISATAP address; other packets are discarded (i.e., not encapsulated)
and an ICMPv6 destination unreachable indication with code 3 (Address
Unreachable) [10] is returned to the source.
o the network-layer (IPv6) source address has a prefix configured on 5.4.2 Tunnel MTU and Fragmentation
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 The specification in ([9], section 3.2) is NOT used; the
List (see Section 5.2.1), i.e., previous hop is an on-link ISATAP specification in this section is used instead.
router
Packets that do not satisfy at least one of the above checks are ISATAP uses automatic tunnel interfaces that may be configured over
silently discarded. multiple underlying links with diverse maximum transmission units
(MTUs). The minimum MTU for IPv6 interfaces is 1280 bytes ([1],
Section 5), but the following considerations apply when IPv4 is used
as a link layer for IPv6:
4.6 Tunnel MTU and Fragmentation o nearly all IPv4 nodes accept unfragmented packets up to 1500 bytes
ISATAP interfaces implement automatic tunnels that may be configured o sub-IPv4 layer encapsulations (e.g., VPN) may occur on some paths
over multiple underlying links with diverse MTUs. The ISATAP
interface MTU (ISATAP_MTU) SHOULD be set to the largest MTU of all
underlying links (LINK_MTU) minus 120 bytes for possible link-layer
encapsulations (see note 1). The minimum value (ISATAP_MINMTU) MUST
be at least 1280 bytes [1], but SHOULD be set to 1380 bytes (see note
2).
IPv6 path MTU discovery [14] is required for IPv6 interfaces that o commonly-deployed VPNs use an MTU of 1400 bytes
send packets larger than 1280 bytes. The following considerations
for ISATAP interfaces are noted:
o ISATAP encapsulators and decapsulators are IPv6 neighbors since Thus, ISATAP interfaces SHOULD use an MTU (ISATAP_MTU) of 1380 bytes
they share a common link layer, i.e., the ISATAP link (1400 minus 20 bytes for IPv4 encapsulation) to maximize efficiency
and minimize IPv4 fragmentation.
o ISATAP neighbors may be separated by multiple IPv4 hops requiring ISATAP_MTU MAY be set to larger values when the encapsulator uses
IPv4 path MTU discovery [15] to establish per-neighbor MTUs dynamic per-neighbor MTU discovery. When larger values are used,
(NBR_MTU) ISATAP_MTU SHOULD NOT exceed the maximum MTU of all underlying links
minus 20 bytes for link layer encapsulation. (Appendix C provides
non-normative considerations for dynamic per-neighbor MTU discovery.)
o NBR_MTU information is stored as link-layer (IPv4) information As with ordinary IPv6 interfaces, the network layer (IPv6) forwards
(e.g., in the IPv4 path MTU discovery cache), thus it may not be packets of size ISATAP_MTU or smaller to the ISATAP interface. All
visible to upper layers in all implementations other packets are dropped, and an ICMPv6 "packet too big" message
with MTU = ISATAP_MTU is returned to the source [11].
o NBR_MTU information may not always be available for each neighbor ISATAP interfaces send all packets of size 1380 bytes or smaller with
due to finite storage limitations the Don't Fragment (DF) bit NOT set in the encapsualting IPv4 header.
o IPv4 path MTU discovery delivers ICMPv4 "fragmentation needed" 5.4.3 Handling IPv4 ICMP Errors
messages, but these do not provide enough state for translation
into ICMPv6 "packet too big" messages (see: RFC 792 [12] and RFC
1812 [13], section 4.3.2.3).
IPv6 sees the ISATAP interface as an ordinary IPv6 interface with a The specification in ([9], section 3.4) MAY be used. IPv4 ICMP
fixed MTU (ISATAP_MTU), i.e., only those IPv6 packets of size errors and ARP failures are otherwise processed as link error
ISATAP_MTU or smaller are accepted. All other packets are dropped, notifications.
and an IPv6 ICMP "packet too big" message with MTU = ISATAP_MTU is
returned. ISATAP interfaces SHOULD implement the following
link-layer algorithm to determine when to perform IPv6-in-IPv4
encapsulation and when to return an ICMPv6 "packet too big" message:
Determine per-neighbor LINK_MTU; NBR_MTU, e.g., by consulting IPv4 5.4.4 Decapsulation
forwarding table and/or IPv4 path MTU discovery cache, then:
if NBR_MTU information exists The specification in ([9], section 3.6) is used.
if packet is larger than NBR_MTU - 120 and packet
is larger than ISATAP_MINMTU
Send IPv6 ICMP "packet too big" with
MTU = MAX(NBR_MTU - 120, ISATAP_MINMTU)
Drop packet
else
if packet is larger than ISATAP_MINMTU
Encapsulate and set the Don't Fragment
flag in the IPv4 header
else
Encapsulate but do not set the Don't
Fragment flag in the IPv4 header
endif
endif 5.4.5 Link-Local Addresses
else
if packet is larger than LINK_MTU - 120 and packet is
larger than ISATAP_MINMTU
Send IPv6 ICMP "packet too big" with
MTU = ISATAP_MINMTU
Drop packet
else
if IPv6 neighbor is also an IPv4 neighbor on
the underlying link, or packet is less than
or == ISATAP_MINMTU
Encapsulate but do not set the Don't
Fragment flag in the IPv4 header
else
send ICMPv6 "packet too big" with
MTU = ISATAP_MINMTU
Drop packet
endif
endif
endif
Figure 2 The specification in ([9], section 3.7) is NOT used. Instead,
link-local addresses are formed by appending an interface identifier,
as defined in Section 5.1, to the prefix FE80::/64.
Encapsulators MAY maintain per-neighbor MTU (NBR_MTU) values by 5.4.6 Ingress Filtering
periodically probing the IPv4 path, e.g., by sending packets larger
than ISATAP_MINMTU with the DF bit set in the IPv4 header. Large
data packets and/or Neighbor Solicitation (NS) packets with padding
bytes added (up to a total length of ISATAP_MTU) may be used for this
purpose. (NS packets are preferred, since successful delivery
results in a positive acknowledgement from the decapsulator.)
When probing, implementations SHOULD maintain state for translating
ICMPv4 "fragmentation needed" messages into ICMPv6 "packet too big"
messages for at least the round-trip time (RTT) between the
encapsulator and decapsulator (see note 3). Implementations SHOULD
repeat the polling process within REACHABLE_TIME ([7], section 10) to
detect link MTU restrictions.
NOTES: The network layer (IPv6) destination address of a packet received on
an ISATAP interface is either local (i.e., matches an address
configured on the local IPv6 stack) or foreign. The decapsulator
MUST be configured with a list of IPv4 address prefixes that are
acceptable, i.e., an ingress filter list (default deny all). For
packets with foreign network layer (IPv6) destination addresses, the
link layer (IPv4) source address MUST be explicitly allowed by
ingress filtering. Packets that do not satisfy this condition are
silently discarded.
1. ISATAP requires 20 bytes for link-layer (IPv4) encapsulation. Additionally, all packets (whether foreign or local) MUST satisfy at
However, sub-IPv4 layer encapsulation (e.g., for VPNs) may occur least one (i.e., one or both) of the following validity checks:
on some paths. Commonly-deployed VPNs on Ethernet use an MTU of
1400 bytes, thus 100 bytes (1500 minums 1400) are reserverd for
sub-IPv4 layer encapsulation.
2. Nearly all IPv4 routers can forward 1500 byte packets without o the network-layer (IPv6) source address is an on-link ISATAP
fragmentation. Thus, 1380 bytes (1500 minus 100 minus 20) is address with an interface identifier that embeds the link-layer
RECOMMENDED as ISATAP_MINMTU. (IPv4) source address
o the link-layer (IPv4) source address is in the Potential Routers
List (see Section 6.2.1)
3. ICMPv4 "fragmentation needed" messages can be injected by Packets that do not satisfy the above conditions are silently
malicious nodes, but this same problem exists in IPv4. Using discarded.
Neighbor Solicitation messages for probing and receiving a
positive acknowledgement from a trusted decapsulator MAY help
encapsulators recognize spoofed ICMPv4 "fragmentation needed"
messages.
5. Neighbor Discovery for ISATAP Links 6. Neighbor Discovery and Address Autoconfiguration
Section 3.2 of RFC 2461 [7] provides the following guidelines for RFC 2491 [7] provides a general architecture for IPv6 over NBMA
non-broadcast multiple access (NBMA) link support: networks, including multicast mechanisms to support host-side
operation of the IPv6 neighbor discovery protocol. ISATAP links most
closely meet the description for connectionless service found in the
last paragraph of ([7], section 1), i.e., ISATAP addresses provide
the sender with an NBMA destination address to which it can transmit
packets whenever it desires. Thus, the RFC 2491 multicast mechanisms
are not required for address resolution and not otherwise implemented
on ISATAP links due to traffic scaling considerations (i.e., ISATAP
links are unicast-only).
RFC 2461 [6] provides the following guidelines for non-broadcast
multiple access (NBMA) link support:
"Redirect, Neighbor Unreachability Detection and next-hop "Redirect, Neighbor Unreachability Detection and next-hop
determination should be implemented as described in this document. determination should be implemented as described in this document.
Address resolution and the mechanism for delivering Router Address resolution and the mechanism for delivering Router
Solicitations and Advertisements on NBMA links is not specified in Solicitations and Advertisements on NBMA links is not specified in
this document." this document."
ISATAP links SHOULD implement Redirect, Neighbor Unreachability ISATAP links SHOULD implement Redirect, Neighbor Unreachability
Detection, and next-hop determination exactly as specified in [7]. Detection, and next-hop determination exactly as specified in [6].
Address resolution and the mechanisms for delivering Router Address resolution and the mechanisms for delivering Router
Solicitations and Advertisements for ISATAP links are not specified Solicitations and Advertisements on ISATAP links use the
by [7]; instead, they are specified in this document. (Note that specifications found in this document.
these mechanisms MAY potentially apply to other types of NBMA links
in the future.)
5.1 Address Resolution 6.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 hosts SHOULD enhance the static address resolution computation ISATAP addresses are resolved to link-layer addresses (IPv4) by a
with a unicast Neighbor Solicitation(NS)/Neighbor Advertisement(NA) static computation, i.e., the last four octets are treated as an IPv4
exchange to ensure IPv6 level reachability of the neighbor and also address. ([7], section 5.2) requires companion documents to specify
SHOULD perform Neighbor Unreachability Detection (NUD) as specified the format for link layer address options, however, link layer
in (RFC 2461 [7], section 7.3). ISATAP routers MAY implement the address options are not needed for address resolution in ISATAP.
enhanced address resolution and NUD, but this might not scale in all Thus, no format is specified and the following specification from
environments. All ISATAP nodes MUST send solicited neighbor ([9], section 3.8) applies:
advertisements ([7], section 7.2.4).
Link-layer address options ([7], section 4.6.1) for this "This means that a sender of Neighbor Discovery packets
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 NS/NA
messages and MUST be silently ignored in received NS/NA messages.
5.2 Router and Prefix Discovery * SHOULD NOT include Source Link Layer Address options or Target
Link Layer Address options on the tunnel link.
Since the site's IPv4 infrastructure is treated as an NBMA link * MUST silently ignore any received SLLA or TLLA options on the
layer, unsolicited Router Advertisements do not provide sufficient tunnel link."
means for router discovery on ISATAP links. Thus, alternate
mechanisms are required and specified below:
5.2.1 Conceptual Data Structures Following static address resolution, ISATAP hosts SHOULD implement
the reachability confirmation specifications in [6], sections
7.2.2-7.2.8 that apply when unicast Neighbor Solicitations (NS) are
used. ISATAP hosts SHOULD additionally perform Neighbor
Unreachability Detection (NUD) as specified in (RFC 2461 [6], section
7.3). ISATAP routers MAY perform the above-specified reachability
detection and NUD procedures, but this might not scale in all
environments.
ISATAP nodes use the conceptual data structures Prefix List and All ISATAP nodes MUST send solicited neighbor advertisements ([6],
Default Router List exactly as in ([7], section 5.1). ISATAP links section 7.2.4).
add a new conceptual data structure "Potential Router List" and the
following new configuration variable:
ResolveInterval ISATAP links disable Duplicate Address Detection, as permitted by
Time between name service resolutions. Default and suggested ([12], section 4).
minimum: 1hr
A Potential Router List (PRL) is associated with every ISATAP link. 6.2 Address Autoconfiguration and Router Discovery
The PRL provides a trust basis for router validation (see security
considerations). Each entry in the PRL has an IPv4 address and an
associated 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 address for that interface. The
following sections specify the process for initializing the PRL:
When a node enables an ISATAP link, it first discovers a DNS (RFC Since NBMA multicast emulation mechanisms are not used on ISATAP
1035 [22]) fully-qualified domain name for the site's ISATAP service. links, nodes will not receive unsolicited multicast Router
The domain name MAY be established by a DHCPv4 [17] option for ISATAP Advertisements. (RFC 2462 [12], section 5.5.2) requires that hosts
(option code TBD, see IANA Considerations), by manual configuration, use stateful autoconfiguration (i.e., DHCPv6 [13]) in the absence of
or by an unspecified alternative method. The DHCPv4 option for Router Advertisements. When statelful autoconfiguration is not
ISATAP is implemented exactly as in RFC 3361 [18] with the following available, nodes use alternate mechanisms (described below) for
noted exceptions: router and prefix discovery.
o the DHCP option code for ISATAP (TBD) is used 6.2.1 Conceptual Data Structures
o the encoding byte MUST be 0, i.e.; only FQDNs are accepted ISATAP nodes use the conceptual data structures Prefix List and
Default Router List exactly as in ([6], section 5.1). ISATAP links
add two new conceptual data structures "Potential Router List" and
"Stateful Autoconfiguration Server List".
o if multiple domain names occur, only the first is used A Potential Router List (PRL) and Stateful Autoconfiguration Server
List (SASL) is associated with every ISATAP link. The PRL provides a
trust basis for router validation (see security considerations).
Each entry in the PRL has an IPv4 address and an associated 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 address for that interface. Similarly, each entry in the
SASL has an IPv4 address and associated timer. The IPv4 address
represents a DHCPv6 server attached to the ISATAP link, and is used
to construct the ISATAP link-local address for that DHCPv6 server.
Next, the node initializes the link's PRL with IPv4 addresses When a node enables an ISATAP link, it first discovers IPv4 addresses
associated with the domain name discovered above. IPv4 addresses are for the PRL and SASL. The addresses MAY be established by a DHCPv4
discovered through manual config or by querying the name service to [14] option for ISATAP (option code TBD), by manual configuration, or
resolving the domain name into address records (e.g., DNS 'A' by an unspecified alternative method (e.g., DHCPv4 vendor-specific
resource records) containing IPv4 addresses. Unspecified alternative option; DNS ([19]) fully-qualified domain names).
methods may also be used.
Notes: When DNS fully-qualified domain names are used, IPv4 addresses for
the PRL and SASL are discovered through a static host file or by
querying an IPv4-based DNS server to resolve the domain names into
address records (e.g., DNS 'A' resource records) containing IPv4
addresses. Unspecified alternative methods for domain name
resolution may also be used. The following notes apply when DNS
fully-qualified domain names are used:
1. Site administrators maintain a domain name for the ISATAP service 1. Site administrators maintain domain names and IPv4 addresses for
and a list of IPv4 addresses representing ISATAP router the PRL and SASL for the site's ISATAP service, e.g., as address
interfaces (normally as address records in the site's name records in the site's name service. Administrators may also
service). Administrators may also advertise the domain name in a advertise the domain names in a DHCPv4 option for ISATAP.
DHCPv4 option for ISATAP.
2. There are no mandatory rules for the selection of a domain name, 2. There are no mandatory rules for the selection of domain names,
but administrators are encouraged to use the convention but administrators are encouraged to use the convention
"isatap.domainname" (e.g., isatap.example.com). "(list_name).isatap.domainname" (e.g., prl.isatap.example.com).
3. After initialization, nodes periodically re-initialize the PRL 3. After initialization, nodes periodically re-initialize the PRL
(after ResolveInterval). When DNS is used, nodes MUST follow the and SASL, e.g., once per hour. When DNS is used, client DNS
cache invalidation procedures in [22] when the DNS time-to-live resolvers use the IPv4 transport to resolve the names and follow
expires. the cache invalidation procedures in [19] when the DNS
time-to-live expires.
5.2.2 Validity Checks for Router Advertisements 6.2.2 Validity Checks for Router Advertisements
A node MUST silently discard any Router Advertisement messages it A node MUST silently discard any Router Advertisement messages it
receives that do not satisfy both the validity checks in ([7], receives that do not satisfy both the validity checks in ([6],
section 6.1.2) and the following additional validity check for section 6.1.2) and the following additional validity check for
ISATAP: ISATAP:
o the network-layer (IPv6) source address is an ISATAP address and o the network-layer (IPv6) source address is an ISATAP address and
embeds an IPv4 address from the PRL embeds an IPv4 address from the PRL
5.2.3 Router Specification 6.2.3 Router Specification
Advertising ISATAP interfaces of routers behave the same as Advertising ISATAP interfaces of routers behave the same as
advertising interfaces described in ([7], section 6.2). However, advertising interfaces described in ([6], section 6.2). However,
periodic unsolicited multicast Router Advertisements are not periodic unsolicited multicast Router Advertisements are not used,
required, thus the "interval timer" associated with advertising thus the "interval timer" associated with advertising interfaces is
interfaces is not used for that purpose. not used for that purpose.
When an ISATAP router receives a valid Router Solicitation on an When an ISATAP router receives a valid Router Solicitation on an
advertising ISATAP interface, it replies with a unicast Router advertising ISATAP interface, it replies with a unicast Router
Advertisement to the address of the node which sent the Router Advertisement to the address of the node which sent the Router
Solicitation. The source address of the Router Advertisement is a Solicitation. The source address of the Router Advertisement is a
link-local unicast address associated with the interface. This MAY link-local unicast address associated with the interface. This MAY
be the same as the destination address of the Router Solicitation. be the same as the destination address of the Router Solicitation.
ISATAP routers MAY engage in the solicitation process described under ISATAP routers MAY engage in the solicitation process described under
Host Specification below, e.g., if Router Advertisement consistency Host Specification below, e.g., if Router Advertisement consistency
verification ([7], section 6.2.7) is desired. verification ([6], section 6.2.7) is desired.
5.2.4 Host Specification 6.2.4 Host Specification
All entries in the PRL are assumed to represent active ISATAP routers All entries in the PRL are assumed to represent active ISATAP routers
within the site, i.e., the PRL provides trust basis only; not within the site, i.e., the PRL provides trust basis only; not
reachability detection. Hosts periodically solicit information from reachability detection. When stateful autoconfiguration is available
one or more entries in the PRL ("PRL(i)") by sending unicast Router (i.e., when the SASL is non-null and at least one DHCPv6 server is
Solicitation messages using the IPv4 address ("V4ADDR_PRL(i)") and reachable), hosts may send unicast messages directly to the DHCPv6
associated timer in the entry. Hosts add the following variable to server as specified in ([13], section 1.1). Hosts SHOULD attempt
support the solicitation process: stateful autoconfiguration for each entry in the SASL (i.e., until an
attempt succeeds) before concluding that stateful autoconfiguration
is unavailable.
When stateful autoconfiguration is unavailable, hosts MAY
periodically 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 solicitation process:
MinRouterSolicitInterval MinRouterSolicitInterval
Minimum time between sending Router Solicitations to any router. Minimum time between sending Router Solicitations to any router.
Default and suggested minimum: 15min Default and suggested minimum 800,000 milliseconds (15min).
When a PRL(i) is selected, the host sets its associated timer to When a PRL(i) is selected, the host sets its associated timer to
MinRouterSolicitInterval and initiates solicitation following a short MinRouterSolicitInterval and initiates solicitation following a short
delay as in ([7], section 6.3.7). The solicitation process repeats delay as in ([6], section 6.3.7). The manner of choosing particular
when the associated timer expires. routers in the PRL for solicitation is outside the scope of this
specification. The solicitation process repeats when the associated
timer expires.
Solicitation consists of sending Router Solicitations to the ISATAP Solicitation consists of sending Router Solicitations to the ISATAP
link-local address constructed from the entry's IPv4 address, i.e., 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 they are sent to 'FE80::0:5EFE:V4ADDR_PRL(i)' instead of 'All-Routers
multicast'. They are otherwise sent exactly as in ([7], section multicast'. They are otherwise sent exactly as in ([6], section
6.3.7). 6.3.7).
Hosts process received Router Advertisements exactly as in ([7], Hosts process received Router Advertisements exactly as in ([6],
section 6.3.4). Hosts additionally reset the timer associated with section 6.3.4). Hosts additionally reset the timer associated with
the V4ADDR_PRL(i) embedded in the network-layer source address in the V4ADDR_PRL(i) embedded in the network-layer source address in
each received Router Advertisement. The timer is reset to either 0.5 each solicited Router Advertisement received. The timer is reset to
* (the minimum value in the router lifetime or valid lifetime of any either 0.5 * (the minimum value in the router lifetime or valid
on-link prefixes advertised) or MinRouterSolicitInterval; whichever lifetime of any on-link prefixes received in the advertisement) or
is longer. 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 7. ISATAP Deployment Considerations
6.1 Host And Router Deployment Considerations 7.1 Host And Router Deployment Considerations
For hosts, if an underlying link supports both IPv4 (over which For hosts, if an underlying link supports both IPv4 (over which
ISATAP is implemented) and also supports IPv6 natively, then ISATAP ISATAP is implemented) and also supports IPv6 natively, then ISATAP
MAY be enabled if the native IPv6 layer does not receive Router MAY be enabled if the native IPv6 layer does not receive Router
Advertisements (i.e., does not have connection with an IPv6 router). Advertisements (i.e., does not have connection with an IPv6 router).
After a non-link-local address has been configured and a default After a non-link-local address has been configured and a default
router acquired on the native link, the host SHOULD discontinue the router acquired on the native link, the host SHOULD discontinue the
router solicitation process described in the host specification and router solicitation process described in the host specification and
allow existing ISATAP address configurations to expire as specified allow existing ISATAP address configurations to expire as specified
in ([7], section 5.3) and ([6], section 5.5.4). Any ISATAP addresses in ([6], section 5.3) and ([12], section 5.5.4). Any ISATAP
added to the DNS for this host should also be removed. In this way, addresses added to the DNS for this host should also be removed. In
ISATAP use will gradually diminish as IPv6 routers are widely this way, ISATAP use will gradually diminish as IPv6 routers are
deployed throughout the site. widely deployed throughout the site.
Routers MAY configure an interface to simultaneously support both Routers MAY configure an interface to simultaneously support both
native IPv6, and also ISATAP (over IPv4). Routing will operate as native IPv6, and also ISATAP (over IPv4). Routing will operate as
usual between these two domains. Note that the prefixes used on the usual between these two domains. Note that the prefixes used on the
ISATAP and native IPv6 interfaces will be distinct. The IPv4 ISATAP and native IPv6 interfaces will be distinct. The IPv4
address(es) configured on a router's ISATAP interface(s) SHOULD be address(es) configured on a router's ISATAP interface(s) SHOULD be
added (either automatically or manually) to the site's address added (either automatically or manually) to the site's address
records for ISATAP router interfaces. records for ISATAP router interfaces.
6.2 Site Administration Considerations 7.2 Site Administration Considerations
The following considerations are noted for sites that deploy ISATAP: The following considerations are noted for sites that deploy ISATAP:
o ISATAP links are administratively defined by a set of router o ISATAP links are administratively defined by a set of router
interfaces, and set of nodes which have those interface addresses interfaces, a set of stateful autoconfiguration servers, and set
in their potential router lists. Thus, ISATAP links are defined of nodes which discover those interface and server addresses Thus,
by administrative (not physical) boundaries. ISATAP links are defined by administrative (not physical)
boundaries.
o ISATAP hosts and routers can be deployed in an ad-hoc and o ISATAP hosts and routers can be deployed in an ad-hoc and
independent fashion. In particular, ISATAP hosts can be deployed independent fashion. In particular, ISATAP hosts can be deployed
with little/no advanced knowledge of existing ISATAP routers, and with little/no advanced knowledge of existing ISATAP routers, and
ISATAP routers can deployed with no reconfiguration requirements ISATAP routers can deployed with no reconfiguration requirements
for hosts. for hosts.
o ISATAP nodes periodically send Router Solicitations (RS) to one or o When stateful autoconfiguration is not available, ISATAP nodes MAY
more members of the potential router list. When Router periodically send unicast Router Solicitations to and receive
Advertisements (RAs) are received, the Router Lifetime value unicast Router Advertisements from to one or more members of the
provides a timer for the next RS to be sent. Worst-case is for potential router list. A well-deployed stateful autoconfiguration
small values of Router Lifetime which is bounded by service within the site can minimize and/or eliminate the need for
MinRouterSolicitInterval. periodic solicitation.
o ISATAP nodes periodically refresh the entries on the PRL,
typically by 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 are well maintained.
7. IANA Considerations o ISATAP nodes periodically refresh the entries on the PRL and SASL.
Responsible site administration can reduce the control traffic.
At a minimum, administrators SHOULD ensure that dynamically
advertised information for the site's PRL and SASL are well
maintained.
A DHCPv4 option assignment for ISATAP is requested, as outlined in 8. IANA Considerations
the procedures found in RFC 2939 [23], section 3.
Appendix B proposes a specification for managing the IEEE OUI A DHCPv4 option code for ISATAP (TBD) [20] is requested in the event
assigned to IANA for EUI-64 interface identifier construction. This that the IESG recommends this document for standards track.
specification is made freely available to IANA for any purpose they
may find useful.
8. Security considerations 9. Security considerations
Site administrators are advised that, in addition to possible attacks Site administrators are advised that, in addition to possible attacks
against IPv6, security attacks against IPv4 MUST also be considered. against IPv6, security attacks against IPv4 MUST also be considered.
Many security considerations in RFC 2529 [20], section 9 apply also
to ISATAP.
Responsible IPv4 site security management is strongly encouraged. In Responsible IPv4 site security management is strongly encouraged. In
particular, border gateways SHOULD implement filtering to detect particular, border gateways SHOULD implement filtering to detect
spoofed IPv4 source addresses at a minimum; ip-protocol-41 filtering spoofed IPv4 source addresses at a minimum; ip-protocol-41 filtering
SHOULD also be implemented. SHOULD also be implemented.
If IPv4 source address filtering is not correctly implemented, the If IPv4 source address filtering is not correctly implemented, the
ISATAP validity checks will not be effective in preventing IPv6 ISATAP validity checks will not be effective in preventing IPv6
source address spoofing. source address spoofing.
If filtering for ip-protocol-41 is not correctly implemented, IPv6 If filtering for ip-protocol-41 is not correctly implemented, IPv6
source address spoofing is clearly possible, but this can be source address spoofing is clearly possible, but this can be
eliminated if both IPv4 source address filtering, and the ISATAP eliminated if both IPv4 source address filtering, and the ISATAP
validity checks are implemented. validity checks are implemented.
(RFC 2461 [7]), section 6.1.2 implies that nodes trust Router (RFC 2461 [6]), section 6.1.2 implies that nodes trust Router
Advertisements they receive from on-link routers, as indicated by a 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 value of 255 in the IPv6 'hop-limit' field. Since this field is not
decremented when ip-protocol-41 packets traverse multiple IPv4 hops decremented when ip-protocol-41 packets traverse multiple IPv4 hops
([10], section 3), ISATAP links require a different trust model. In ([9], section 3), ISATAP links require a different trust model. In
particular, ONLY those Router Advertisements received from a member particular, ONLY those Router Advertisements received from a member
of the Potential Routers List are trusted; all others are silently of the Potential Routers List are trusted; all others are silently
discarded. This trust model is predicated on IPv4 source address discarded. This trust model is predicated on IPv4 source address
filtering, as described above. filtering, as described above.
The ISATAP address format does not support privacy extensions for The ISATAP address format does not support privacy extensions for
stateless address autoconfiguration [21]. However, since the ISATAP stateless address autoconfiguration [21]. However, since the ISATAP
interface identifier is derived from the node's IPv4 address, 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 do not have the same level of privacy concerns as IPv6
addresses that use an interface identifier derived from the MAC addresses that use an interface identifier derived from the MAC
address. (This issue is the same for NAT'd addresses.) address. (This issue is the same for NAT'd addresses.)
9. Acknowledgements 10. Acknowledgements
Some of the ideas presented in this draft were derived from work at Some of the ideas presented in this draft were derived from work at
SRI with internal funds and contractual support. Government sponsors SRI with internal funds and contractual support. Government sponsors
who supported the work include Monica Farah-Stapleton and Russell who supported the work include Monica Farah-Stapleton and Russell
Langan from U.S. Army CECOM ASEO, and Dr. Allen Moshfegh from U.S. 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 Office of Naval Research. Within SRI, Dr. Mike Frankel, J. Peter
Marcotullio, Lou Rodriguez, and Dr. Ambatipudi Sastry supported the Marcotullio, Lou Rodriguez, and Dr. Ambatipudi Sastry supported the
work and helped foster early interest. work and helped foster early interest.
The following peer reviewers are acknowledged for taking the time to The following peer reviewers are acknowledged for taking the time to
review a pre-release of this document and provide input: Jim Bound, review a pre-release of this document and provide input: Jim Bound,
Rich Draves, Cyndi Jung, Ambatipudi Sastry, Aaron Schrader, Ole Rich Draves, Cyndi Jung, Ambatipudi Sastry, Aaron Schrader, Ole
Troan, Vlad Yasevich. Troan, Vlad Yasevich.
The authors acknowledge members of the NGTRANS community who have The authors acknowledge members of the NGTRANS community who have
made significant contributions to this effort, including Rich Draves, made significant contributions to this effort, including Rich Draves,
Alain Durand, Nathan Lutchansky, Karen Nielsen, Art Shelest, Margaret Alain Durand, Nathan Lutchansky, Karen Nielsen, Art Shelest, Margaret
Wasserman, and Brian Zill. Wasserman, and Brian Zill.
The authors also wish to acknowledge the work of Quang Nguyen [24] The authors also wish to acknowledge the work of Quang Nguyen [22]
under the guidance of Dr. Lixia Zhang that proposed very similar under the guidance of Dr. Lixia Zhang that proposed very similar
ideas to those that appear in this document. This work was first ideas to those that appear in this document. This work was first
brought to the authors' attention on September 20, 2002. brought to the authors' attention on September 20, 2002.
Normative References Normative References
[1] Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6) [1] Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6)
Specification", RFC 2460, December 1998. Specification", RFC 2460, December 1998.
[2] Postel, J., "Internet Protocol", STD 5, RFC 791, September [2] Postel, J., "Internet Protocol", STD 5, RFC 791, September
1981. 1981.
[3] Hinden, R. and S. Deering, "IP Version 6 Addressing [3] Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G. and E.
Architecture", RFC 2373, July 1998. Lear, "Address Allocation for Private Internets", BCP 5, RFC
1918, February 1996.
[4] Hinden, R. and S. Deering, "An IPv6 Aggregatable Global Unicast
Address Format", RFC 2374, July 1998.
[5] IEEE, "http://standards.ieee.org/regauth/oui/tutorials/ [4] Egevang, K. and P. Francis, "The IP Network Address Translator
EUI64.html", March 1997. (NAT)", RFC 1631, May 1994.
[6] Thomson, S. and T. Narten, "IPv6 Stateless Address [5] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Autoconfiguration", RFC 2462, December 1998. Levels", BCP 14, RFC 2119, March 1997.
[7] Narten, T., Nordmark, E. and W. Simpson, "Neighbor Discovery [6] Narten, T., Nordmark, E. and W. Simpson, "Neighbor Discovery
for IP Version 6 (IPv6)", RFC 2461, December 1998. for IP Version 6 (IPv6)", RFC 2461, December 1998.
[8] Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G. and E. [7] Armitage, G., Schulter, P., Jork, M. and G. Harter, "IPv6 over
Lear, "Address Allocation for Private Internets", BCP 5, RFC Non-Broadcast Multiple Access (NBMA) networks", RFC 2491,
1918, February 1996. January 1999.
[9] Egevang, K. and P. Francis, "The IP Network Address Translator [8] Hinden, R. and S. Deering, "IP Version 6 Addressing
(NAT)", RFC 1631, May 1994. Architecture", draft-ietf-ipngwg-addr-arch-v3-11 (work in
progress), October 2002.
[10] Gilligan, R. and E. Nordmark, "Transition Mechanisms for IPv6 [9] Gilligan, R. and E. Nordmark, "Basic Transition Mechanisms for
Hosts and Routers", RFC 2893, August 2000. IPv6 Hosts and Routers", draft-ietf-ngtrans-mech-v2-01 (work in
progress), November 2002.
[11] Conta, A. and S. Deering, "Internet Control Message Protocol [10] Conta, A. and S. Deering, "Internet Control Message Protocol
(ICMPv6) for the Internet Protocol Version 6 (IPv6) (ICMPv6) for the Internet Protocol Version 6 (IPv6)
Specification", RFC 2463, December 1998. Specification", RFC 2463, December 1998.
[12] Postel, J., "Internet Control Message Protocol", STD 5, RFC [11] McCann, J., Deering, S. and J. Mogul, "Path MTU Discovery for
792, September 1981. IP version 6", RFC 1981, August 1996.
[13] Baker, F., "Requirements for IP Version 4 Routers", RFC 1812, [12] Thomson, S. and T. Narten, "IPv6 Stateless Address
June 1995. Autoconfiguration", RFC 2462, December 1998.
[14] McCann, J., Deering, S. and J. Mogul, "Path MTU Discovery for [13] Droms, R., "Dynamic Host Configuration Protocol for IPv6
IP version 6", RFC 1981, August 1996. (DHCPv6)", draft-ietf-dhc-dhcpv6-28 (work in progress),
November 2002.
[14] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131,
March 1997.
[15] Mogul, J. and S. Deering, "Path MTU discovery", RFC 1191, [15] Mogul, J. and S. Deering, "Path MTU discovery", RFC 1191,
November 1990. November 1990.
[16] Stewart, R., Xie, Q., Morneault, K., Sharp, C., Schwarzbauer, [16] Postel, J., "Internet Control Message Protocol", STD 5, RFC
H., Taylor, T., Rytina, I., Kalla, M., Zhang, L. and V. Paxson, 792, September 1981.
"Stream Control Transmission Protocol", RFC 2960, October 2000.
[17] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131,
March 1997.
[18] Schulzrinne, H., "Dynamic Host Configuration Protocol [17] Baker, F., "Requirements for IP Version 4 Routers", RFC 1812,
(DHCP-for-IPv4) Option for Session Initiation Protocol (SIP) June 1995.
Servers", RFC 3361, August 2002.
Informative References Informative References
[19] Carpenter, B. and K. Moore, "Connection of IPv6 Domains via [18] Carpenter, B. and K. Moore, "Connection of IPv6 Domains via
IPv4 Clouds", RFC 3056, February 2001. IPv4 Clouds", RFC 3056, February 2001.
[20] Carpenter, B. and C. Jung, "Transmission of IPv6 over IPv4 [19] Mockapetris, P., "Domain names - implementation and
Domains without Explicit Tunnels", RFC 2529, March 1999.
[21] Narten, T. and R. Draves, "Privacy Extensions for Stateless
Address Autoconfiguration in IPv6", RFC 3041, January 2001.
[22] Mockapetris, P., "Domain names - implementation and
specification", STD 13, RFC 1035, November 1987. specification", STD 13, RFC 1035, November 1987.
[23] Droms, R., "Procedures and IANA Guidelines for Definition of [20] Droms, R., "Procedures and IANA Guidelines for Definition of
New DHCP Options and Message Types", BCP 43, RFC 2939, New DHCP Options and Message Types", BCP 43, RFC 2939,
September 2000. September 2000.
[24] Nguyen, Q., "http://irl.cs.ucla.edu/vet/report.ps", spring [21] Narten, T. and R. Draves, "Privacy Extensions for Stateless
Address Autoconfiguration in IPv6", RFC 3041, January 2001.
[22] Nguyen, Q., "http://irl.cs.ucla.edu/vet/report.ps", spring
1998. 1998.
[23] Lahey, K., "TCP Problems with Path MTU Discovery", RFC 2923,
September 2000.
Authors' Addresses Authors' Addresses
Fred L. Templin Fred L. Templin
Nokia Nokia
313 Fairchild Drive 313 Fairchild Drive
Mountain View, CA 94110 Mountain View, CA 94110
US US
Phone: +1 650 625 2331 Phone: +1 650 625 2331
EMail: ftemplin@iprg.nokia.com EMail: ftemplin@iprg.nokia.com
skipping to change at page 18, line 33 skipping to change at page 17, line 15
Microsoft Corporation Microsoft Corporation
One Microsoft Way One Microsoft Way
Redmond, WA 98052-6399 Redmond, WA 98052-6399
US US
Phone: +1 425 703 8835 Phone: +1 425 703 8835
EMail: dthaler@microsoft.com EMail: dthaler@microsoft.com
Appendix A. Major Changes Appendix A. Major Changes
changes from version 08 to version 09:
o Added stateful autoconfiguration mechanism
o Normative references to RFC 2491, RFC 2462
o Moved non-normative MTU text to appendix C
changes from version 07 to version 08: changes from version 07 to version 08:
o updated MTU section o updated MTU section
changes from version 06 to version 07: changes from version 06 to version 07:
o clarified address resolution, Neighbor Unreachability Detection o clarified address resolution, Neighbor Unreachability Detection
o specified MTU/MRU requirements o specified MTU/MRU requirements
changes from version 05 to version 06: changes from earlier versions to version 06:
o Addressed operational issues identified in 05 based on discussion o Addressed operational issues identified in 05 based on discussion
between co-authors between co-authors
o Clarified ambiguous text per comments from Hannu Flinck; Jason o Clarified ambiguous text per comments from Hannu Flinck; Jason
Goldschmidt Goldschmidt
changes from version 04 to version 05:
o Moved historical text in section 4.1 to Appendix B in response to o Moved historical text in section 4.1 to Appendix B in response to
comments from Pekka Savola comments from Pekka Savola
o Identified operational issues for anticipated deployment scenarios o Identified operational issues for anticipated deployment scenarios
o Included SRI IPR statement and contact information
o Included reference to Quang Nguyen work o Included reference to Quang Nguyen work
changes from version 03 to version 04: Appendix B. Rationale for Interface Identifier Construction
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
o Changed "IPv6 destination address" to "IPv6 next-hop address"
under "sending rules"
o Changed definition of ISATAP prefix to include link and 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. Rationale for Interface Identifier Construction Rules
ISATAP specifies an EUI64-format address construction for the ISATAP specifies an EUI64-format address construction for the
Organizationally-Unique Identifier (OUI) owned by the Internet Organizationally-Unique Identifier (OUI) owned by the Internet
Assigned Numbers Authority (IANA). This format (given below) is used Assigned Numbers Authority (IANA). This format (given below) is used
to construct both native EUI64 addresses for general use and modified to construct both native EUI64 addresses for general use and modified
EUI-64 format interface identifiers for use in IPv6 unicast EUI-64 format interface identifiers for IPv6 unicast addresses:
addresses:
|0 2|2 3|3 3|4 6| |0 2|2 3|3 3|4 6|
|0 3|4 1|2 9|0 3| |0 3|4 1|2 9|0 3|
+------------------------+--------+--------+------------------------+ +------------------------+--------+--------+------------------------+
| OUI ("00-00-5E"+u+g) | TYPE | TSE | TSD | | OUI ("00-00-5E"+u+g) | TYPE | TSE | TSD |
+------------------------+--------+--------+------------------------+ +------------------------+--------+--------+------------------------+
Where the fields are: Where the fields are:
OUI IANA's OUI: 00-00-5E with 'u' and 'g' bits (3 octets) OUI IANA's OUI: 00-00-5E with 'u' and 'g' bits (3 octets)
TYPE Type field; specifies interpretation of (TSE, TSD) (1 octet) TYPE Type field; specifies use of (TSE, TSD) (1 octet)
TSE Type-Specific Extension (1 octet) TSE Type-Specific Extension (1 octet)
TSD Type-Specific Data (3 octets) TSD Type-Specific Data (3 octets)
And the following interpretations are specified based on TYPE: And the following interpretations are specified based on TYPE:
TYPE (TSE, TSD) Interpretation TYPE (TSE, TSD) Interpretation
---- ------------------------- ---- -------------------------
0x00-0xFD RESERVED for future IANA use 0x00-0xFD RESERVED for future IANA use
0xFE (TSE, TSD) together contain an embedded IPv4 address 0xFE (TSE, TSD) together contain an embedded IPv4 address
0xFF TSD is interpreted based on TSE as follows: 0xFF TSD is interpreted based on TSE as follows:
TSE TSD Interpretation TSE TSD Interpretation
--- ------------------ --- ------------------
0x00-0xFD RESERVED for future IANA use 0x00-0xFD RESERVED for future IANA use
0xFE TSD contains 24-bit EUI-48 intf id 0xFE TSD contains 24-bit EUI-48 intf id
0xFF RESERVED by IEEE/RAC 0xFF RESERVED by IEEE/RAC
Figure 3 Figure 2
Thus, if TYPE=0xFE, TSE is an extension of TSD. If TYPE=0xFF, TSE is Thus, if TYPE=0xFE, TSE is an extension of TSD. If TYPE=0xFF, TSE is
an extension of TYPE. Other values for TYPE (thus, other an extension of TYPE. Other values for TYPE (thus, other
interpretations of TSE, TSD) are reserved for future IANA use. interpretations of TSE, TSD) are reserved for future IANA use.
The above specification is compatible with all aspects of EUI64, The above specification is compatible with all aspects of EUI64,
including support for encapsulating legacy EUI-48 interface including support for encapsulating legacy EUI-48 interface
identifiers (e.g., an IANA EUI-48 format multicast address such as: 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'). '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 But, the specification also provides a special TYPE (0xFE) to
indicate an IPv4 address is embedded. Thus, when the first four indicate an IPv4 address is embedded. Thus, when the first four
octets of an IPv6 interface identifier are: '00-00-5E-FE' (note: the octets of 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 '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 "ISATAP format" and the next four octets embed an IPv4 address
encoded in network byte order. encoded in network byte order.
Appendix C. INTELLECTUAL PROPERTY Appendix C. Dynamic Per-neighbor MTU Discovery
SRI International has notified the IETF of IPR considerations for ISATAP encapsulators and decapsulators are IPv6 neighbors that may be
some aspects of this specification. For more information consult the separated by multiple link layer (IPv4) forwarding hops. When
online list of claimed rights. ISATAP_MTU is larger than 1380 bytes, the encapsulator must implement
a dynamic link layer mechanism to discover per-neighbor MTUs.
IPv4 path MTU discovery [15] relies on ICMPv4 "fragmentation needed"
messages, but these do not provide enough information for stateless
translation into ICMPv6 "packet too big" messages (see: RFC 792 [16]
and RFC 1812 [17], section 4.3.2.3). Additionally, ICMPv4
"fragmentation needed" messages can be spoofed, filtered, or not sent
at all by some forwarding nodes. Thus, IPv4 Path MTU discovery used
alone is inadequate and can result in black holes that are difficult
to diagnose [23].
The ISATAP encapsulator may implement an alternate per-neighbor MTU
discovery mechanism, e.g., periodic and/or on-demand probing of the
IPv4 path to the decapsulator. Probing consists of sending packets
larger than 1380 bytes with the DF bit set in the IPv4 header.
Neighbor Solicitation (NS) packets with padding bytes added should be
used for this purpose, since successful delivery results in a
positive acknowledgement that the probe succeeded, i.e., in the form
of a Neighbor Advertisement (NA) from the decapsulator. (NB: Setting
the DF bit prevents decapsulators from receiving probe packets that
would overrun the receive buffer on an underlying link, thus no
maximum receive unit (MRU) is required.)
Implementations may choose to couple the probing process with
neighbor cache management procedures ([6], section 7), e.g. to
maintain timers, state variables and/or a queue of packets waiting
for probes to complete. Packets retained on the queue are forwarded
when probes succeed, and provide state for sending ICMPv6 "packet too
big" messages to the source when probes fail. Implementations may
choose to store per-neighbor MTU information in the IPv4 path MTU
discovery cache, in the ISATAP link layer's private data structures,
etc.
ICMPv4 "fragmentation needed" messages may result when a link
restriction is encountered but may also come from denial of service
attacks. Implementations should treat ICMPv4 "fragmentation needed"
messages as "tentative" negative acknowledgments and apply heuristics
to determine when to suspect an actual link restriction and when to
ignore the messages. IPv6 packets lost due actual link restrictions
are perceived as lost due to congestion by the original source, but
robust implementations minimize instances of such packet loss without
ICMPv6 "packet too big" messages returned to the sender.
Intellectual Property Statement Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
intellectual property or other rights that might be claimed to intellectual property or other rights that might be claimed to
pertain to the implementation or use of the technology described in pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights this document or the extent to which any license under such rights
might or might not be available; neither does it represent that it might or might not be available; neither does it represent that it
has made any effort to identify any such rights. Information on the has made any effort to identify any such rights. Information on the
IETF's procedures with respect to rights in standards-track and IETF's procedures with respect to rights in standards-track and
skipping to change at page 23, line 27 skipping to change at page 21, line 27
obtain a general license or permission for the use of such obtain a general license or permission for the use of such
proprietary rights by implementors or users of this specification can proprietary rights by implementors or users of this specification can
be obtained from the IETF Secretariat. be obtained from the IETF Secretariat.
The IETF invites any interested party to bring to its attention any The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary copyrights, patents or patent applications, or other proprietary
rights which may cover technology that may be required to practice rights which may cover technology that may be required to practice
this standard. Please address the information to the IETF Executive this standard. Please address the information to the IETF Executive
Director. Director.
The IETF has been notified of intellectual property rights claimed in
regard to some or all of the specification contained in this
document. For more information consult the online list of claimed
rights.
Full Copyright Statement Full Copyright Statement
Copyright (C) The Internet Society (2002). All Rights Reserved. Copyright (C) The Internet Society (2002). All Rights Reserved.
This document and translations of it may be copied and furnished to This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this included on all such copies and derivative works. However, this
 End of changes. 

This html diff was produced by rfcdiff 1.25, available from http://www.levkowetz.com/ietf/tools/rfcdiff/