Every day, more and more businesses reach out to their customers over the Internet. This increase in Web-based business has created immense demand for Internet addresses. Currently, most Web sites use IPv4 networking, but this protocol is running out of address space. The IPv6 networking foundation, which is compatible and interoperable with IPv4, was created to solve these problems:
- Exhaustion of the IPv4 address space
- Exhaustion of the capacity for global routing tables
- Complexities in configurations
- Poor security at the IP level
- Poor delivery of real-time data
Understanding the textual representation of IPv4 and IPv6
IPv6 provides an increased number of bits used for addressing. IPv4 uses the 32-bit dotted-decimal notation, while IPv6 uses 128-bit addressing expressed in hexadecimal format. Figure 1 shows the 32-bit IPv4 notation, where each X represents eight bits.
Figure 1. IPv4 representation

Figure 2 shows the normal, or primary, notation of 128-bit IPv6, where each X represents a 16-bit hexadecimal value. Each hexadecimal value is separated by a colon (:) -- for example:
ABCD:1234:EFBC:4321:100:50:51:172
Figure 2. IPv6 normal, or primary, form representation

Figure 3shows the dual notation of 128-bit IPv6, where X represents a 16-bit hexadecimal value, and Y represents a 32-bit IPv4 address -- for example:
ABCD:1234:EFBC:4321:100:50:9.182.251.73
Figure 3. IPv6 dual-form representation

