IPv6 was created with an address space that is 3.4x1038 compared to IPv4’s 4.3x109. Hopefully this will give us some time to plan for whatever comes next. Right now, however, how will you deal with the first IPv6-only sites once there are no more IPv4 addresses? Since IPv4 and IPv6 are not compatible, your system will not be able to talk directly with a IPv6-only host. If that host is someone’s home system, unless you are trying to play a game or exchange files, there should not be much of an issue. If it is a business with whom you must deal, it starts to get more ‘interesting.’
For some values of ‘interesting’ it can be relatively easy to make a connection. If your transactions are simple and small, Windows XPSP3 and forward offer methods of “automatic tunneling” that may allow your system to make an outbound connection to an IPv6 host. If your connectivity is good and the tunnel host is not overloaded, you will not notice much difference. It does mean that your personal firewall software will need to address what is coming out of that tunnel.
If you have a public-facing presence on the internet, you have more to think about and more to do. Since IPv4 is not going to vanish, you will likely need to keep IPv4 implemented in some measure on selected computers and add IPv6. This is called “dual-stacking.” For this option, you need to make sure all the same services and issues addressed for IPv4 are addressed for IPv6. To name a few:
- your firewall vendor must understand and implement for IPv6
- your DNS (domain name service) must properly respond with IPv6 information
- your OS may need to support DHCPv6 (ex: WinXP does not, now)
- your network management tools may need updated
- your software ‘patching’ and maintenance product may need updated
If you remember the “Year 2000” panic, you may feel there are parallels in this transition. I would agree, absent a known, fixed deadline. For Y2k, application software was the major issue for most. Like Y2k, how information is represented and stored is the root. Does the application use 32-bits for an IP address? Is it numeric or string? Does it need to communicate with other systems? If so, are its calls coded in a way that is independent of the IP version? These are a few of things you will want to know and address before they are forced to the forefront.
Coming next time, some approaches to coping....