RFC 5569 INFORMATIONAL IPV6 · TRANSITION · IPV4

IPv6 Rapid Deployment on IPv4 Infrastructures (6rd)

Giving IPv6 customers native addresses over an IPv4 network, without new routing plans.

On rfc-editor.org ↗
PUBLISHED
January 2010
AUTHORS
R. Despres
STREAM
INDEPENDENT
SITE PREFIX LENGTH
64 bits or fewer
PROVIDER PREFIX USED IN THE EXAMPLE
/32, later /26
PREFIX 6RD REPLACES
2002::/16, the 6to4 prefix
RELAY ANYCAST ADDRESS IN THE EXAMPLE
192.88.99.201
TIME TO DEPLOY IN THE EXAMPLE
Five weeks
RESIDENTIAL CUSTOMERS REACHED
More than 1,500,000
DOI
10.17487/RFC5569
ERRATA
Reported errata

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Independent Submission                                        R. Despres
Request for Comments: 5569                                     RD-IPtech
Category: Informational                                     January 2010
ISSN: 2070-1721


          IPv6 Rapid Deployment on IPv4 Infrastructures (6rd)

Abstract

   IPv6 rapid deployment on IPv4 infrastructures (6rd) builds upon
   mechanisms of 6to4 to enable a service provider to rapidly deploy
   IPv6 unicast service to IPv4 sites to which it provides customer
   premise equipment.  Like 6to4, it utilizes stateless IPv6 in IPv4
   encapsulation in order to transit IPv4-only network infrastructure.
   Unlike 6to4, a 6rd service provider uses an IPv6 prefix of its own in
   place of the fixed 6to4 prefix.  A service provider has used this
   mechanism for its own IPv6 "rapid deployment": five weeks from first
   exposure to 6rd principles to more than 1,500,000 residential sites
   being provided native IPv6, under the only condition that they
   activate it.

Status of This Memo

   This document is not an Internet Standards Track specification; it is
   published for informational purposes.

   This is a contribution to the RFC Series, independently of any
   other RFC stream.  The RFC Editor has chosen to publish this
   document at its discretion and makes no statement about its value
   for implementation or deployment.  Documents approved for
   publication by the RFC Editor are not a candidate for any level of
   Internet Standard; see Section 2 of RFC 5741.

   Information about the current status of this document, any
   errata, and how to provide feedback on it may be obtained at
   http://www.rfc-editor.org/info/rfc5569.

Copyright Notice

   Copyright (c) 2010 IETF Trust and the persons identified as
   the document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http:trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.

Table of Contents

   1. Introduction ....................................................2
   2. Problem Statement and Purpose of 6rd ............................3
   3. Specification ...................................................4
   4. Applicability to ISPs That Assign Private IPv4 Addresses ........7
   5. Security Considerations .........................................8
   6. IANA Considerations .............................................8
   7. Acknowledgements ................................................9
   8. References ......................................................9
      8.1. Normative References .......................................9
      8.2. Informative References .....................................9

1.  Introduction

   After having had a succinct presentation of the 6rd idea, a major
   French Internet service provider (ISP), Free of the Iliad group
   (hereafter Free), did all of the following in an impressively short
   delay of only five weeks (November 7th to December 11th 2007):

   1.  obtained from its regional Internet Registry (RIR) an IPv6
       prefix, the length of which was that allocated without a
       justification and a delay to examine it, namely /32;

   2.  added 6rd support to the software of its Freebox home-gateway
       (upgrading for this an available 6to4 code);

   3.  provisioned PC-compatible platform with a 6to4 gateway software;

   4.  modified it to support 6rd;

   5.  tested IPv6 operation with several operating systems and
       applications;

   6.  finished operational deployment, by means of new version of the
       downloadable software of their Freeboxes;

   7.  announced IPv6 Internet connectivity, at no extra charge, for all
       its customers wishing to activate it.

   More than 1,500,000 residential customers thus became able to use
   IPv6 if they wished, with all the look and feel of native IPv6
   addresses routed in IPv6.  The only condition was an activation of
   IPv6 in their Freeboxes, and of course in their IPv6-capable hosts.

   This story is reported to illustrate that ISPs that provide customer
   premise equipment (CPE) to their clients, with included routing
   capability, and that have so far postponed IPv6 deployment can, with
   the dramatically reduced investment and operational costs that 6rd
   make possible, decide to wait no longer.

   To complete the story, Free announced, on March 6th 2008, that
   provided two of its customer sites had IPv6 activated, its Telesites
   application (Web sites published on TV) could now be used remotely
   between them.

   While IPv6 availability was limited in December 2007 to only one IPv6
   link per customer site (with /64 site-prefix assignments).  A few
   months later, after Free had detailed its achievement and plans to
   its RIR, and then obtained from it a /26 prefix, up to 16 IPv6 links
   per customer became possible (with /60 site-prefix assignments).

   Readers are supposed to be familiar with 6to4 [RFC3056].

