Internet Protocol Version 4 is no longer viable for many businesses. Because it is based on 32-bit architecture, there is a growing shortage of Internet Protocol Version 4 (IPv4) addresses. Internet Protocol Version 6 (IPv6) is based on 128-bit architecture, which allows a far greater number of addresses to be available for use over the Internet.
In response, WebSphere Application Server Version 6 now includes support for IPv6, in addition to continued support for IPv4. This means that nodes running WepSphere Application Server Version 6 can use IPv6. (However, note that nodes running WebSphere Application Server Version 5.x cannot use IPv6.)
WebSphere Application Server Version 6 supports a dual mode environment in which you can have older legacy applications running on IPv4 and IPv6-enabled applications running on IPv6. Note, however, that there are restrictions on using IPv4 and IPv6 in the same cell. This article documents those restrictions as well as outlines the ways in which you can set up your cells, depending on the version of IP that you will be using.
From an IP perspective, you must adhere to one of the following scenarios:
Dual mode cell
In a dual mode cell, mixed IPv4 and IPv6 communications are supported. By default, a cell is set to dual mode when it is created. Note, however, that only nodes running WebSphere Application Server Version 6 are valid in a dual mode cell.
IPv4 and IPv6 nodes cannot communicate with each other, so the purpose of the dual mode cell is to enable this communication, thereby allowing you to use your existing applications, running over IPv4, with newer applications that have been enabled for IPv6.
The following illustration shows a dual mode cell:
IPv4-only cell
It is important to note that, by default, a cell is set to dual mode. However, in order to run in an IPv4-only environment, you will need to explicitly set the cell to IPv4. See the section on JVM settings, in this article, for more information.
Mixed node cell
A mixed node cell consists of some nodes running WebSphere Application Server Version 5.x and other nodes running WebSphere Application Server Version 6. In a mixed node cell, all nodes must use IPv4. When defining a node that will be used in a mixed node cell, you must specify the host name as a string or as a 32-bit numerical address, regardless of whether the node is running WebSphere Application Server Version 5.x or WebSphere Application Server Version 6. 128-bit numerical addresses may not be specified.
In a mixed node cell, even though the WebSphere Application Server Version 6 nodes will be configured to use IPv4, the operating system running on them can still support both IPv4 and IPv6. This is true as long as the WebSphere Application Server Version 6 nodes are configured with string-based host names or 32-bit numerical addresses.
Note also, that you can only add Version 5.x nodes into a mixed node cell through migration. You first need to migrate from a Version 5.x Deployment Manager to a Version 6.0 Deployment Manager, and then either keep the Version 5.x nodes or migrate them to Version 6.0 nodes.
IPv6-only cell
Specifying host names
During the installation of WebSphere Application Server, you are asked to provide the host name or IP address of the machine on which the installation is being carried out in the Host Name or IP address field. The host name or IP address that you specify is used to advertise this installation to all other WebSphere Application Server installations in the cell configurations. All nodes in the cell will use the host names or IP addresses that are defined in this way to reach each other. In general, it is best to always use a host name to identify a WebSphere Application Server installation. By using a host name, you will not have to be concerned about which IP address is being used (32-bit versus 128-bit), whether it runs on IPv4 or IPv6, and so on. As long as the DNS service is properly configured, the nodes should all be able to work together.
However, if you prefer, you can control which IP stack or address is used. To do this, enter the specific IP address (32-bit for IPv4 or 128-bit for IPv6) into the Host Name or IP Address field. This installation will then be identified with this IP address and other WebSphere Application Server nodes will use this IP address to communicate with this node.
When specifying IPv6 addresses, it is good practice to surround them with protective square brackets. For example, [fe80::202:57ff:fec4:2334]. The reason for this is that in system internal processing, IP addresses are often combined with port numbers in the form of <IP address>:<port number> , and the colons in IPv6 addresses could be confusing in such circumstances. However, note that you cannot use IPv6 addresses that are surrounded by square brackets within the administrative console or the install wizard.
Note that the use of IPv6 (Internet Protocol Version 6) and WS-AT (Web Services Atomic Transactions) are not supported on HTTP transports; they are only supported on HTTP transport channel chains.
Note that in scripting, the square brackets might have special meaning, depending on the language binding used (for example, Jacl). You can work around this problem by using a special escape character in front of the opening and closing brackets. Using the Jacl binding, for example, the same IPv6 address cited earlier can be entered as \[fe80::202:57ff:fec4:2334\]
Multicast configuration
WebSphere Application Server uses multicast broadcasting at the node level to allow a node agent to discover the managed processes in the node. IPv4 and IPv6 addresses are not compatible. Therefore, to allow a WebSphere Application Server node installation to run out-of-the-box, both IPv4 and IPv6 multicast addresses are initially defined in the node agent configuration, and when a node agent starts, both addresses will be tried in sequence. It is a good idea to delete either NODE_MULTICAST_DISCOVERY_ADDRESS or NODE_IPV6_MULTICAST_DISCOVERY_ADDRESS after installation. By that time, you should know whether the node is running IPv4 or IPv6, so by limiting multicast discovery to the known protocol, the node agent runs more efficiently.
JVM settings
In general, setting these properties is not recommended. In particular, setting java.net.perferIPv4Stack to true will disable the dual mode support in the JVM which might, in turn, disrupt normal WebSphere Application Server functions. Therefore, it is important to understand the full implications if you are contemplating using this setting.