Chapter 6. IPv6 Configuration

Table of Contents

6.1. Overview
6.1.1. IPv6
6.1.2. IPv6 Conversion Technologies
6.2. Tmax IPv6
6.2.1. IPv6 Supported Features
6.2.2. Additional Features

This chapter describes IPv6 provided by Tmax.

6.1. Overview

This section describes the basic concept and features of IPv6 and dual stack, which is an IP conversion technology.

6.1.1. IPv6

IPv6, a network-level protocol, is a next generation Internet protocol established as the Internet Protocol version 6. Due to the limitation of using IPv4 protocol for the Internet, which was used in the past, IETF established IPv6 protocol as the new protocol.

IPv4, expressed in 32 bits, can create 4,294,967,296 addresses. As the number of computers connected to the Internet has grown dramatically, IPv4 addresses have almost been exhausted. IPv6 has been suggested to resolve this issue.

IPv6, expressed in 128 bits, can create 3.4x10^38 addresses (2^128), which is close to infinity. With this many addresses, one IPv6/48 network can be provided per 10㎡ of surface area on the earth.

A big difference between IPv4 and IPv6 is how an address is expressed. An IPv6 address can be represented with a hexadecimal number that includes a colon(:) between every 16 bits (four digits).

2001:0db8:85a3:08d3:1319:8a2e:0370:7334

6.1.2. IPv6 Conversion Technologies

Until the conversion to IPv6 is complete, IPv4 and IPv6 networks will be used concurrently. To support both IPv4 and IPv6, the following technologies are provided by the basic platform vendors for OS, router, switch, etc.

  • Dual-stack

    IPv4/IPv6 dual stack is the easiest way to maintain compatibility between an IPv6 node and a IPv4 dedicated node. Since an IPv6/IPv4 dual stack node can send or receive both IPv4 and IPv6 packets, it is compatible with both IPv4 node and IPv6 node.

  • Tunneling

    Tunneling is used for IPv6/IPv4 host and router to encapsulate IPv6 datagrams in an IPv4 packet, and transmit it through the IPv4 routing topology. Through tunneling, IPv6 packets can be transmitted through the existing IPv4 routing infrastructure.

6.2. Tmax IPv6

IPv6 can be used in Tmax by configuring the necessary settings. IPv4 is the default protocol.

The settings can be applied to the environment variables and Tmax configuration files as needed. (Since configuration files cannot not be used for a client, environment variables must be configured for a client.)

6.2.1. IPv6 Supported Features

In Tmax, client, multi-node, multi-domain, and tcp gateways are implemented using sockets. Each module can choose to use IPv4 or IPv6.