2.  Problem Statement and Purpose of 6rd

   Having ISPs to rapidly bring IPv6 to customers' sites, in addition to
   IPv4 and without extra charge, is a way to break the existing vicious
   circle that has delayed IPv6 deployment: ISPs wait for customer
   demand before deploying IPv6; customers don't demand IPv6 as long as
   application vendors announce that their products work on existing
   infrastructures (that are IPv4 with NATs); application vendors focus
   their investments on NAT traversal compatibility as long as ISPs
   don't deploy IPv6.

   But most ISPs are not willing to add IPv6 to their current offer at
   no charge unless incurred investment and operational costs are
   extremely limited.  For this, ISPs that provide router CPEs to their
   customers have the most favorable conditions: they can upgrade their
   router CPEs and can operate gateways between their IPv4
   infrastructures and the global IPv6 Internet to support IPv6
   encapsulation in IPv4.  They then need no more routing plans than
   those that exist on these IPv4 infrastructures.

   Encapsulation a la 6to4, as specified in [RFC3056], is very close to
   being sufficient for this: it is simple; it is supported on many
   platforms including PC-compatible appliances; open-source portable
   code is available; its stateless nature ensures good scalability.

   There is however a limitation of 6to4 that prevents ISPs from using
   it to offer full IPv6 unicast connectivity to their customers.  While
   an ISP that deploys 6to4 can guarantee that IPv6 packets outgoing
   from its customer sites will reach the IPv6 Internet, and also
   guarantee that packets coming from other 6to4 sites will reach its
   customer sites, it cannot guarantee that packets from native IPv6
   sites will reach them.  The problem is that a packet coming from a
   native IPv6 address needs to traverse, somewhere on its way, a 6to4
   relay router to do the required IPv6/IPv4 encapsulation.  There is no
   guarantee that routes toward such a relay exist from everywhere, nor
   is there a guarantee that all such relays do forward packets toward
   the complete IPv4 Internet.

   Also, if an ISP operates one or several 6to4 relay routers and opens
   IPv6 routes toward them in the IPv6 Internet, for the 6to4 prefix
   2002::/16, it may receive in these relays packets destined to an
   unknown number of other 6to4 ISPs.  If it doesn't forward these
   packets, it creates a black hole in which packets may be
   systematically lost, breaking some of the IPv6 connectivity.  If it
   does forward them, it can no longer dimension its 6to4 relay routers
   in proportion to the traffic of its own customers.  Quality of
   service, at least for customers of other 6to4 ISPs, will then hardly
   be guaranteed.

   The purpose of 6rd is to slightly modify 6to4 so that:

   1.  Packets that, coming from the global Internet, enter 6rd gateways
       of an ISP are only packets destined to customer sites of this
       ISP.

   2.  All IPv6 packets destined to 6rd customer sites of an ISP, and
       coming from anywhere else on the IPv6 Internet, traverse a 6rd
       gateway of this ISP.

