Deployment and Transitioning Issues

Even though there are numerous benefits of this new protocol, many organizations and countries have been reluctant to put forth a serious effort and begin the migration from IPv4. Since IPv6 was slow in development, many ``hacks'' and additional features were added to IPv4, such as CIDR and NAT, to more optimize the use of the slowly decreasing address space. Due to these advancements in IPv4, the imminent address shortage has been temporarily averted, and more organizations have time to procrastinate about moving to IPv6.

Although the IPv6 protocol has been standardized in RFC 2460, DNS records are still in somewhat of a flux. Since the current DNS was not capable of handling 128-bit addresses, new records, AAAA and A6 were developed to solve this problem. An AAAA record is similar to an IPv4 A (address) record, but handles four times the bytes. A6 and DNAME records, specified in RFC 2874, on the other hand, are an alternate replacement for IPv4's A records, but facilitate network prefix renumbering, assuming the change of ISP or similar. Instead of an A6 record holding a complete IPv6 address for a host, it only contains the 64-bit (can be variable) interface identifier of the host. Queries must follow the chain of A6 records from the hosts domain name to the TLA ID. A number of prominent authors such as D.J. Bernstein, creator of djbdns, have spoken out against this method, due to its plethora of lookups and possibility of loops. The IETF has supposedly reconsidered their decision to implement this system with A6 and DNAME records.

Reverse DNS for IPv6 has been a rocky ride as well, due to the (still) competing methods for solving the 32 to 128-bit transition. The IP6.INT domain was created and delegated to the 6bone and production IPv6 Internet. This method works similarly to how IPv4 reverse-lookups are made, reversing the order of the nibbles and appending IP6.INT at the end. However, IP6.ARPA was created in RFC 3152 and bitstring labels were introduced along side A6 and DNAME. The following examples show how each of the potential queries would look for the IPv6 address of 2001:470:1f00:181::1.

       IP6.INT method:
       1.0.0.0.[snip].1.8.1.0.0.0.f.1.0.7.4.0.1.0.0.2.ip6.int.  IN PTR
       IP6.ARPA method:
       1.0.0.0.[snip].1.8.1.0.0.0.f.1.0.7.4.0.1.0.0.2.ip6.arpa.  IN PTR
       IP6.ARPA with bitstring labels:
       \[x200104701F0001810000000000000001/128].ip6.arpa. IN PTR
It is not clear at this point whether IP6.ARPA or IP6.INT will end up becoming the standard.

A number of systems were developed and provided to provide for the major transitioning hurdle from IPv4 to IPv6. Most of these techniques use IPv6-in-IPv4 tunnels (IP protocol 41) to allow IPv4 hosts to connect to the 6bone or production IPv6 Internet. 6to4, a method that is primarily intended for single hosts, uses the 2002::/16 IANA-assigned prefix and the hexadecimal representation of the IPv4 address to create a globally scoped IPv6 address. For example, an IPv4 address of 128.113.151.16 would become 2002:8071:9710:: with a prefix length of 48 bits. This IPv4 host then communicates with a public 6to4 relay using the IPv4 anycast address of 192.88.99.1, which is advertised via BGP from multiple locations. 6to4 does allow for routing multiple hosts on a LAN through a router running a 6to4 virtual interface, but this does not seem to be very popular, considering that latencies to 6to4 relays may be less than adequate. Another method, involving tunnel brokers, allows a user to setup an IPv6-in-IPv4 tunnel to an ISP which provides an endpoint and some IPv6 address space. The address space given to the user can be assigned to a LAN and be globally routable, potentially with its own reverse-DNS delegation. Hosts on these LANs may use stateless autoconfiguration, a method used to automatically assign IPv6 addresses in a quick and simple manner. This, as well as stateful autoconfiguration, is discussed in greater detail in the next section.

Regardless of the rampant deployment issues, most modern operating systems and router software now fully support the IPv6 protocol. Router manufacturers such as Cisco Systems, Juniper Networks, Foundry Networks and Extreme Networks and operating systems such as Microsoft Windows XP, Linux, Unix, and Macintosh OS X all completely support the protocol as well as stateless autoconfiguration. For home users running Windows XP, a command as simple as ``ipv6 install'' from the command line will install the IPv6 stack, bring up a virtual interface, and obtain a 6to4 address for immediate use.



Mark Kamichoff 2004-04-23