Each module can select to use IPv6 based on the following situations.

  • Accepting a connection

    The following describes Tmax components and configuration depending on how a connection is accepted.

    ComponentsDescription
    cll

    Receives a connection from a client.

    • Configuration file: domain and node sections

    • Environment variable: CLIENT_IPV6

    tmm, clh

    Receives an inter-node connection in a multi-node environment.

    • Configuration file: domain and node sections

    • Environment variable: SYSTEM_IPV6

    Receives a connection from an extern server.

    • Configuration file: domain and node sections

    • Environment variable: EXTSVR_IPV6

    racd

    Receives a utility connection in a multi-node environment.

    • Configuration file: domain and node sections

    • Environment variable: TMAX_RAC_IPV6, SYSTEM_IPV6

    webagent(twagent)

    Receives a WebAdmin connection.

    • Environment variable: TMAX_WEBADM_ IPV6

    gateway([non]tx, [async] tuxedo, [async] java, wsgw, xagw)

    Receives a connection.

    • Configuration file: gateway section

    • Environment variable: LOCAL_IPV6

    hms

    Receives a connection from hms cluster.

    • Configuration file: domain and node sections

    • Environment variable: SYSTEM_IPV6

    tcp g/w

    Receives a connection.

    • Configuration file: CLOPT of SERVER section, or a separate configuration file (Refer to Tmax Gateway Guide(TCPIP) )

    • Environment variable: -X SERVER_ IPV6

    tmsnmpd

    Receives an SNMP-requested connection.

    • Arguments for execution: upd6:port or tcp6:port

    Java components

    Receives a connection from jtmax or webtasync. The java components must be set through environment variables when executing java. (To run them on WAS, they must be set to environment variables at startup.)

    • java.net.preferIPv4Stack

    • java.net.preferIPv6Addresses

  • Requesting a connection

    The following describes Tmax components and configuration according to how the connection is requested.

    ComponentsDescription
    c client

    Requests a connection to Tmax.

    • Environment variable: TMAX_HOST_IPV6, TMAX_BACKUP_IPV6

    tmm

    Connects to another node(tmm) in a multi-node environment.

    • Configuration file: domain and node sections

    • Environment variable: SYSTEM_IPV6

    clh

    Connects to another node(clh) in a multi-node environment.

    • Configuration file: domain and node sections

    • Environment variable: SYSTEM_IPV6

    tdl

    Connects to another node in a multi-node environment when executing the tdl utility.

    • Configuration file: domain and node sections

    • Environment variable: SYSTEM_IPV6

    hms

    Connects to HMS of another node in a clustered HMS environment.

    • Configuration file: domain and node sections

    • Environment variable: SYSTEM_IPV6

    xa client

    Connects to the xa gateway.

    • Function's argument: tmax_xa_open

    • Environment variable: ipv6

    tcp g/w

    Connects to an external server.

    • Configuration file: CLOPT of SERVER section in configuration file, or a separate configuration file(Refer to Tmax Gateway Guide(TCPIP) )

    • Environment variable: -X CLIENT_ IPV6

    gateway([non]tx, [async] tuxedo, [async] java)

    Connects to another gateway.

    • Configuration file: gateway section

    • Environment variable: RGW_ IPV6, RGW_B1_ IPV6, RGW_B2_ IPV6, RGW_B3_ IPV6

    gateway(wsgw)

    Connects to the Web Service server.

    • Separate configuration file (xml)

    • Distinguish ipv6 through uri.

    Java components

    Requests a connection to jtmax, webtasync, or twadmin. The java components must be set through environment variables when executing java. (To run them on WAS, they must be set to environment variables at startup.)

    • java.net.preferIPv4Stack

    • java.net.preferIPv6Addresses

If IPv6 support is configured, Tmax creates a socket for IPv6. If a platform where Tmax is installed provides a conversion technology like dual stack, Tmax can receive a connection request through both IPv4 and IPv6. If IPv6 is not configured for Tmax even though the platform supports both IPv6 and IPv4, Tmax can receive only IPv4 connections.

6.2.2. Additional Features

Tmax supports other IPv6 related features, in addition to the aforementioned connection and transmission related features, for inputting and searching for information, such as ci information, in ACL or tmadmin.

The following are additional features for IPv6.

  • ACL

    Limits client connection IP.

    • Supports IPv6 addresses in a separate configuration file.

    • Specified as [2011::xxx].

  • tmadmin

    CommandDescription
    ciOutputs the IP of a connected client.
    txgwi, ntxgwi, jgwi, ajgwiOutputs the IP of a connected gateway.
    sqiOutputs the client IP of Session Q.
  • client and server API

    APIDescription
    tpgetsocknameRetrieves the socket address, which is used internally by Tmax, from the server or client. Refer to Tmax. "3.1.54. tpgetsockname" for detailed information.
    tpgetpeernameRetrieves the socket address of the peer to which a socket is connected from the server or client. Returns the peer socket address (node) after connecting to Tmax. Refer to Tmax. "3.1.52. tpgetpeername" for detailed information.
    tpgetpeer_ipaddrRetrieves the socket address of the peer node from the server. Refer to Tmax. "3.2.34. tpgetpeer_ipaddr" for detailed information.
    tpgetcliaddr_ipv6Retrieves the port number and IP of the client that corresponds to the clid among the clients connected to Tmax. Refer to Tmax. "3.1.47. tpgetcliaddr_ipv6" for detailed information.
    tpbroadcastSends an unrequested message to all clients registered on Tmax. Refer to Tmax. "3.1.29. tpbroadcast" for detailed information.
    tmadminOutputs statistical information that can be queried in tmadmin, a Tmax management tool. Refer to Tmax. "3.2.4. tmadmin" for detailed information.