IPv6 is important for every network-related project, from infrastructure to applications. There are almost no applications that doesn’t use the Internet or the corporate IP network. From web applications, to smartphone apps and business systems. Even if you don’t use IPv6 in your network today, you need to integrate IPv6 in your software project now. Why? If you don’t make it part of the project from start, you will end up rebuilding the project for a much higher cost in just a few years when bug reports come in. And you might meet IPv6 sooner than you expect if you integrate with external network services.
Executive summary: IPv6 is coming. You have the choice of integrating it into your project for a small cost today, or having to fix it for a much higher cost at some later stage. It’s your choice. I know what I would be doing.
What you need to consider
There are many things you want to consider, but here’s a short version of the IPv6 project check list for software projects:
- Project team: Do you have IPv6 network knowledge in your project team?
- Test lab: Do you have a test lab for IPv6 – including DNS, Web and e-mail?
- 3rd party libraries and applications: What’s the status of your vendors? Do they support IPv6 yet?
- Operating systems: Are they up-to-date and have support of IPv6?
- Log files and databases: Are they ready for IPv6 data and the length of the data fields?
- Security: Are there new issues coming up when running your application in a dual-stack world?
- Migration: Can you help customers that doesn’t have IPv6 to access IPv6 based services?
- New opportunities: Can IPv6 add new features to your application or service?
Lessons learned: Happy Eyeballs
IPv4-only users will be affected by IPv6 too
Web applications will be the first to bite the dust
When I run web applications on my dual stack IP network in the office, they are IPv6 enabled by default. If the developer did not realize that this could happen he will be surprised. IPv6 can show up in HTTP Referer fields, in Javascript and in all kinds of places. Some of these addresses will end up being stored in the log files, databases or cookies. The application needs to be able to handle this.
Now it’s time for you to do your homework. Here are some pointers for your 30 minutes of IPv6 research today:
Dan York has written a book called “Migrating applications to IPv6” that I strongly recommend. Published by O’Reilly and available for a low price as an e-book.
- The Dutch STIPv6 project has a white paper about IPv6 aspects in Software. Requires registration, but is freely available and worth reading
- Microsoft has a IPv6 Learning Roadmap on their Technet site.
- Oracle has an Java IPv6 development page
- Penn State has a good IPv6 development page
- I have published a presentation that discusses IPv6 issues for the SIP realtime communication protocol