Share via


Converting to IPv6 (Windows CE 5.0)

Send Feedback

Because IPv6 and IPv4 will coexist on the Internet, network applications and devices must run without modification and be able to communicate with both IPv4 and IPv6 nodes.

You can add IPv6 capability and still retain IPv4 functionality. Because IPv6 addresses are much larger than IPv4 addresses, you must, when adding IPv6 functionality, ensure that your application defines properly sized data structures. Structures that are hard-coded to store an IPv4 address will cause problems in your application.

The best approach to ensure that your structures are properly sized is to use the SOCKADDR_STORAGE structure. This structure does not rely on a specific IP address version.

For information about creating an application that works with both IPv4 and IPv6, see the document titled IPv6 Guide for Windows Sockets Applications at this Microsoft Web site. This document contains complete, working examples of a simple Windows Sockets application that has been modified to support both IPv6 and IPv4.

You can find potentially porting-sensitive code in your application's socket-level programming by using the Microsoft Checkv4 utility in the build release directory command window in Platform Builder. This utility identifies potential issues, highlights code that could benefit from IPv6-capable functions or structures, and recommends a method for resolving the issues. For information about how to use the Checkv4 utility, see Running the Checkv4 Utility.

For general IPv6 information, go to this Microsoft Web site, and then search for "Microsoft Windows IPv6."

It is important to test your application or device in an IPv6 environment before deploying it in a production environment. For information about how to setup an IPv6 test lab internal to your organization, see How to Set Up and Use an IPv6 Test Lab.To evaluate and test your IPv6 system in an online environment, you can use the 6bone, a test IPv6 portion of the Internet. For information about connecting to this test Internet, see Connecting to the Test Internet (6bone).

See Also

TCP/IP | IPv6 and IPv4 Coexistence | Applications and Services that Support IPv6 | How to Convert an Application from IPv4 to IPv4/IPv6 | How to Set Up and Use an IPv6 Test Lab | TCP/IPv6 Configurable Registry Settings

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.