3.  Specification

   The principle of 6rd is that, to build on 6to4 and suppress its
   limitation, it is sufficient that:

   1.  6to4 functions are modified to replace the standard 6to4 prefix
       2002::/16 by an IPv6 prefix that belongs to the ISP-assigned
       address space, and to replace the 6to4 anycast address by another
       anycast address chosen by the ISP.

   2.  The ISP operates one or several 6rd gateways (upgraded 6to4
       routers) at its border between its IPv4 infrastructure and the
       IPv6 Internet.

   3.  CPEs support IPv6 on their customer-site side and support 6rd
       (upgraded 6to4 function) on their provider side.

   Figure 1 shows how the IPv6 prefix of a customer site is derived from
   its IPv4 address.

              +---------------//-------.------------------------------+
              | 6rd-relays IPv6 prefix |         IPv4 address         |
              |        of the ISP      |     of the customer site     |
              +---------------//-------'------------------------------+
              <-- less or equal to 32 -><------------ 32 ------------->
              <-- less or equal to  64 ------------------------------->

    Figure 1: Format of the IPv6 Prefix Assigned to a 6rd Customer Site

   Figure 2 shows which nodes have to be upgraded from 6to4 to 6rd, and
   which addresses or prefixes have to be routed to them.

          IPv4 AND IPv6 customer site
          |
          |   6rd CPEs                         6rd relays
          | (modified 6to4)                  (modified 6to4)
          |     |                                   |
          |     |    __________________________     |
          |     |   |                          |    |
          |     |   | ISP IPV4 INFRASTRUCTURE  |    V    GLOBAL
          V     V   |                          |   ___    IPV6
              ___   |                          |  |   | INTERNET
          |  |   |  |        .-----------------|--|   |---
          |--|   |--|-.     /                  |  |___|
          |  |___|  |  \   /                   |
                    |   \ /      IPv4          |      IPv6 Prefix
                    |    O  anycast address => |  <= of 6rd relays
          |   ___   |   / \  of 6rd relays     |      of the ISP
          |  |   |  |  /   \                   |   ___
          |--|   |--|-'     \                  |  |   |
          |  |___|  |        '-----------------|--|   |---
          |         |                          |  |___|
                    |      IPv4 addresses      |
                    | <= of customer sites     |
                    |__________________________|

            Figure 2: ISP Architecture to Deploy IPv6 with 6rd

   NOTE: The chosen address format uses 32 bits of IPv4 addresses in
   IPv6 addresses for reasons of simplicity and of compatibility with
   the existing 6to4 code.  Limiting initially Free's customer sites to
   one IPv6 subnet per site, a consequence of Free's initial prefix
   being a /32, was not a significant restriction: since Free's
   customers are essentially residential, most of them would have been
   unable to use several subnets anyway, and as soon as Free would get a
   prefix shorter than /32, this restriction would be relaxed.  If it
   had been important to immediately use less than 32 bits of IPv4
   addresses in IPv6 prefixes, this would have been possible.  Since
   Free, like many ISPs, had several RIR-allocated IPv4 prefixes (6 of
   them, having lengths from /10 to /16 in the particular case), 6rd
   gateways and 6rd CPEs could for this have implemented variable-length
   mapping table.  But some of the IPv4 addressing entropy would thus
   have been extended to 6rd gateways and CPEs.  Complexity being then
   significantly higher, this would have defeated the objective of
   extreme simplicity to favor actual and rapid deployment.

   IPv6 communication between customer sites of a same ISP is direct
   across the ISP IPv4 infrastructure: when a CPE sees that the IPv6
   destination address of an outgoing packet starts with its own 6rd
   relay ISPv6 prefix, it takes the 32 bits that follow this prefix as
   IPv4 destination of the encapsulating packet.  (Sending and
   decapsulation rules of 6to4, duly adapted to the 6rd prefix in place
   of the 6to4 prefix, apply as described in Section 5.3 of [RFC3056].)

   The IPv4 anycast address of 6rd relays may be chosen independently by
   each ISP.  The only constraint is that routes toward the ISP that are
   advertised must not include this address.  For example, Free took a
   192.88.99.201 address, routed with the same /24 prefix as 6to4 but
   with 201 instead of 1 to avoid confusion with 192.88.99.1, the 6to4
   anycast address of [RFC3068].  Another possibility, not retained,
   would have been to use the anycast address of 6to4 and to add, in
   relays, a test on the IPv6 prefix of the ISP-side address.  If it
   starts with 2002::/16, the packet is 6to4, not 6rd.

