draft-ietf-v6ops-unmaneval-03.txt   rfc3904.txt 
INTERNET DRAFT C. Huitema Network Working Group C. Huitema
<draft-ietf-v6ops-unmaneval-03.txt> Microsoft Request for Comments: 3904 Microsoft
June 1, 2004 R. Austein Category: Informational R. Austein
Expires December 1, 2004 ISC ISC
S. Satapati S. Satapati
Cisco Systems, Inc. Cisco Systems, Inc.
R. van der Pol R. van der Pol
NLnet Labs NLnet Labs
September 2004
Evaluation of IPv6 Transition Mechanisms for Unmanaged Networks Evaluation of IPv6 Transition Mechanisms for Unmanaged Networks
Status of this memo Status of this Memo
By submitting this Internet-Draft, I certify that any applicable
patent or other IPR claims of which I am aware have been disclosed,
and any of which I become aware will be disclosed, in accordance
with RFC 3668.
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 are draft documents valid for a maximum of six This memo provides information for the Internet community. It does
months and may be updated, replaced, or obsoleted by other documents not specify an Internet standard of any kind. Distribution of this
at any time. It is inappropriate to use Internet-Drafts as memo is unlimited.
reference material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at Copyright Notice
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at Copyright (C) The Internet Society (2004).
http://www.ietf.org/shadow.html.
Abstract Abstract
In a companion paper we defined the "unmanaged networks", which This document analyzes issues involved in the transition of
typically correspond to home networks or small office networks, and "unmanaged networks" from IPv4 to IPv6. Unmanaged networks typically
the requirements for transition mechanisms in various scenarios of correspond to home networks or small office networks. A companion
transition to IPv6. We start from this analysis and evaluate here paper analyzes out the requirements for mechanisms needed in various
the suitability of mechanisms that have already been specified, transition scenarios of these networks to IPv6. Starting from this
proposed or deployed. analysis, we evaluate the suitability of mechanisms that have already
been specified, proposed, or deployed.
Huitema et al. [Page 1]
Table of Contents: Table of Contents:
1 Introduction .................................................... 3 1. Introduction ................................................. 2
2 Evaluation of Tunneling Solutions ............................... 3 2. Evaluation of Tunneling Solutions ............................ 3
2.1 Comparing automatic and configured solutions .................. 4 2.1. Comparing Automatic and Configured Solutions ........... 3
2.1.1 Path optimization in automatic tunnels ...................... 4 2.1.1. Path Optimization in Automatic Tunnels ......... 4
2.1.2 Automatic tunnels and relays ................................ 5 2.1.2. Automatic Tunnels and Relays ................... 4
2.1.3 The risk of several parallel IPv6 Internets ................. 5 2.1.3. The Risk of Several Parallel IPv6 Internets .... 5
2.1.4 Lifespan of transition technologies ......................... 6 2.1.4. Lifespan of Transition Technologies ............ 6
2.2 Cost and benefits of NAT traversal ............................ 6 2.2. Cost and Benefits of NAT Traversal ..................... 6
2.2.1 Cost of NAT traversal ....................................... 7 2.2.1. Cost of NAT Traversal .......................... 7
2.2.2 Types of NAT ................................................ 7 2.2.2. Types of NAT ................................... 7
2.2.3 Reuse of existing mechanisms ................................ 8 2.2.3. Reuse of Existing Mechanisms ................... 8
2.3 Development of transition mechanisms .......................... 8 2.3. Development of Transition Mechanisms ................... 8
3 Meeting case A requirements ..................................... 9 3. Meeting Case A Requirements .................................. 9
3.1 Evaluation of connectivity mechanisms ......................... 9 3.1. Evaluation of Connectivity Mechanisms .................. 9
3.2 Security considerations in case A ............................. 9 3.2. Security Considerations in Case A ...................... 9
4 Meeting case B requirements ..................................... 10 4. Meeting case B Requirements .................................. 10
4.1 Connectivity .................................................. 10 4.1. Connectivity ........................................... 10
4.1.1 Extending a Subnet to Span Multiple Links ................... 10 4.1.1. Extending a Subnet to Span Multiple Links ...... 10
4.1.2 Explicit prefix delegation .................................. 10 4.1.2. Explicit Prefix Delegation ..................... 11
4.1.3 Recommendation .............................................. 11 4.1.3. Recommendation ................................. 11
4.2 Communication between IPv4-only and IPv6-capable nodes ........ 11 4.2. Communication Between IPv4-only and IPv6-Capable Nodes . 11
4.3 Resolution of names to IPv6 addresses ......................... 11 4.3. Resolution of Names to IPv6 Addresses .................. 12
4.3.1 Provisioning the address of a DNS resolver .................. 11 4.3.1. Provisioning the Address of a DNS Resolver ..... 12
4.3.2 Publishing IPv6 addresses to the Internet ................... 12 4.3.2. Publishing IPv6 Addresses to the Internet ...... 12
4.3.3 Resolving the IPv6 addresses of local hosts ................. 12 4.3.3. Resolving the IPv6 Addresses of Local Hosts .... 13
4.3.4 Recommendations for name resolution ......................... 13 4.3.4. Recommendations for Name Resolution ............ 13
4.4 Security considerations in case B ............................. 13 4.4. Security Considerations in Case B ...................... 14
5 Meeting case C requirements ..................................... 13 5. Meeting Case C Requirements .................................. 14
5.1 Connectivity .................................................. 13 5.1. Connectivity ........................................... 14
6 Meeting the case D requirements ................................. 14 6. Meeting the Case D Requirements .............................. 14
6.1 IPv6 addressing requirements .................................. 14 6.1. IPv6 Addressing Requirements ........................... 15
6.2 IPv4 connectivity requirements ............................... 14 6.2. IPv4 Connectivity Requirements ........................ 15
6.3 Naming requirements ........................................... 14 6.3. Naming Requirements .................................... 15
7 Recommendations ................................................. 14 7. Recommendations .............................................. 15
8 Security considerations ......................................... 15 8. Security Considerations ...................................... 16
9 IANA Considerations ............................................. 15 9. Acknowledgements ............................................. 16
10 Acknowledgements ............................................... 16 10. References ................................................... 16
11 References ..................................................... 16 11. Authors' Addresses ........................................... 18
12 Authors' Addresses ............................................. 17 12. Full Copyright Statement ..................................... 19
13 Intellectual Property Statement ................................ 17
14 Copyright ...................................................... 18
Huitema et al. [Page 2]
1 Introduction 1. Introduction
This document analyses the issues involved in the transition from This document analyzes the issues involved in the transition from
IPv4 to IPv6 [IPV6]. In a companion paper [UNMANREQ] we defined the IPv4 to IPv6 [IPV6]. In a companion paper [UNMANREQ] we defined the
"unmanaged networks", which typically correspond to home networks or "unmanaged networks", which typically correspond to home networks or
small office networks, and the requirements for transition small office networks, and the requirements for transition mechanisms
mechanisms in various scenarios of transition to IPv6. in various scenarios of transition to IPv6.
The requirements for unmanaged networks are expressed by analyzing The requirements for unmanaged networks are expressed by analyzing
four classes of applications: local, client, peer to peer, and four classes of applications: local, client, peer to peer, and
servers, and considering four cases of deployment. These are: servers, and are considering four cases of deployment. These are:
A) a gateway which does not provide IPv6 at all; A) a gateway which does not provide IPv6 at all;
B) a dual-stack gateway connected to a dual-stack ISP; B) a dual-stack gateway connected to a dual-stack ISP;
C) a dual-stack gateway connected to an IPv4-only ISP; and C) a dual-stack gateway connected to an IPv4-only ISP; and
D) a gateway connected to an IPv6-only ISP. D) a gateway connected to an IPv6-only ISP.
During the transition phase from IPv4 to IPv6 there will be IPv4- During the transition phase from IPv4 to IPv6 there will be IPv4-
only, dual-stack or IPv6-only nodes. In this document, we make the only, dual-stack, or IPv6-only nodes. In this document, we make the
hypothesis that the IPv6-only nodes do not need to communicate with hypothesis that the IPv6-only nodes do not need to communicate with
IPv4-only nodes; devices that want to communicate with both IPv4 and IPv4-only nodes; devices that want to communicate with both IPv4 and
IPv6 nodes are expected to implement both IPv4 and IPv6, i.e., be IPv6 nodes are expected to implement both IPv4 and IPv6, i.e., be
dual-stack. dual-stack.
The issues involved are described in the next sections. This The issues involved are described in the next sections. This
analysis outlines two types of requirements: connectivity analysis outlines two types of requirements: connectivity
requirements, i.e., how to ensure that nodes can exchange IP requirements, i.e., how to ensure that nodes can exchange IP packets,
packets, and naming requirements, i.e., how to ensure that nodes can and naming requirements, i.e., how to ensure that nodes can resolve
resolve each-other's names. The connectivity requirements often each-other's names. The connectivity requirements often require
require tunneling solutions. We devote the first section of this tunneling solutions. We devote the first section of this memo to an
memo to an evaluation of various tunneling solutions. evaluation of various tunneling solutions.
2 Evaluation of Tunneling Solutions 2. Evaluation of Tunneling Solutions
In the case A and case C scenarios described in [UNMANREQ], the In the case A and case C scenarios described in [UNMANREQ], the
unmanaged network cannot obtain IPv6 service, at least natively, unmanaged network cannot obtain IPv6 service, at least natively, from
from its ISP. In these cases, the IPv6 service will have to be its ISP. In these cases, the IPv6 service will have to be provided
provided through some form of tunnel. There have been multiple through some form of tunnel. There have been multiple proposals on
proposals on different ways to tunnel IPv6 through an IPv4 service. different ways to tunnel IPv6 through an IPv4 service. We believe
We believe that these proposals can be categorized according to two that these proposals can be categorized according to two important
important properties: properties:
* Is the deployment automatic, or does it require explicit * Is the deployment automatic, or does it require explicit
configuration or service provisioning? configuration or service provisioning?
* Does the proposal allow for the traversal of a NAT [NAT-T]? * Does the proposal allow for the traversal of a NAT?
These two questions divide the solution space into four broad These two questions divide the solution space into four broad
classes. Each of these classes has specific advantages and risks, classes. Each of these classes has specific advantages and risks,
which we will now develop. which we will now develop.
Huitema et al. [Page 3] 2.1. Comparing Automatic and Configured Solutions
2.1 Comparing automatic and configured solutions
It is possible to broadly classify tunneling solutions as either It is possible to broadly classify tunneling solutions as either
"automatic" or "configured". In an automatic solution, a host or a "automatic" or "configured". In an automatic solution, a host or a
router builds an IPv6 address or an IPv6 prefix by combining a pre- router builds an IPv6 address or an IPv6 prefix by combining a pre-
defined prefix with some local attribute, such as local IPv4 address defined prefix with some local attribute, such as a local IPv4
[6TO4] or the combination of an address and a port number [Teredo]. address [6TO4] or the combination of an address and a port number
Another typical and very important characteristic of an automatic [TEREDO]. Another typical and very important characteristic of an
solution is they aim to work with a minimal amount of support or automatic solution is they aim to work with a minimal amount of
infrastructure for IPv6 in the local or remote ISPs. support or infrastructure for IPv6 in the local or remote ISPs.
In a configured solution, a host or a router identifies itself to a In a configured solution, a host or a router identifies itself to a
tunneling service to set up a "configured tunnel" with an explicitly tunneling service to set up a "configured tunnel" with an explicitly
defined "tunnel router". The amount of actual configuration may vary defined "tunnel router". The amount of actual configuration may vary
from manually configured static tunnels to dynamic tunnel services from manually configured static tunnels to dynamic tunnel services
requiring only the configuration of a "tunnel broker", or even a requiring only the configuration of a "tunnel broker", or even a
completely automatic discovery of the tunnel router. completely automatic discovery of the tunnel router.
Configured tunnels have many advantages over automatic tunnels. The Configured tunnels have many advantages over automatic tunnels. The
client is explicitly identified and can obtain a stable IPv6 client is explicitly identified and can obtain a stable IPv6 address.
address. The service provider is also well identified and can be The service provider is also well identified and can be held
held responsible for the quality of the service. It is possible to responsible for the quality of the service. It is possible to route
route multicast packets over the established tunnel. There is a multicast packets over the established tunnel. There is a clear
clear address delegation path, which enables easy support for address delegation path, which enables easy support for reverse DNS
reverse DNS lookups. lookups.
Automatic tunnels generally cannot provide the same level of Automatic tunnels generally cannot provide the same level of service.
service. The IPv6 address is only as stable as the underlying IPv4 The IPv6 address is only as stable as the underlying IPv4 address,
address, the quality of service depends on relays operated by third the quality of service depends on relays operated by third parties,
parties, there is typically no support for multicast, and there is there is typically no support for multicast, and there is often no
often no easy way to support reverse DNS lookups (although some easy way to support reverse DNS lookups (although some workarounds
workarounds are probably possible). However, automatic tunnels have are probably possible). However, automatic tunnels have other
other advantages. They are obviously easier to configure, since advantages. They are obviously easier to configure, since there is
there is no need of an explicit relation with a tunnel service. They no need for an explicit relation with a tunnel service. They may
may also be in some case more efficient, as they allow for "path also be more efficient in some cases, as they allow for "path
optimization". optimization".
2.1.1 Path optimization in automatic tunnels 2.1.1. Path Optimization in Automatic Tunnels
In automatic tunnels like [Teredo] and [6to4], the bulk of the In automatic tunnels like [TEREDO] and [6TO4], the bulk of the
traffic between two nodes using the same technology is exchanged on traffic between two nodes using the same technology is exchanged on a
a direct path between the endpoints, using the IPv4 services to direct path between the endpoints, using the IPv4 services to which
which the endpoints already subscribe. By contrast, the configured the endpoints already subscribe. By contrast, the configured tunnel
tunnel servers carry all the traffic exchanged by the tunnel client. servers carry all the traffic exchanged by the tunnel client.
Path optimization is not a big issue if the tunnel server is close Path optimization is not a big issue if the tunnel server is close to
to the client, on the natural path between the client and its peers. the client on the natural path between the client and its peers.
However, if the tunnel server is operated by a third party, this However, if the tunnel server is operated by a third party, this
third party will have to bear the cost of provisioning the bandwidth third party will have to bear the cost of provisioning the bandwidth
used by the client. The associated costs can be significant. used by the client. The associated costs can be significant.
These costs are largely absent when the tunnels are configured by These costs are largely absent when the tunnels are configured by the
same ISP that provides the IPv4 service. The ISP can place the
Huitema et al. [Page 4]
the same ISP that provides the IPv4 service. The ISP can place the
tunnel end-points close to the client, i.e., mostly on the direct tunnel end-points close to the client, i.e., mostly on the direct
path between the client and its peers. path between the client and its peers.
2.1.2 Automatic tunnels and relays 2.1.2. Automatic Tunnels and Relays
The economics arguments related to path optimization favor either The economics arguments related to path optimization favor either
configured tunnels provided by the local ISP or automatic tunneling configured tunnels provided by the local ISP or automatic tunneling
regardless of the co-operation of ISPs. However, automatic solutions regardless of the co-operation of ISPs. However, automatic solutions
require that relays be configured throughout the Internet. If a host require that relays be configured throughout the Internet. If a host
that obtained connectivity through an automatic tunnel service wants that obtained connectivity through an automatic tunnel service wants
to communicate with a "native" host or with a host using a to communicate with a "native" host or with a host using a configured
configured tunnel, it will need to use a relay service, and someone tunnel, it will need to use a relay service, and someone will have to
will have to provide and pay for that service. We cannot escape provide and pay for that service. We cannot escape economic
economic considerations for the deployment of these relays. considerations for the deployment of these relays.
It is desirable to locate these relays close to the "native host". It is desirable to locate these relays close to the "native host".
During the transition period, the native ISPS have an interest in During the transition period, the native ISPs have an interest in
providing a relay service for use by their native subscribers. Their providing a relay service for use by their native subscribers. Their
subscribers will enjoy better connectivity, i.e., will be happier. subscribers will enjoy better connectivity, and will therefore be
Providing the service does not result in much extra bandwidth happier. Providing the service does not result in much extra
requirement: the packets are exchanged between the local subscribers bandwidth requirement: the packets are exchanged between the local
and the Internet; they are simply using a v6-v4 path instead of a subscribers and the Internet; they are simply using a v6-v4 path
v6-v6 path. (The native ISPS do not have an incentive to provide instead of a v6-v6 path. (The native ISPs do not have an incentive
relays for general use; they are expected to restrict access to to provide relays for general use; they are expected to restrict
these relays to their customers.) access to these relays to their customers.)
We should note however that different automatic tunneling techniques We should note however that different automatic tunneling techniques
have different deployment conditions. have different deployment conditions.
2.1.3 The risk of several parallel IPv6 Internets 2.1.3. The Risk of Several Parallel IPv6 Internets
In an early deployment of the Teredo service by Microsoft, the In an early deployment of the Teredo service by Microsoft, the relays
relays are provided by the native (or 6to4) hosts themselves. The are provided by the native (or 6to4) hosts themselves. The native or
native or 6to4 hosts are de-facto "multi-homed" to native and 6to4 hosts are de-facto "multi-homed" to native and Teredo hosts,
Teredo, although they never publish a Teredo address in the DNS or although they never publish a Teredo address in the DNS or otherwise.
otherwise. When a native host communicates with a Teredo host, the When a native host communicates with a Teredo host, the first packets
first packets are exchanged through the native interface and relayed are exchanged through the native interface and relayed by the Teredo
by the Teredo server, while the subsequent packets are tunneled server, while the subsequent packets are tunneled "end-to-end" over
"end-to-end" over IPv4 and UDP. This enables deployment of Teredo IPv4 and UDP. This enables deployment of Teredo without having to
without having to field an infrastructure of relays in the network. field an infrastructure of relays in the network.
This type of solution carries the implicit risk of developing two This type of solution carries the implicit risk of developing two
parallel IPv6 Internets, one native and one using Teredo: in order parallel IPv6 Internets, one native and one using Teredo: in order to
to communicate with a Teredo-only host, a native IPv6 host has to communicate with a Teredo-only host, a native IPv6 host has to
implement a Teredo interface. The Teredo implementations try to implement a Teredo interface. The Teredo implementations try to
mitigate this risk by always preferring native paths when available, mitigate this risk by always preferring native paths when available,
but a true mitigation requires that native hosts do not have to but a true mitigation requires that native hosts do not have to
implement the transition technology. This requires cooperation from implement the transition technology. This requires cooperation from
the IPv6 ISP, who will have to support the relays. An IPv6 ISP that the IPv6 ISP, who will have to support the relays. An IPv6 ISP that
really wants to isolate its customers from the Teredo technology can really wants to isolate its customers from the Teredo technology can
do that by providing native connectivity and a Teredo relay. The do that by providing native connectivity and a Teredo relay. The
Huitema et al. [Page 5]
ISP's customers will not need to implement their own relay. ISP's customers will not need to implement their own relay.
Communication between 6to4 networks and native networks uses a Communication between 6to4 networks and native networks uses a
different structure. There are two relays, one for each direction of different structure. There are two relays, one for each direction of
communication. The native host sends its packets through the nearest communication. The native host sends its packets through the nearest
6to4 router, i.e., the closest router advertising the 2002::/16 6to4 router, i.e., the closest router advertising the 2002::/16
prefix through the IPv6 routing tables; the 6to4 network sends its prefix through the IPv6 routing tables; the 6to4 network sends its
packet through a 6to4 relay that is either explicitly configured or packet through a 6to4 relay that is either explicitly configured or
discovered through the 6to4 anycast address 192.88.99.1 discovered through the 6to4 anycast address 192.88.99.1
[6To4ANYCAST]. The experience so far is that simple 6to4 routers are [6TO4ANYCAST]. The experience so far is that simple 6to4 routers are
easy to deploy, but 6to4 relays are scarce. If there are too few easy to deploy, but 6to4 relays are scarce. If there are too few
relays, these relays will create a bottleneck. The communications relays, these relays will create a bottleneck. The communications
between 6to4 and native networks will be slower than the direct between 6to4 and native networks will be slower than the direct
communications between 6to4 hosts. This will create an incentive for communications between 6to4 hosts. This will create an incentive for
native hosts to somehow "multi-home" to 6to4, de facto creating two native hosts to somehow "multi-home" to 6to4, de facto creating two
parallel Internets, 6to4 and native. This risk will only be parallel Internets, 6to4 and native. This risk will only be
mitigated if there is a sufficient deployment of 6to4 relays. mitigated if there is a sufficient deployment of 6to4 relays.
The configured tunnels solutions do not carry this type of risk. The configured tunnel solutions do not carry this type of risk.
2.1.4 Lifespan of transition technologies 2.1.4. Lifespan of Transition Technologies
A related issue is the lifespan of the transition solutions. Since A related issue is the lifespan of the transition solutions. Since
automatic tunneling technologies enable an automatic deployment, automatic tunneling technologies enable an automatic deployment,
there is a risk that some hosts never migrate out of the transition. there is a risk that some hosts never migrate out of the transition.
The risk is arguably less for explicit tunnels: the ISPS who provide The risk is arguably less for explicit tunnels: the ISPs who provide
the tunnels have an incentive to replace them with a native solution the tunnels have an incentive to replace them with a native solution
as soon as possible. as soon as possible.
Many implementations of automatic transition technologies Many implementations of automatic transition technologies incorporate
incorporate an "implicit sunset" mechanism: the hosts will not an "implicit sunset" mechanism: the hosts will not configure a
configure a transition technology address if they have native transition technology address if they have native connectivity; the
connectivity; the address selection mechanisms will prefer native address selection mechanisms will prefer native addresses when
addresses when available. The transition technologies will stop available. The transition technologies will stop being used
being used eventually, when native connectivity has been deployed eventually, when native connectivity has been deployed everywhere.
everywhere. However, the "implicit sunset" mechanism does not However, the "implicit sunset" mechanism does not provide any hard
provide any hard guarantee that transition will be complete at a guarantee that transition will be complete at a certain date.
certain date.
Yet, the support of transition technologies has a cost for the Yet, the support of transition technologies has a cost for the entire
entire network: native IPv6 ISPS have to support relays in order to network: native IPv6 ISPS have to support relays in order to provide
provide good performance and avoid the "parallel Internet" syndrome. good performance and avoid the "parallel Internet" syndrome. These
These costs may be acceptable during an initial deployment phase, costs may be acceptable during an initial deployment phase, but they
but they can certainly not be supported for an indefinite period. can certainly not be supported for an indefinite period. The
The "implicit sunset" mechanisms may not be sufficient to guarantee "implicit sunset" mechanisms may not be sufficient to guarantee a
a finite lifespan of the transition. finite lifespan of the transition.
2.2 Cost and benefits of NAT traversal 2.2. Cost and Benefits of NAT Traversal
During the transition, some hosts will be located behind IPv4 NATs. During the transition, some hosts will be located behind IPv4 NATs.
In order to participate in the transition, these hosts will have to In order to participate in the transition, these hosts will have to
use a tunneling mechanism designed to traverse NAT. use a tunneling mechanism designed to traverse NAT.
Huitema et al. [Page 6]
We may ask whether NAT traversal should be a generic property of any We may ask whether NAT traversal should be a generic property of any
transition technology, or whether it makes sense to develop two transition technology, or whether it makes sense to develop two types
types of technologies, some "NAT capable" and some not. An of technologies, some "NAT capable" and some not. An important
important question is also which kinds of NAT boxes one should be question is also which kinds of NAT boxes one should be able to
able to traverse. One should probably also consider whether it is traverse. One should probably also consider whether it is necessary
necessary to build an IPv6 specific NAT traversal mechanism, or to build an IPv6 specific NAT traversal mechanism, or whether it is
whether it is possible to combine an existing IPv4 NAT traversal possible to combine an existing IPv4 NAT traversal mechanism with
mechanism with some form of IPv6 in IPv4 tunneling. There are many some form of IPv6 in IPv4 tunneling. There are many IPv4 NAT
IPv4 NAT traversal mechanisms; thus one may ask whether these need traversal mechanisms; thus one may ask whether these need re-
re-invention, especially when they are already complex. invention, especially when they are already complex.
A related question is whether the NAT traversal technology should A related question is whether the NAT traversal technology should use
use automatic tunnels or configured tunnels. We saw in the previous automatic tunnels or configured tunnels. We saw in the previous
section that one can argue both sides of this issue. In fact, there section that one can argue both sides of this issue. In fact, there
are already deployed automatic and configured solutions, so the are already deployed automatic and configured solutions, so the
reality is that we will probably see both. reality is that we will probably see both.
2.2.1 Cost of NAT traversal 2.2.1. Cost of NAT Traversal
NAT traversal technologies generally involve encapsulating IPv6 NAT traversal technologies generally involve encapsulating IPv6
packets inside a transport protocol that is known to traverse NAT, packets inside a transport protocol that is known to traverse NAT,
such as UDP or TCP. These transport technologies require such as UDP or TCP. These transport technologies require
significantly more overhead than the simple tunneling over IPv4 used significantly more overhead than the simple tunneling over IPv4 used
in 6to4 or in IPv6 in IPv4 tunnels. For example, solutions based on in 6to4 or in IPv6 in IPv4 tunnels. For example, solutions based on
UDP require the frequent transmission of "keep alive" packets to UDP require the frequent transmission of "keep alive" packets to
maintain a "mapping" in the NAT; solutions based on TCP may not maintain a "mapping" in the NAT; solutions based on TCP may not
require such mechanism, but they incur the risk of "head of queue require such a mechanism, but they incur the risk of "head of queue
blocking", which may translate in poor performance. Given the blocking", which may translate in poor performance. Given the
difference in performance, it makes sense to consider two types of difference in performance, it makes sense to consider two types of
transition technologies, some capable of traversing NAT and some transition technologies, some capable of traversing NAT and some
aiming at the best performance. aiming at the best performance.
2.2.2 Types of NAT 2.2.2. Types of NAT
There are many kinds of NAT on the market. Different models There are many kinds of NAT on the market. Different models
implement different strategies for address and port allocations, and implement different strategies for address and port allocations, and
also different types of timers. It is desirable to find solutions different types of timers. It is desirable to find solutions that
that cover "almost all" models of NAT. cover "almost all" models of NAT.
A configured tunnel solution will generally make fewer hypotheses on A configured tunnel solution will generally make fewer hypotheses on
the behavior of the NAT than an automatic solution. The configured the behavior of the NAT than an automatic solution. The configured
solutions only need to establish a connection between an internal solutions only need to establish a connection between an internal
node and a server; this communication pattern is supported by pretty node and a server; this communication pattern is supported by pretty
much all NAT configurations. The variability will come from the type much all NAT configurations. The variability will come from the type
of transport protocols that the NAT support, especially when the NAT of transport protocols that the NAT supports, especially when the NAT
also implements "firewall" functions. Some models will allow also implements "firewall" functions. Some models will allow
establishment of a single "protocol 41" tunnel, while some may establishment of a single "protocol 41" tunnel, while some may
prevent this type of transmission. Some models will allow UDP prevent this type of transmission. Some models will allow UDP
transmission, while other may only allow TCP, or possibly HTTP. transmission, while other may only allow TCP, or possibly HTTP.
The automatic solutions have to rely on a "lowest common The automatic solutions have to rely on a "lowest common denominator"
that is likely to be accepted by most models of NAT. In practice,
Huitema et al. [Page 7] this common denominator is UDP. UDP based NAT traversal is required
denominator" that is likely to be accepted by most models of NAT. In by many applications, e.g., networked games or voice over IP. The
practice, this common denominator is UDP. UDP based NAT traversal is experience shows that most recent "home routers" are designed to
required by many applications, e.g., networked games or voice over support these applications. In some edge cases, the automatic
IP. The experience shows that most recent "home routers" are solutions will require explicit configuration of a port in the home
designed to support these applications. In some edge cases, the router, using the so-called "DMZ" functions; however, these functions
automatic solutions will require explicit configuration of a port in are hard to use in an "unmanaged network" scenario.
the home router, using the so-called "DMZ" functions; however, these
functions are hard to use in an "unmanaged network" scenario.
2.2.3 Reuse of existing mechanisms 2.2.3. Reuse of Existing Mechanisms
NAT traversal is not a problem for IPv6 alone. Many IPv4 NAT traversal is not a problem for IPv6 alone. Many IPv4
applications have developed solutions, or kludges, to enable applications have developed solutions, or kludges, to enable
communication across a NAT. communication across a NAT.
Virtual Private Networks are established by installing tunnels Virtual Private Networks are established by installing tunnels
between VPN clients and VPN servers. These tunnels are designed between VPN clients and VPN servers. These tunnels are designed
today to carry IPv4, but in many cases could easily carry IPv6. For today to carry IPv4, but in many cases could easily carry IPv6. For
example, the proposed IETF standard, L2TP, includes a PPP layer that example, the proposed IETF standard, L2TP, includes a PPP layer that
can encapsulate IPv6 as well as IPv4. Several NAT models are can encapsulate IPv6 as well as IPv4. Several NAT models are
skipping to change at page 10, line ? skipping to change at page 8, line 42
associations through NAT, by letting nodes behind NAT discover their associations through NAT, by letting nodes behind NAT discover their
"external" address. The same function is required for automatic "external" address. The same function is required for automatic
tunneling through NAT, and one could consider reusing the STUN tunneling through NAT, and one could consider reusing the STUN
specification as part of an automatic tunneling solution. However, specification as part of an automatic tunneling solution. However,
the automatic solutions also require a mechanism of bubbles to the automatic solutions also require a mechanism of bubbles to
establish the initial path through a NAT. This mechanism is not establish the initial path through a NAT. This mechanism is not
present in STUN. It is not clear that a combination of STUN and a present in STUN. It is not clear that a combination of STUN and a
bubble mechanism would have a technical advantage over a solution bubble mechanism would have a technical advantage over a solution
specifically designed for automatic tunneling through NAT. specifically designed for automatic tunneling through NAT.
2.3 Development of transition mechanisms 2.3. Development of Transition Mechanisms
The previous sections make the case for the development of four The previous sections make the case for the development of four
transition mechanism, covering the following 4 configuration: transition mechanism, covering the following 4 configurations:
- Configured tunnel over IPv4 in the absence of NAT; - Configured tunnel over IPv4 in the absence of NAT;
- Automatic tunnel over IPv4 in the absence of NAT; - Automatic tunnel over IPv4 in the absence of NAT;
- Configured tunnel across a NAT; - Configured tunnel across a NAT;
- Automatic tunnel across a NAT. - Automatic tunnel across a NAT.
Teredo is an example of already designed solution for automatic Teredo is an example of an already designed solution for automatic
tunnel across a NAT; 6to4 is an example of solution for automatic tunnels across a NAT; 6to4 is an example of a solution for automatic
tunnel over IPv4 in the absence of NAT. tunnels over IPv4 in the absence of NAT.
All solutions should be designed to meet generic requirements such
as security, scalability, support for reverse name lookup, or simple
Huitema et al. [Page 8] All solutions should be designed to meet generic requirements such as
security, scalability, support for reverse name lookup, or simple
management. In particular, automatic tunneling solutions may need to management. In particular, automatic tunneling solutions may need to
be augmented with a special purpose reverse DNS lookup mechanism, be augmented with a special purpose reverse DNS lookup mechanism,
while configured tunnel solutions would benefit from an automatic while configured tunnel solutions would benefit from an automatic
service configuration mechanism. service configuration mechanism.
3 Meeting case A requirements 3. Meeting Case A Requirements
In case A, isolated hosts need to acquire some form of connectivity. In case A, isolated hosts need to acquire some form of connectivity.
In this section, we first evaluate how mechanisms already defined or In this section, we first evaluate how mechanisms already defined or
being worked on in the IETF meet this requirement. We then consider being worked on in the IETF meet this requirement. We then consider
the "remaining holes" and recommend specific developments. the "remaining holes" and recommend specific developments.
3.1 Evaluation of connectivity mechanisms 3.1. Evaluation of Connectivity Mechanisms
In case A, IPv6 capable hosts seek IPv6 connectivity in order to In case A, IPv6 capable hosts seek IPv6 connectivity in order to
communicate with applications in the global IPv6 Internet. The communicate with applications in the global IPv6 Internet. The
connectivity requirement can be met using either configured tunnels connectivity requirement can be met using either configured tunnels
or automatic tunnels. or automatic tunnels.
If the host is located behind a NAT, the tunneling technology should If the host is located behind a NAT, the tunneling technology should
be designed to traverse NAT; tunneling technologies that do not be designed to traverse NAT; tunneling technologies that do not
support NAT traversal can obviously be used if the host is not support NAT traversal can obviously be used if the host is not
located behind a NAT. located behind a NAT.
When the local ISP is willing to provide a configured tunnel When the local ISP is willing to provide a configured tunnel
solution, we should make it easy for the host in case A to use it. solution, we should make it easy for the host in case A to use it.
The requirements for such a service will be presented in another The requirements for such a service will be presented in another
document. document.
An automatic solution like Teredo appears to be a good fit for An automatic solution like Teredo appears to be a good fit for
providing IPv6 connectivity to hosts behind NAT, in case A of IPv6 providing IPv6 connectivity to hosts behind NAT, in case A of IPv6
deployment. The service is designed for minimizing the cost of deployment. The service is designed for minimizing the cost of
deploying the server, which matches the requirement of minimizing deploying the server, which matches the requirement of minimizing the
the cost of the "supporting infrastructure". cost of the "supporting infrastructure".
3.2 Security considerations in case A 3.2. Security Considerations in Case A
A characteristic of case A is that an isolated host acquires global A characteristic of case A is that an isolated host acquires global
IPv6 connectivity, using either Teredo or an alternative tunneling IPv6 connectivity, using either Teredo or an alternative tunneling
mechanism. If no precaution is taken, there is a risk of exposing to mechanism. If no precaution is taken, there is a risk of exposing to
the global Internet some applications and services that only the global Internet some applications and services that are only
expected to serve local hosts, e.g., those located behind the NAT expected to serve local hosts, e.g., those located behind the NAT
when a NAT is present. Developers and administrators should make when a NAT is present. Developers and administrators should make
sure that the global IPv6 connectivity is restricted to only those sure that the global IPv6 connectivity is restricted to only those
applications that are expressly designed for global Internet applications that are expressly designed for global Internet
connectivity. The users should be able to configure which connectivity. The users should be able to configure which
applications can get IPv6 connectivity to the Internet and which applications get IPv6 connectivity to the Internet and which should
should not. not.
Any solution to the NAT traversal problem is likely to involve Any solution to the NAT traversal problem is likely to involve
relays. There are concerns that improperly designed protocols or relays. There are concerns that improperly designed protocols or
improperly managed relays could open new avenues for attacks against improperly managed relays could open new avenues for attacks against
Huitema et al. [Page 9]
Internet services. This issue should be addressed and mitigated in Internet services. This issue should be addressed and mitigated in
the design of the NAT traversal protocols and in the deployment the design of the NAT traversal protocols and in the deployment
guides for relays. guides for relays.
4 Meeting case B requirements 4. Meeting Case B Requirements
In case B, we assume that the gateway and the ISP are both dual- In case B, we assume that the gateway and the ISP are both dual-
stack. The hosts on the local network may be IPv4-only, dual-stack, stack. The hosts on the local network may be IPv4-only, dual-stack,
or IPv6-only. The main requirements are: prefix delegation, and name or IPv6-only. The main requirements are: prefix delegation and name
resolution. We also study the potential need for communication resolution. We also study the potential need for communication
between IPv4 and IPv6 hosts, and conclude that a dual-stack approach between IPv4 and IPv6 hosts, and conclude that a dual-stack approach
is preferable. is preferable.
4.1 Connectivity 4.1. Connectivity
The gateway must be able to acquire an IPv6 prefix, delegated by the The gateway must be able to acquire an IPv6 prefix, delegated by the
ISP. This can be done through explicit prefix delegation (e.g., ISP. This can be done through explicit prefix delegation (e.g.,
DHCPv6), or if the ISP is advertising a /64 prefix on the link, such [DHCPV6, PREFIXDHCPV6]), or if the ISP is advertising a /64 prefix on
a link can be extended by the use of ND proxy or a bridge. the link, such a link can be extended by the use of an ND proxy or a
bridge.
An ND proxy can also be used to extend a /64 prefix to multiple An ND proxy can also be used to extend a /64 prefix to multiple
physical links of different properties (e.g, an Ethernet and a PPP physical links of different properties (e.g., an Ethernet and a PPP
link). link).
4.1.1 Extending a Subnet to Span Multiple Links 4.1.1. Extending a Subnet to Span Multiple Links
A /64 subnet can be extended to span multiple physical links using a A /64 subnet can be extended to span multiple physical links using a
bridge or ND proxy. Bridges can be used when bridging multiple bridge or ND proxy. Bridges can be used when bridging multiple
similar media (mainly, Ethernet segments). On the other hand, ND similar media (mainly, Ethernet segments). On the other hand, an ND
proxy must be used if a /64 prefix has to be shared across media proxy must be used if a /64 prefix has to be shared across media
(e.g., an upstream PPP link and a downstream Ethernet), or if an (e.g., an upstream PPP link and a downstream Ethernet), or if an
interface cannot be put into promiscuous mode (e.g., an upstream interface cannot be put into promiscuous mode (e.g., an upstream
wireless link). wireless link).
Extending a single subnet to span from the ISP to the all of the Extending a single subnet to span from the ISP to all of the
unmanaged network is not recommended, and prefix delegation should unmanaged network is not recommended, and prefix delegation should be
be used when available. However, sometimes it is unavoidable. In used when available. However, sometimes it is unavoidable. In
addition, sometimes it's necessary to extend a subnet in the addition, sometimes it's necessary to extend a subnet in the
unmanaged network, at the "customer-side" of the gateway, and unmanaged network, at the "customer-side" of the gateway, and
changing the topology using routing might require too much changing the topology using routing might require too much expertise.
expertise.
The ND proxy method results in the sharing of the same prefix over The ND proxy method results in the sharing of the same prefix over
several links, a procedure generally known as "multi-link subnet". several links, a procedure generally known as "multi-link subnet".
This sharing has effects on neighbor discovery protocols, and This sharing has effects on neighbor discovery protocols, and
possibly also on other protocols such as LLMNR [LLMNR] that rely on possibly also on other protocols such as LLMNR [LLMNR] that rely on
"link local multicast". These effects need to be carefully studied. "link local multicast". These effects need to be carefully studied.
4.1.2 Explicit prefix delegation 4.1.2. Explicit Prefix Delegation
Several networks have already started using an explicit prefix Several networks have already started using an explicit prefix
delegation mechanism using DHCPv6. In this mechanism, the gateway delegation mechanism using DHCPv6. In this mechanism, the gateway
uses a DHCP request to obtain an adequate prefix from a DHCP server uses a DHCP request to obtain an adequate prefix from a DHCP server
managed by the Internet Service Provider. The DHCP request is managed by the Internet Service Provider. The DHCP request is
expected to carry proper identification of the gateway, which expected to carry proper identification of the gateway, which enables
enables the ISP to implement prefix delegation policies. It is the ISP to implement prefix delegation policies. It is expected that
expected that the ISP assigns a /48 to the customer. The gateway the ISP assigns a /48 to the customer. The gateway should
should automatically assign /64s out of this /48 to its internal automatically assign /64s out of this /48 to its internal links.
links.
DHCP is insecure unless authentication is used. This may be a DHCP is insecure unless authentication is used. This may be a
particular problem if the link between gateway and ISP is shared by particular problem if the link between gateway and ISP is shared by
multiple subscribers. DHCP specification includes authentication multiple subscribers. DHCP specification includes authentication
options, but the operational procedures for managing the keys and options, but the operational procedures for managing the keys and
methods for sharing the required information between the customer methods for sharing the required information between the customer and
and the ISP are unclear. To be secure in such environment in the ISP are unclear. To be secure in such an environment in
practice, the practical details of managing the DHCP authentication practice, the practical details of managing the DHCP authentication
need to be analyzed. need to be analyzed.
4.1.3 Recommendation 4.1.3. Recommendation
The ND proxy and DHCP methods appear to have complementary domains The ND proxy and DHCP methods appear to have complementary domains of
of application. ND proxy is a simple method that corresponds well to application. ND proxy is a simple method that corresponds well to
"informal sharing" of a link, while explicit delegation provides the "informal sharing" of a link, while explicit delegation provides
strong administrative control. Both methods require development: strong administrative control. Both methods require development:
specify the interaction with neighbor discovery for ND proxy; specify the interaction with neighbor discovery for ND proxy; provide
provide security guidelines for explicit delegation. security guidelines for explicit delegation.
4.2 Communication between IPv4-only and IPv6-capable nodes 4.2. Communication Between IPv4-only and IPv6-capable Nodes
During the transition phase from IPv4 to IPv6 there will be IPv4- During the transition phase from IPv4 to IPv6, there will be IPv4-
only, dual-stack and IPv6-only nodes. In theory, there may be a need only, dual-stack, and IPv6-only nodes. In theory, there may be a
to provide some interconnection services so that IPv4-only and IPv6- need to provide some interconnection services so that IPv4-only and
only hosts can communicate. However, it is hard to develop a IPv6-only hosts can communicate. However, it is hard to develop a
translation service that does not have unwanted side effects on the translation service that does not have unwanted side effects on the
efficiency or the security of communications. As a consequence, the efficiency or the security of communications. As a consequence, the
authors recommend that, if a device has a requirement to communicate authors recommend that, if a device requires communication with
with IPv4-only hosts, this device implements an IPv4 stack. The only IPv4-only hosts, this device implements an IPv4 stack. The only
devices that should only have IPv6 connectivity are those that are devices that should have IPv6-only connectivity are those that are
intended to only communicate with IPv6 hosts. intended to only communicate with IPv6 hosts.
4.3 Resolution of names to IPv6 addresses 4.3. Resolution of Names to IPv6 Addresses
There are three types of name resolution services that should be There are three types of name resolution services that should be
provided in case B: local IPv6 capable hosts must be able to obtain provided in case B: local IPv6 capable hosts must be able to obtain
the IPv6 addresses of correspondent hosts on the Internet; they the IPv6 addresses of correspondent hosts on the Internet, they
should be able to publish their address if they want to be accessed should be able to publish their address if they want to be accessed
from the Internet; and they should be able to obtain the IPv6 from the Internet, and they should be able to obtain the IPv6 address
address of other local IPv6 hosts. These three problems are of other local IPv6 hosts. These three problems are described in the
described in the next sections. Operational considerations and next sections. Operational considerations and issues with IPv6 DNS
issues with IPv6 DNS are analyzed in [DNSOPV6]. are analyzed in [DNSOPV6].
4.3.1 Provisioning the address of a DNS resolver 4.3.1. Provisioning the Address of a DNS Resolver
In an unmanaged environment, IPv4 hosts usually obtain the address
of the local DNS resolver through DHCPv4; the DHCPv4 service is In an unmanaged environment, IPv4 hosts usually obtain the address of
the local DNS resolver through DHCPv4; the DHCPv4 service is
generally provided by the gateway. The gateway will also use DHCPv4 generally provided by the gateway. The gateway will also use DHCPv4
to obtain the address of a suitable resolver from the local Internet to obtain the address of a suitable resolver from the local Internet
service provider. service provider.
The DHCPv4 solution will suffice in practice for the gateway and The DHCPv4 solution will suffice in practice for the gateway and also
also for the dual-stack hosts. There is evidence that DNS servers for the dual-stack hosts. There is evidence that DNS servers
accessed over IPv4 can serve arbitrary DNS records, including AAAA accessed over IPv4 can serve arbitrary DNS records, including AAAA
records. records.
Just using DHCPv4 will not be an adequate solution for IPv6-only Just using DHCPv4 will not be an adequate solution for IPv6-only
local hosts. The DHCP working group has defined how to use local hosts. The DHCP working group has defined how to use
(stateless) DHCPv6 to obtain the address of the DNS server (stateless) DHCPv6 to obtain the address of the DNS server
[DNSDHCPV6]. DHCPv6 and several other possibilities are being looked [DNSDHCPV6]. DHCPv6 and several other possibilities are being looked
at in the DNSOP Working Group. at in the DNSOP Working Group.
4.3.2 Publishing IPv6 addresses to the Internet 4.3.2. Publishing IPv6 Addresses to the Internet
IPv6 capable hosts may be willing to provide services accessible IPv6 capable hosts may be willing to provide services accessible from
from the global Internet. They will thus need to publish their the global Internet. They will thus need to publish their address in
address in a server that is publicly available. IPv4 hosts in a server that is publicly available. IPv4 hosts in unmanaged
unmanaged networks have a similar problem today, which they solve networks have a similar problem today, which they solve using one of
using one of three possible solutions: three possible solutions:
* Manual configuration of a stable address in a DNS server; * Manual configuration of a stable address in a DNS server;
* Dynamic configuration using the standard dynamic DNS protocol; * Dynamic configuration using the standard dynamic DNS protocol;
* Dynamic configuration using an ad hoc protocol. * Dynamic configuration using an ad hoc protocol.
Manual configuration of stable addresses is not satisfactory in an Manual configuration of stable addresses is not satisfactory in an
unmanaged IPv6 network: the prefix allocated to the gateway may or unmanaged IPv6 network: the prefix allocated to the gateway may or
may not be stable, and in any case copying long hexadecimal strings may not be stable, and in any case, copying long hexadecimal strings
through a manual procedure is error prone. through a manual procedure is error prone.
Dynamic configuration using the same type of ad hoc protocols that Dynamic configuration using the same type of ad hoc protocols that
are common today is indeed possible, but the IETF should encourage are common today is indeed possible, but the IETF should encourage
the use of standard solutions based on Dynamic DNS (DDNS). the use of standard solutions based on Dynamic DNS (DDNS).
4.3.3 Resolving the IPv6 addresses of local hosts 4.3.3. Resolving the IPv6 Addresses of Local Hosts
There are two possible ways of resolving the IPv6 addresses of local There are two possible ways of resolving the IPv6 addresses of local
hosts: one may either publish the IPv6 addresses in a DNS server for hosts: one may either publish the IPv6 addresses in a DNS server for
the local domain, or one may use a peer-to-peer address resolution the local domain, or one may use a peer-to-peer address resolution
protocol such as LLMNR. protocol such as LLMNR.
When a DNS server is used, this server could in theory be located When a DNS server is used, this server could in theory be located
anywhere on the Internet. There is however a very strong argument anywhere on the Internet. There is however a very strong argument
for using a local server, which will remain reachable even if the for using a local server, which will remain reachable even if the
network connectivity is down. network connectivity is down.
The use of a local server requires that IPv6 capable hosts discover The use of a local server requires that IPv6 capable hosts discover
this server, as explained in 4.3.1, and then that they use a this server, as explained in 4.3.1, and then that they use a protocol
protocol such as DDNS to publish their IPv6 addresses to this such as DDNS to publish their IPv6 addresses to this server. In
server. In practice, the DNS address discovered in 4.3.1 will often practice, the DNS address discovered in 4.3.1 will often be the
be the address of the gateway itself, and the local server will thus address of the gateway itself, and the local server will thus be the
be the gateway. gateway.
An alternative to using a local server is LLMNR, which uses a An alternative to using a local server is LLMNR, which uses a
multicast mechanism to resolve DNS requests. LLMNR does not require multicast mechanism to resolve DNS requests. LLMNR does not require
any service from the gateway, and also does not require that hosts any service from the gateway, and also does not require that hosts
use DDNS. An important problem is that some networks only have use DDNS. An important problem is that some networks only have
limited support for multicast transmission: for example, multicast limited support for multicast transmission, for example, multicast
transmission on 802.11 network is error prone. However, unmanaged transmission on 802.11 network is error prone. However, unmanaged
networks also use multicast for neighbor discovery [NEIGHBOR]; the networks also use multicast for neighbor discovery [NEIGHBOR]; the
requirements of ND and LLMNR are similar; if a link technology requirements of ND and LLMNR are similar; if a link technology
supports use of ND, it can also enable use of LLMNR. supports use of ND, it can also enable use of LLMNR.
4.3.4 Recommendations for name resolution 4.3.4. Recommendations for Name Resolution
The IETF should quickly provide a recommended procedure for The IETF should quickly provide a recommended procedure for
provisioning the DNS resolver in IPv6-only hosts. provisioning the DNS resolver in IPv6-only hosts.
The most plausible candidate for local name resolution appears to be The most plausible candidate for local name resolution appears to be
LLMNR; the IETF should quickly proceed to the standardization of LLMNR; the IETF should quickly proceed to the standardization of that
that protocol. protocol.
4.4 Security considerations in case B 4.4. Security Considerations in Case B
The case B solutions provide global IPv6 connectivity to the local The case B solutions provide global IPv6 connectivity to the local
hosts. Removing the limit to connectivity imposed by NAT is both a hosts. Removing the limit to connectivity imposed by NAT is both a
feature and a risk. Implementations should carefully limit global feature and a risk. Implementations should carefully limit global
IPv6 connectivity to only those applications that are specifically IPv6 connectivity to only those applications that are specifically
designed to operate on the global Internet. Local applications, for designed to operate on the global Internet. Local applications, for
example, could be restricted to only use link-local addresses, or example, could be restricted to only use link-local addresses, or
addresses whose most significant bits match the prefix of the local addresses whose most significant bits match the prefix of the local
subnet, e.g., a prefix advertised as "on link" in a local router subnet, e.g., a prefix advertised as "on link" in a local router
advertisement. There is a debate as to whether such restrictions advertisement. There is a debate as to whether such restrictions
should be "per-site" or "per-link", but this is not a serious issue should be "per-site" or "per-link", but this is not a serious issue
when an unmanaged network is composed of a single link. when an unmanaged network is composed of a single link.
5 Meeting case C requirements 5. Meeting Case C Requirements
Case C is very similar to case B, the difference being that the ISP Case C is very similar to case B, the difference being that the ISP
is not dual-stack. The gateway must thus use some form of tunneling is not dual-stack. The gateway must thus use some form of tunneling
mechanism to obtain IPv6 connectivity, and an address prefix. mechanism to obtain IPv6 connectivity, and an address prefix.
A simplified form of case B is a single host with a global IPv4 A simplified form of case B is a single host with a global IPv4
address, i.e., with a direct connection to the IPv4 Internet. This address, i.e., with a direct connection to the IPv4 Internet. This
host will be able to use the same tunneling mechanisms as a gateway. host will be able to use the same tunneling mechanisms as a gateway.
5.1 Connectivity 5.1. Connectivity
Connectivity in case C requires some form of tunneling of IPv6 over Connectivity in case C requires some form of tunneling of IPv6 over
IPv4. The various tunneling solutions are discussed in section 2. IPv4. The various tunneling solutions are discussed in section 2.
The requirements of case C can be solved by an automatic tunneling The requirements of case C can be solved by an automatic tunneling
mechanism such as 6to4 [6TO4]. An alternative may be the use of a mechanism such as 6to4 [6TO4]. An alternative may be the use of a
configured tunnels mechanism [TUNNELS], but as the local ISP is not configured tunnels mechanism [TUNNELS], but as the local ISP is not
IPv6-enabled this may not be feasible. The practical conclusion of IPv6-enabled, this may not be feasible. The practical conclusion of
our analysis is that "upgraded gateways" will probably support the our analysis is that "upgraded gateways" will probably support the
6to4 technology, and will have an optional configuration option for 6to4 technology, and will have an optional configuration option for
"configured tunnels". "configured tunnels".
The tunnel broker technology should be augmented, to include support The tunnel broker technology should be augmented to include support
for some form of automatic configuration. for some form of automatic configuration.
Due to concerns with potential overload of public 6to4 relays, the Due to concerns with potential overload of public 6to4 relays, the
6to4 implementations should include a configuration option that let 6to4 implementations should include a configuration option that
user take advantage of specific relays. allows the user to take advantage of specific relays.
6 Meeting the case D requirements 6. Meeting the Case D Requirements
In case D, the ISP only provides IPv6 services. In case D, the ISP only provides IPv6 services.
6.1 IPv6 addressing requirements 6.1. IPv6 Addressing Requirements
We expect IPv6 addressing in case D to proceed similarly to case B, We expect IPv6 addressing in case D to proceed similarly to case B,
i.e., use either ND proxy or explicit prefix delegation through i.e., use either an ND proxy or explicit prefix delegation through
DHCPv6 to provision an IPv6 prefix on the gateway. DHCPv6 to provision an IPv6 prefix on the gateway.
6.2 IPv4 connectivity requirements 6.2. IPv4 Connectivity Requirements
Local IPv4 capable hosts may want to still access IPv4-only Local IPv4 capable hosts may still want to access IPv4-only services.
services. The proper way to do this for dual-stack nodes in the The proper way to do this for dual-stack nodes in the unmanaged
unmanaged network is to develop a form of "IPv4 over IPv6" network is to develop a form of "IPv4 over IPv6" tunneling. There
tunneling. There are no standardized solutions and has been very are no standardized solutions and the IETF has devoted very little
little effort devoted by the IETF to this issue, although there is effort to this issue, although there is ongoing work with [DSTM] and
ongoing work with [DSTM] and [TSP]. A solution needs to be [TSP]. A solution needs to be standardized. The standardization
standardized. The standardization will have to cover configuration will have to cover configuration issues, i.e., how to provision the
issues, i.e., how to provision the IPv4 capable hosts with the IPv4 capable hosts with the address of the local IPv4 tunnel servers.
address of the local IPv4 tunnel servers.
6.3 Naming requirements 6.3. Naming Requirements
Naming requirements are similar to case B, with one difference: the Naming requirements are similar to case B, with one difference: the
gateway cannot expect to use DHCPv4 to obtain the address of the DNS gateway cannot expect to use DHCPv4 to obtain the address of the DNS
resolver recommended by the ISP. resolver recommended by the ISP.
7 Recommendations 7. Recommendations
After a careful analysis of the possible solutions, we can list a
set of recommendations for the V6OPS working group:
1- To meet case A and case C requirements, we need to develop, or After a careful analysis of the possible solutions, we can list a set
continue to develop, four types of tunneling technologies: automatic of recommendations for the V6OPS working group:
tunnels without NAT traversal such as [6TO4], automatic tunnels with
NAT traversal such as [TEREDO], configured tunnels without NAT
traversal such as [TUNNELS, TSP] and configured tunnels with NAT
traversal.
2- To facilitate the use of configured tunnels, we need a 1. To meet case A and case C requirements, we need to develop, or
standardized way for hosts or gateways to discover the tunnel server continue to develop, four types of tunneling technologies:
or tunnel broker that may have been configured by the local ISP. automatic tunnels without NAT traversal such as [6TO4],
automatic tunnels with NAT traversal such as [TEREDO],
configured tunnels without NAT traversal such as [TUNNELS,
TSP], and configured tunnels with NAT traversal.
3- To meet case B "informal prefix sharing" requirements, we would 2. To facilitate the use of configured tunnels, we need a
need a standardized way to perform "ND proxy", possibly as part of a standardized way for hosts or gateways to discover the tunnel
"multi-link subnet" specification. (The explicit prefix delegation server or tunnel broker that may have been configured by the
can be accomplished through [PREFIXDHCPV6].) local ISP.
4- To meet case B naming requirements we need to proceed with the 3. To meet case B "informal prefix sharing" requirements, we would
standardization of LLMNR. (The provisioning of DNS parameters can be need a standardized way to perform "ND proxy", possibly as part
accomplished through [DNSDHCPV6].) of a "multi-link subnet" specification. (The explicit prefix
delegation can be accomplished through [PREFIXDHCPV6].)
5- To meet case D IPv4 connectivity requirement, we need to 4. To meet case B naming requirements, we need to proceed with the
standardize an IPv4 over IPv6 tunneling mechanism, as well as the standardization of LLMNR. (The provisioning of DNS parameters
associated configuration services. can be accomplished through [DNSDHCPV6].)
5. To meet case D IPv4 connectivity requirement, we need to
standardize an IPv4 over IPv6 tunneling mechanism, as well as
the associated configuration services.
8 Security considerations 8. Security Considerations
This memo describes the general requirements for transition This memo describes the general requirements for transition
mechanisms. Specific security issues should be studied and addressed mechanisms. Specific security issues should be studied and addressed
during the development of the specific mechanisms. during the development of the specific mechanisms.
When hosts which have been behind a NAT are exposed to IPv6, the When hosts which have been behind a NAT are exposed to IPv6, the
security assumptions may change radically. This is mentioned in security assumptions may change radically. This is mentioned in
sections 3.2 and 4.4. One way to cope with that is to have a sections 3.2 and 4.4. One way to cope with that is to have a default
default firewall with NAT-like access configuration; however, any firewall with a NAT-like access configuration; however, any such
such firewall configuration should allow for easy authorization of firewall configuration should allow for easy authorization of those
those applications that actually need global connectivity. One might applications that actually need global connectivity. One might also
also restrict applications which can benefit from global IPv6 restrict applications which can benefit from global IPv6 connectivity
connectivity on the nodes. on the nodes.
Security policies should be consistent between IPv4 and IPv6. A Security policies should be consistent between IPv4 and IPv6. A
policy which prevents use of v6 while allowing v4 will discourage policy which prevents use of v6 while allowing v4 will discourage
migration to v6 without significantly improving security. migration to v6 without significantly improving security. Developers
Developers and administrators should make sure that global Internet and administrators should make sure that global Internet connectivity
connectivity through either IPv4 or IPv6 is restricted to only those through either IPv4 or IPv6 is restricted to only those applications
applications that are expressly designed for global Internet that are expressly designed for global Internet connectivity.
connectivity.
Several transition technologies require relays. There are concerns Several transition technologies require relays. There are concerns
that improperly designed protocols or improperly managed relays that improperly designed protocols or improperly managed relays could
could open new avenues for attacks against Internet services. This open new avenues for attacks against Internet services. This issue
issue should be addressed and mitigated in the design of the should be addressed and mitigated in the design of the transition
transition technologies and in the deployment guides for relays. technologies and in the deployment guides for relays.
9 IANA Considerations
This memo does not include any request to IANA.
10 Acknowledgements 9. Acknowledgements
This memo has benefited from comments of Margaret Wasserman, Pekka This memo has benefited from the comments of Margaret Wasserman,
Savola, Chirayu Patel, Tony Hain, Marc Blanchet, Ralph Droms, Bill Pekka Savola, Chirayu Patel, Tony Hain, Marc Blanchet, Ralph Droms,
Sommerfeld and Fred Templin. Tim Chown provided a lot of the Bill Sommerfeld, and Fred Templin. Tim Chown provided a lot of the
analysis for the tunneling requirements work. analysis for the tunneling requirements work.
11 References 10. References
Normative references 10.1. Normative References
[UNMANREQ] Huitema, C., Austein, R., Satapati, S., and R. van der [UNMANREQ] Huitema, C., Austein, R., Satapati, S., and R. van der
Pol. "Unmanaged Networks IPv6 Transition Scenarios", RFC 3750, April Pol, "Unmanaged Networks IPv6 Transition Scenarios",
2004. RFC 3750, April 2004.
[IPV6] Deering, S., and R. Hinden, "Internet Protocol, Version 6 [IPV6] Deering, S. and R. Hinden, "Internet Protocol, Version
(IPv6) Specification", RFC 2460, December 1998. 6 (IPv6) Specification", RFC 2460, December 1998.
[NEIGHBOR] Narten, T., Nordmark, E., and W. Simpson, "Neighbor [NEIGHBOR] Narten, T., Nordmark, E., and W. Simpson, "Neighbor
Discovery for IP Version 6 (IPv6)", RFC 2461, December 1998. Discovery for IP Version 6 (IPv6)", RFC 2461, December
1998.
[6TO4] Carpenter, B., and K. Moore, "Connection of IPv6 Domains via [6TO4] Carpenter, B. and K. Moore, "Connection of IPv6
IPv4 Clouds", RFC 3056, February 2001. Domains via IPv4 Clouds", RFC 3056, February 2001.
[6TO4ANYCAST] C. Huitema. "An Anycast Prefix for 6to4 Relay [6TO4ANYCAST] Huitema, C., "An Anycast Prefix for 6to4 Relay
Routers", RFC 3068, June 2001. Routers", RFC 3068, June 2001.
[TUNNELS] Durand, A., Fasano, P., and I. Guardini. IPv6 Tunnel [TUNNELS] Durand, A., Fasano, P., Guardini, I., and D. Lento,
Broker. RFC 3053, January 2001 "IPv6 Tunnel Broker", RFC 3053, January 2001.
[DHCPV6] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., and [DHCPV6] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins,
M. Carney. "Dynamic Host Configuration Protocol for IPv6 C., and M. Carney, "Dynamic Host Configuration
(DHCPv6)."RFC 3315, July 2003. Protocol for IPv6 (DHCPv6)", RFC 3315, July 2003.
[DNSDHCPV6] R. Droms. "DNS Configuration options for DHCPv6." RFC [DNSDHCPV6] Droms, R., "DNS Configuration options for Dynamic Host
3646, December 2003. Configuration Protocol for IPv6 (DHCPv6)", RFC 3646,
December 2003.
[PREFIXDHCPV6] Troan, O. and R. Droms. "IPv6 Prefix Options for [PREFIXDHCPV6] Troan, O. and R. Droms, "IPv6 Prefix Options for
DHCPv6." RFC 3633, December 2003. Dynamic Host Configuration Protocol (DHCP) version 6",
RFC 3633, December 2003.
Informative references 10.2. Informative References
[STUN] Rosenberg, J., Weinberger, J., Huitema, C. and R. Mahy. "STUN [STUN] Rosenberg, J., Weinberger, J., Huitema, C., and R.
- Simple Traversal of User Datagram Protocol (UDP) Through Network Mahy, "STUN - Simple Traversal of User Datagram
Address Translators (NATs)", RFC 3489, March 2003. Protocol (UDP) Through Network Address Translators
(NATs)", RFC 3489, March 2003.
[DNSOPV6] Durand, A., Ihren, J., and P. Savola. "Operational [DNSOPV6] Durand, A., Ihren, J., and P. Savola. "Operational
Considerations and Issues with IPv6 DNS." Work in progress. Considerations and Issues with IPv6 DNS", Work in
Progress.
[LLMNR] Esibov, L., Aboba, B., and D. Thaler. "Linklocal Multicast [LLMNR] Esibov, L., Aboba, B., and D. Thaler, "Linklocal
Name Resolution (LLMNR)." Work in progress. Multicast Name Resolution (LLMNR)", Work in Progress.
[TSP] M. Blanchet, "IPv6 Tunnel Broker with the Tunnel Setup [TSP] Blanchet, M., "IPv6 Tunnel Broker with the Tunnel
Protocol(TSP)". work in progress. Setup Protocol(TSP)", Work in Progress.
[DSTM] J. Bound, "Dual Stack Transition Mechanism". Work in [DSTM] Bound, J., "Dual Stack Transition Mechanism", Work in
progress. Progress.
[TEREDO] C. Huitema. "Teredo: Tunneling IPv6 over UDP through NATs." [TEREDO] Huitema, C., "Teredo: Tunneling IPv6 over UDP through
Work in progress. NATs", Work in Progress.
12 Authors' Addresses 11. Authors' Addresses
Christian Huitema Christian Huitema
Microsoft Corporation Microsoft Corporation
One Microsoft Way One Microsoft Way
Redmond, WA 98052-6399 Redmond, WA 98052-6399
Email: huitema@microsoft.com EMail: huitema@microsoft.com
Rob Austein Rob Austein
Internet Systems Consortium Internet Systems Consortium
950 Charter Street 950 Charter Street
Redwood City, CA 94063 Redwood City, CA 94063
USA USA
EMail: sra@isc.org EMail: sra@isc.org
Suresh Satapati Suresh Satapati
skipping to change at page 17, line 45 skipping to change at page 18, line 38
USA USA
EMail: satapati@cisco.com EMail: satapati@cisco.com
Ronald van der Pol Ronald van der Pol
NLnet Labs NLnet Labs
Kruislaan 419 Kruislaan 419
1098 VA Amsterdam 1098 VA Amsterdam
NL NL
Email: Ronald.vanderPol@nlnetlabs.nl EMail: Ronald.vanderPol@nlnetlabs.nl
13 Intellectual Property Statement 12. Full Copyright Statement
The IETF takes no position regarding the validity or scope of any Copyright (C) The Internet Society (2004).
Intellectual Property Rights 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; nor does it represent that
it has made any independent effort to identify any such rights.
Information on the procedures with respect to rights in RFC This document is subject to the rights, licenses and restrictions
documents can be found in BCP 78 and BCP 79. contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/S HE
REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE
INTERNET ENGINEERING TASK FORCE DISCLAIM 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.
Intellectual Property
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights 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; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the IETF's procedures with respect to rights in IETF Documents can
be found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use attempt made to obtain a general license or permission for the use of
of such proprietary rights by implementers or users of this such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository specification can be obtained from the IETF on-line IPR repository at
at http://www.ietf.org/ipr. http://www.ietf.org/ipr.
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 that may cover technology that may be required to implement rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at ietf- this standard. Please address the information to the IETF at ietf-
ipr@ietf.org. ipr@ietf.org.
14 Copyright Acknowledgement
The following copyright notice is copied from [RFC3667], Section
5.4. It describes the applicable copyright for this document.
Copyright (C) The Internet Society (2004). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
This document and the information contained herein are provided on Funding for the RFC Editor function is currently provided by the
an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE Internet Society.
REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE
INTERNET ENGINEERING TASK FORCE DISCLAIM 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
 End of changes. 

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