This is the first of a series of blog posts describing new features of Isode’s R14.6 release, scheduled for March 2010.

IPv6 is the new version of IP. The major change relative to IPv4 (which is the version of IP most widely used) is the much larger address space. While many Isode products have supported IPv6 for some while, R14.6 is the first release where all products are IPv6 compliant.

The primary reason that we have not fully supported IPv6 earlier is support in our X.400 and X.500 products. X.400 and X.500 deployment over IP uses an encoding of IPv4 addresses in the Presentation Address originally specified in RFC 1277, and more recently included in the X.500 standard. There was no standardized way to support IPv6, and a vendor specific approach is undesirable.

This problem has been solved in the 2009 version of X.500, and X.519(2009) specifies how to encode IPv6 addresses and Domains in a Presentation Address. We have implemented this specification for R14.6, and all Isode products now support IPv6.

We have also implemented the X.519(2009) mechanism to encode internet domains (e.g., within a presentation address, and will use this encoding by default (while still allowing use of other encodings, for example to use an RFC 1277 encoding of IPv4 for interoperability purposes). The benefit of this is that the addresses of peer servers and listening addresses can now be specified with domains (as well as IP addresses). This means that it will be straightforward (and the default) to not have IP addresses hard-wired into X.400 and X.500 configurations, which will make it much easier to move servers around.