4.  Applicability to ISPs That Assign Private IPv4 Addresses

                     ______________________________
                   |                              |
                   | 10.x.x.x/8 private addresses |
                   |  <==                         |
             <-----|         IPv4 anycast address |----->
                   |            of 6rd relays     |
          6rd-CPEs |                      ==>     |  6rd-relays
                   |                              |
             <-----|          0.0.0.0/0           |----->
                   |              :               |
                   |______________V_______________|
                                __|__
          ISP-supported NAT(s) |     |
                               |_____|
                                  |
                                  V
                       IPv4 public addresses

              Figure 3: 6rd Applicability to ISPs That Assign
                          IPv4 Private Addresses

   Free currently offers a global IPv4 address to each of its
   subscribers, which ensures that all IPv4-derived prefixes using 6rd
   are unique.  Service providers may no longer have this luxury as
   available global IPv4 addresses become more and more scarce.  This
   section describes how 6rd could be used by a service provider who
   cannot provide global IPv4 addresses to each subscriber.

   If an ISP has assigned to customer sites addresses of an IPv4 private
   space of [RFC1918], typically 10.x.x.x addresses, it can also use 6rd
   to offer IPv6 to these sites.

   IPv4 packets that contain IPv6 packets don't go to NATs that this ISP
   needs to operate in its infrastructure: they go directly to 6rd
   relays because their destination is the 6rd relay anycast address.

   It can be noted that in this case, the 10.0.0.0/8 prefix is common to
   all IPv4 addresses of the addressing domain in which 6rd is used.
   Knowing it, gateways and CPEs could avoid including this constant
   IPv4 prefix in IPv6 prefixes, and thus reduce to 24 the number of
   bits of IPv4 addresses that are included in IPv6 prefixes (but this
   was not applicable to Free).

   It can also be noted that, if an ISP is large enough to provide
   service to more IPv4 endpoints than will fit inside a single
   10.0.0.0/8 addressing domain, it can configure several such domains,
   with 6rd-relay IPv6 prefixes specific of each one.  Each of these
   prefixes is then the RIR-allocated ISP prefix followed by a domain
   identifier chosen by the ISP.

5.  Security Considerations

   Security considerations for 6to4 are documented in [RFC3964].  With
   the restriction imposed by 6rd that relays of an ISP deal only with
   traffic that belongs to that ISP, checks that have to be done become
   the following:

   o  CPE PACKETS TOWARD THE INTERNET: The IPv6 source must be, and the
      IPv6 destination must not be, a 6rd address of the site.

   o  RELAY PACKETS TOWARD THE INTERNET: The IPv6 source must be a 6rd
      address that matches the IPv4 source.  The IPv6 destination must
      not start with the ISP 6rd prefix.

   o  CPE PACKETS FROM THE INTERNET: If the IPv4 source is the 6rd-
      relay's anycast address of the local ISP, the IPv6 source must not
      be a 6rd address of this ISP.  Otherwise, the IPv6 source must be
      the 6rd address that matches the IPv4 source (is the IPv6 prefix
      of 6rd relays of the ISP followed by the IPv4 address).

   o  RELAY PACKETS FROM THE INTERNET: The IPv6 source must not be a 6rd
      address of the ISP.  The IPv4 destination must not be multicast,
      i.e., must not start with 224/3.  The fact that the IPv6
      destination starts with the IPv6 prefix of the ISP 6rd relays is
      ensured by the routing configuration, but may be double-checked.

   It remains that where IPv4 address spoofing is possible (IPv4 sites
   placing unauthorized source addresses in some packets they send),
   IPv6 address spoofing is also possible, independently of the above
   precautions.

