IPv6 Configuration

This chapter describes IPv6 provided by Tmax.

1. Overview

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

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

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 (such as OS, router, and switch) vendors.

  • 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.

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.)

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.

    Components Description

    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 Tmax Gateway Guide (TCP/IP).)

    • 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.

    Components Description

    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 (TCP/IP).)

    • 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.

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

    Command Description

    ci

    Outputs the IP of a connected client.

    txgwi, ntxgwi, jgwi, ajgwi

    Outputs the IP of a connected gateway.

    sqi

    Outputs the client IP of Session Q.

  • client and server API

    API Description

    tpgetsockname

    Retrieves the socket address, which is used internally by Tmax, from the server or client. For more information, refer to "3.1.72. tpget sockname" in Tmax Reference Guide.

    tpgetpeername

    Retrieves 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. For more information, refer to "3.1.68. tpgetpeername" in Tmax Reference Guide.

    tpgetpeer_ipaddr

    Retrieves the socket address of the peer node from the server. For more information, refer to "3.2.35. tpgetpeer_ipaddr" in Tmax Reference Guide.

    tpgetcliaddr_ipv6

    Retrieves the port number and IP of the client that corresponds to the clid among the clients connected to Tmax. For more information, refer to "3.1.64. tpgetcliaddr_ipv6" in Tmax Reference Guide.

    tpbroadcast

    Sends an unrequested message to all clients registered on Tmax. For more information, refer to "3.1.46. tpbroadcast" in Tmax Reference Guide.

    tmadmin

    Outputs statistical information that can be queried in tmadmin, a Tmax management tool. For more information, refer to "3.2.4. tmadmin" in Tmax Reference Guide.