IPv6 addresses can be represented in two ways: normal and compressed. Table 1 shows examples of these two IPv6 address formats.
Table 1. Valid IPv6 address formats
| Normal format | Compressed format |
|---|---|
| ABCD:EF12:0:0:0:0:0:3456 | ABCD:EF12::3456 |
| EF12:0:0:0:ABCD:0:0:123 | EF12::ABCD:0:0:123 / EF12:0:0:0:ABCD::123 |
| 0:0:0:0:0:0:0:ABCD | ::ABCD |
| 0:0:0:0:0:0: 9.182.145.73 | :: 9.182.145.73 |
| 0:0:0:0:0:FFFF: 9.182.145.73 | ::FFFF: 9.182.145.73 |
| ABCD:EF:14:32:0:0:9.182.145.73 | ABCD:EF:14:32:: 9.182.145.73 |
Compressed format is a short form that replaces consecutive leading zeros with two colons (::).
When you use a literal IPv6 address in a URL, you must enclose the literal address in brackets -- for example, "["and "]." Each of these formats represents valid IPv6 URLs:
- http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html
- http://[ABD1:0:0:0:8:800:200C:417A]/index.html
- http://[3ffe:2a00:100:7031::1]
- http://[1080::8:800:200C:417A]/console
- http://[::9.182.251.74]/console
- http://[::FFFF:9.182.251.74]:80/index.html
- http://[5ffe:2010:836B:4179::836B:4179]
- ftp://[2002:9b8:7093::9b8:7093]/
- ftp://[2002:9b8:7093:0:0:0:9b8:7093]:41/
- ftp://[2002:9b8:7093::9b8:7093]:41/ftpusers/ipv6/
Table 2 lists some of the common differences between IPv4 and IPv6.
Table 2. IPv6 and IPv4 comparison
| IPv4 address | IPv6 address | |
|---|---|---|
| Broadcast addresses | Yes | Not applicable |
| Loopback address | 127.0.0.1 | ::1 |
| Unspecified address | 0.0.0.0 | :: |
| Type of addresses | Public IP addresses | Aggregatable global unicast addresses |
| Representation | Dotted decimal notation | Colon hexadecimal notation |
IPv6 not only solves the shortage problem for address space, but it solves a number of other key problems as well. IPv6 includes these important benefits:
- Efficient management of address space
- Enhanced security support
- Easy maintenance of administration TCP/IP
- Elimination of the network address translation (NAT) role
- Better mobility support
The following section provides a snapshot of major IT products that support IPv6.
A number of operating systems support IPv6, including:
- Microsoft Windows Server 2003
- Microsoft Windows XP Service Pack 1 (SP1) and later
- Microsoft Windows CE .NET 4.1 and later
- IBM Advanced Interactive eXecutive (AIX®) 5.2 with Software Subscription and Support level 3 (ML3) and later
- Hewlett Packard UNIX (HP-UX) 11i and later
- Sun Solaris 8.0 and later
- Red Hat Enterprise Linux (RHEL) Advanced Server with update 2.4 and later
- Novell SUSE Enterprise Server 8.0 with SP3 and later
- Mac OS X 10.2 Jaguar and later
Older Windows versions do not support IPv6.
Application servers that support IPv6 include:
- Microsoft Internet Information Services (IIS) 6.0
- IBM WebSphere® Application Server (WAS) 6.0 and later
- BEA WebLogic Server 9.0 and later
The following servers do not support IPv6:
- Macromedia JRun 4
- Oracle Application Server 9i
Numerous database systems support IPv6, including:
- IBM Informix® Dynamic Server (IDS) 10
- Microsoft SQL Server 2005
- Sybase OpenSwitch 15.0
- MySQL 5.0
The following databases do not support IPv6:
- IBM DB2® 8.2
- Oracle 10.1.0.4
Web browsers that support IPv6 include:
- Mozilla 1.4 and later
- Netscape 7.1 and later
- Konqueror 1.4 and later
- Mozilla Firefox 1.5 and later
- Opera 7.2 and later
Internet Explorer does not support IPv6.
This article demonstrates the importance of IPv6 and lists some of the most prominent IT industry companies that support this new protocol. IPv6 is still in its early stages of inception. As it grows in popularity, a new world of IPv6 features might arise.
Learn
- Writing a simple IPv6 program (Senthil Sundaram, developerWorks, September 2001): Configure an IPv6 address and port an IPv4 application to IPv6.
- New features in IBM Informix Dynamic Server, Version 10.0 (Inge Halilovic, developerWorks, March 2005): Use the IPv6 format for IP addresses with Informix Dynamic Server.
- IPv6 home page: Visit this IPv6 site with various topics pertaining to IPv6.
- IPv6 Multicast Address Assignments: Read this document that defines the initial assignment of IPv6 multicast addresses.
- IPv6 Related Specifications: Learn more about the Internet Engineering Task Force's (IETF's) Requests for Comments (RFCs) and IPv6 specifications.
- Linux IPv6 HOWTO: Find information on how to configure IPv6 on Linux.
- Networking IPv6 User Guide for J2SDK/JRE 1.4: Explore the property settings needed to write Java™ applications that support IPv6.
- The IPv6 Forum: Browse this Web site to get an idea of the latest discussion topics.
- IPv6 for Microsoft Windows: Frequently Asked Questions: Find answers commonly asked questions in this FAQ about the IPv6 protocol for the Microsoft Windows family of operating systems.
- How IIS 6.0 Supports IPv6 (IIS 6.0): Discover the differences in IIS functionality between IPv4 and IPv6.
- Understanding WebLogic RMI: Discover WebLogic RMI's support for IPv6.
- General Discussion with JRun: Discover why JRun doesn't support IPv6.
- Application Server - Oracle Application Server: Learn about Oracle Application Server's lack of support for IPv6.
- SQL Server 2005 Books Online: Learn about IPv6 support in SQL Server 2005.
- Release Bulletin OpenSwitch 15.0 for Windows and UNIX: Read about OpenSwitch's support for IPv6.
- DB2 Everyplace Express Edition Release Notes for Version 8.2: Understand why IBM DB2 8.2 doesn't support IPv6.
- Ziff Davis Web Buyer's Guide: IPv6: Discover other products in the industry that support IPv6.
- Web Architecture zone's technical library: Find articles and tutorials on various Web-based solutions.
Get products and technologies
- IBM trial software: Build your next development project with software available for download directly from developerWorks.
Discuss
- developerWorks blogs: Get involved in the developerWorks community.

Makham V. Kumar works with the development team for IBM WebSphere Partner Gateway at IBM India Software Labs. His primary interests are working with the emerging technologies in Java 2 Platform Enterprise Edition (J2EE), the business integration domain, and developing tools based on open source and WebSphere. Makham is an engineer from the University of Karnataka at Belgaum, India.