6.  IANA Considerations

   ISPs that provide CPEs to all their customers need no new number
   assignment by IANA.  Their being allocated an IPv6 prefix by their
   RIR, /32 or shorter, is sufficient.

   For 6rd to be also used in the future by ISPs that let customers have
   their own CPEs, means to communicate 6rd parameters to these CPEs
   would be needed.  If the IETF specifies such means for this, some
   number assignment by IANA is likely to be solicited, in a registry to
   be then defined.

7.  Acknowledgements

   The author warmly acknowledges the major contribution of Rani Assaf
   to 6rd's proven credibility.  He readily appreciated 6rd's potential,
   and made the daring decision to immediately implement it for a very
   rapid deployment on Free's operational network.

   Mark Townsley, Brian Carpenter and Patrick Grossetete have to be
   thanked for their encouragements, and for their suggestions on how to
   proceed for 6rd to be known in the IETF.

   Acknowledgments are also due to some IPv6 old timers, in particular
   Laurent Toutain, Francis Dupont, and Alain Durand, who, when the
   author came as a late novice on IPV6, taught him a few subtleties of
   the subject.  Without them, designing 6rd would probably not have
   been possible.

8.  References

8.1.  Normative References

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

   [RFC4291]  Hinden, R. and S. Deering, "IP Version 6 Addressing
              Architecture", RFC 4291, February 2006.

8.2.  Informative References

   [RFC1918]  Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and
              E. Lear, "Address Allocation for Private Internets",
              BCP 5, RFC 1918, February 1996.

   [RFC3068]  Huitema, C., "An Anycast Prefix for 6to4 Relay Routers",
              RFC 3068, June 2001.

   [RFC3964]  Savola, P. and C. Patel, "Security Considerations for
              6to4", RFC 3964, December 2004.

Author's Address

   Remi Despres
   RD-IPtech
   3 rue du President Wilson
   Levallois,
   France

   Phone: +33 6 72 74 94 88
   EMail: remi.despres@free.fr

ISO Plain Language

On this page
PROBLEMService providers that hand out routers to their customers can offer IPv6 quickly, but the 6to4 mechanism they would naturally reuse cannot guarantee that traffic from the native IPv6 Internet reaches those customers.
MECHANISM6rd keeps the stateless encapsulation of 6to4 but replaces the fixed 2002::/16 prefix with an IPv6 prefix the provider owns, so packets entering its gateways are only packets for its own customers.
THE REPORTED RESULTThe document reports one provider adding 6rd to its customer routers and offering IPv6 to more than 1,500,000 residential sites in five weeks, using no new number assignment.

§1Introduction

The document starts with a deployment. A major French service provider in the Iliad group, called Free, took six steps between 7 November and 11 December 2007, five weeks in total: it obtained a /32 IPv6 prefix from its regional Internet registry, added 6rd support to the software of its Freebox home gateway by reusing available 6to4 code, provisioned a platform with a 6to4 gateway program and modified it for 6rd, tested IPv6 operation with several operating systems and applications, deployed the new downloadable software, and announced IPv6 connectivity at no extra charge to every customer who wanted to activate it.

More than 1,500,000 residential customers were then able to use IPv6, with native IPv6 addresses routed in IPv6. The only condition was that they activated IPv6 in their Freebox and on their own hosts. The point of the story is that a provider that supplies customer equipment with routing capability, and that has postponed IPv6, can stop waiting because 6rd cuts the investment and operating cost.

In December 2007 IPv6 availability was limited to one IPv6 link per customer site, with /64 site prefix assignments. A few months later, after the provider had reported the achievement and its plans to its registry and obtained a /26 prefix, up to 16 IPv6 links per customer became possible with /60 site prefix assignments.

The document opens with a report of one provider that added IPv6 to the routers it already supplies to homes, and reached more than 1.5 million customers in five weeks. The customers only had to switch IPv6 on.

§2Problem Statement and Purpose of 6rd

