IPv6 was designed with a long transition period in mind. Therefore there is a myriad of IPv4 to IPv6 transition mechanisms have been defined in the various RFCs. The transition mechanisms can be grouped into a few categories (3G Americas, 2008):
- Dual Stack
- IPv6 tunneling over IPv4
- IPv4 - IPv6 translation
1 Dual Stack
In a dual stack mechanism, the device supports both IPv6 and IPv4, which means that the device is able to obtain both IPv6 and IPv4 addresses from the network and is able to choose either IP version to use to communicate depending on the IP version and the peer supports. The IP version and the peer supports can be discovered, for example, using a DNS service.
2 IPv6 Tunneling over IPv4
When two IPv6 domains are not directly connected over IPv6 but instead are connected through an IPv4 network, which is often the case during the initial transition of the Internet to IPv6, IPv6 traffic will be tunneled over IPv4. The following tunneling techniques that may be relevant to IPv6 migration are:
- Configured tunnels: This is used for connecting two IPv6 domains that have native IPv6 connectivity. The tunnel (typically from router to router) is configured via administrative means. IPv6 packets are encapsulated in IPv4 packets.
- Tunnel broker: Tunnel broker is a technique that uses an IPv6 domain (a network or an individual host), which establishes an IPv6 connectivity using such a tunnel broker, serving as a virtual IPv6 ISP.
- 6to4: This is used for deploying IPv6 in a network without waiting for the administrator of the network to provide native IPv6 connectivity. A 6to4 router advertises a global unicast IPv6 prefix to the network, constructed from a public IPv4 address assigned to the network. The 6to4 router also acts as a tunnel endpoint for the network. IPv6 packets are encapsulated in IPv4 packets. The IPv6-in-IPv4 tunnels between 6to4 sites are established automatically. The 6to4 relay routers allow 6to4 sites to communicate with native IPv6 sites.
- Teredo: Teredo is used for deploying IPv6 in a network without waiting for the administrator of the network to provide native IPv6 connectivity (similar to 6to4). This is particularly important when the network is behind a NAT and the NAT system is not upgradeable to provide 6to4 functionality, since the 6to4 router cannot sit behind an IPv4 NAT. In Teredo, a Teredo server deployed in front of the NAT, serves as the IPv6 router for the network, transmitting IPv6 router advertisements with a global unicast IPv6 prefix, constructed from a public IPv4 address assigned to the network. This helps the hosts behind the NAT (the Teredo clients) learn about their assigned public IP address and UDP port and enable hole punching through the NAT for Teredo clients between sites to establish direct connectivity. Teredo relays allow Teredo sites to communicate with native IPv6 sites.
- ISATAP: The ISATAP is an IPv6-in-IPv4 tunneling technique that allows dual-stack hosts and routers within a network segment to communicate over IPv6 when the IP infrastructure within the network segment does not support native IPv6. One example scenario is to allow a host to access the Internet via IPv6 when a site has native IPv6 access to the Internet, however the host happens to be within a network segment that has not been upgraded to IPv6.
3 IPv4 - IPv6 Translation
When an IPv6-only host needs to communicate with an IPv4-only, some form of protocol translation is needed. The following translation techniques have been developed:
- NAT-PT (Network Address Translation — Protocol Translation) and SIIT (Stateless IP/ICMP Translation Algorithm).
- IPv6-to-IPv4 Transport Relay Translator: A TRT is a TCP or UDP relay which additionally performs IPv4 — IPv6 translation.
No comments:
Post a Comment