Offering IPv6 alongside IPv4 at no extra charge breaks a deadlock that has delayed IPv6 deployment. Providers wait for customer demand, customers do not demand IPv6 while application vendors say their products work on the existing IPv4 infrastructure, and vendors keep investing in ways to work around address translation instead of in IPv6. Providers will not do this without very limited cost, and the providers best placed are those that supply routers to their customers: they can upgrade those routers and operate a gateway between their IPv4 infrastructure and the global IPv6 Internet, and they need no routing plans beyond the ones their IPv4 network already has.

Encapsulation as specified for 6to4 comes close to being sufficient. It is simple, supported on many platforms including personal computers, has portable open source code, and its stateless nature gives good scalability. One limitation of 6to4 stops a provider using it for full IPv6 unicast connectivity to its customers. A provider running 6to4 can guarantee that IPv6 packets leaving its customer sites reach the IPv6 Internet, and that packets from other 6to4 sites reach its customers, but it cannot guarantee that packets from native IPv6 sites reach them. A packet from a native IPv6 address must pass through a 6to4 relay router that does the encapsulation, and there is no guarantee that routes toward such a relay exist from everywhere, nor that all such relays forward toward the complete IPv4 Internet.

There is a second problem with running 6to4 relays. A provider that opens IPv6 routes toward its relays for the 6to4 prefix 2002::/16 may receive packets destined for an unknown number of other 6to4 providers. If it does not forward them, it creates a black hole in which packets are systematically lost. If it does forward them, it can no longer size its relays in proportion to the traffic of its own customers, and quality of service for those other providers is then hardly guaranteed.

6rd exists to remove this limitation. The purpose is that packets coming from the global Internet into the gateways of a provider are only packets destined for that provider's customer sites, and that all IPv6 packets destined for those customer sites, coming from anywhere on the IPv6 Internet, traverse a gateway of that provider.

The reason 6rd exists is a gap in 6to4. A 6to4 customer can reach the IPv6 Internet and can be reached from other 6to4 users, but not reliably from native IPv6 sites. A provider that also runs 6to4 relays has to carry other providers' traffic to keep the network consistent. 6rd narrows the job to the provider's own customers.

§3Specification

6rd modifies 6to4 in three ways. First, the 6to4 functions are changed so that the fixed 6to4 prefix 2002::/16 is replaced by an IPv6 prefix from the provider's own address space, and the 6to4 anycast address is replaced by another anycast address chosen by the provider. Second, the provider operates one or more 6rd gateways, which are upgraded 6to4 routers, at the border between its IPv4 infrastructure and the IPv6 Internet. Third, the customer equipment supports IPv6 on the customer side of the link and 6rd, an upgraded 6to4 function, on the provider side.

The IPv6 prefix of a customer site is derived from the site's IPv4 address: the provider's 6rd relay IPv6 prefix, which is 32 bits or fewer, is followed by the 32-bit IPv4 address of the customer site, giving a site prefix of 64 bits or fewer. The chosen address format uses 32 bits of the IPv4 address in the IPv6 address, for simplicity and compatibility with the existing 6to4 code. Restricting the sites to one IPv6 subnet each was a consequence of the provider's initial /32 prefix; a provider with several registry-allocated IPv4 prefixes, as the one in the example had six with lengths from /10 to /16, could have implemented variable-length mapping tables, but that would have extended some of the IPv4 addressing entropy to the gateways and equipment and made the design significantly more complex, which would have defeated the goal of simplicity.

IPv6 traffic between two customer sites of the same provider crosses the provider's IPv4 infrastructure directly. When the equipment sees that the IPv6 destination of an outgoing packet starts with its own provider's 6rd relay prefix, it takes the 32 bits that follow that prefix as the IPv4 destination of the encapsulating packet, applying the sending and decapsulation rules of 6to4 with the 6rd prefix in place of the 6to4 prefix.

Each provider may choose its own IPv4 anycast address for its 6rd relays, with the single constraint that routes advertised toward the provider must not include that address. The provider in the example took 192.88.99.201, routed with the same /24 prefix as 6to4 but with 201 instead of 1, to avoid confusion with 192.88.99.1, the 6to4 anycast address.

6rd takes a customer's IPv4 address and puts it after the provider's own IPv6 prefix, so each customer gets a real IPv6 address. Traffic is wrapped in IPv4, sent over the provider's existing network, and unwrapped at a gateway that the provider runs on the edge of the IPv6 Internet.

HOW A 6RD SITE PREFIX IS BUILT (RFC 5569, FIGURE 1)
6rd site prefix
FieldNameSizeValueDescription
ISP-PREFIX6rd relay IPv6 prefix of the ISP4 bytesThe provider's own IPv6 prefix, 32 bits or fewer.
IPV4-ADDRESSIPv4 address of the customer site4 bytesThe 32-bit IPv4 address of the site, carried inside the IPv6 prefix.
ILLUSTRATIVE PATH OF A 6RD PACKET
6rd CPEISP IPv4 network6rd relayGlobal IPv6 Internet
  1. IPv6 IN IPv4The equipment wraps the IPv6 packet in IPv4, taking the bits after the provider prefix as the destination address.
  2. IPv4The packet crosses the provider's IPv4 infrastructure to the relay.
  3. IPv6The relay removes the IPv4 wrapper and forwards the packet on the IPv6 Internet.

§4Private IPv4 Addresses and Number Assignment

Providers that give every subscriber a globally unique IPv4 address can be sure that all the IPv4-derived prefixes used with 6rd are unique. As global IPv4 addresses become scarcer, a provider may have to give customers addresses from a private IPv4 space such as 10.x.x.x, as defined in RFC 1918. Such a provider can still use 6rd. The IPv4 packets that carry IPv6 packets do not go to the address translation gateways the provider operates, because their destination is the anycast address of the 6rd relays.

In that case the 10.0.0.0/8 prefix is common to every IPv4 address in the addressing domain where 6rd is used. Knowing that, the gateways and the customer equipment could leave the constant IPv4 prefix out of the IPv6 prefixes and so reduce the IPv4 bits carried in the IPv6 prefix to 24, which did not apply to the provider described in the document. A provider large enough to serve more IPv4 endpoints than fit inside one 10.0.0.0/8 domain can also configure several such domains, each with its own 6rd relay IPv6 prefix. Each of those prefixes is the registry-allocated provider prefix followed by a domain identifier chosen by the provider.

On number assignment, the document states that providers that supply equipment to all their customers need nothing new from IANA. Being allocated an IPv6 prefix by their registry, /32 or shorter, is sufficient. If 6rd were also to be used by providers that let customers bring their own equipment, there would need to be a way to communicate the 6rd parameters to that equipment, and some number assignment would then likely be needed.

A provider that cannot give every customer a public IPv4 address can still run 6rd, because the 6rd gateway address is reachable without address translation. A provider that needs several private address ranges gives each range its own 6rd prefix.

§5Security Considerations

The security considerations for 6to4 are documented in RFC 3964. Because 6rd restricts the relays of a provider to traffic that belongs to that provider, the checks that have to be made are these.

  • For packets from customer equipment toward the Internet, the IPv6 source must be a 6rd address of the site and the IPv6 destination must not be.
  • For packets from a relay toward the Internet, the IPv6 source must be a 6rd address that matches the IPv4 source, and the IPv6 destination must not start with the provider's 6rd prefix.
  • For packets from the Internet to customer equipment, if the IPv4 source is the anycast address of the provider's own 6rd relays, the IPv6 source must not be a 6rd address of that provider. Otherwise the IPv6 source must be the 6rd address that matches the IPv4 source.
  • For packets from the Internet to a relay, the IPv6 source must not be a 6rd address of the provider, and the IPv4 destination must not be multicast, that is, must not start with 224/3. That the IPv6 destination starts with the IPv6 prefix of the provider's relays is ensured by the routing configuration, but may be double-checked.

Where IPv4 address spoofing is possible, IPv6 address spoofing is also possible, independently of these precautions.

Each side checks that the addresses inside a packet match the rules for 6rd, so a relay only carries its own provider's traffic. Spoofing an address is still possible in the same places it is possible for IPv4.

§6References