IBM Books

Installation and Configuration Supplement


Configuring TCP/IP on the Client

This section assumes that TCP/IP is functional on the client and server workstations. See Software Requirements for the communication protocol requirements for your platform. See Possible Client-to-Server Connectivity Scenarios for the supported communication protocols for your particular client and server.

To set up TCP/IP communications on a DB2 client, perform the following steps:

step  1.

Identify and record parameter values.

step  2.

Configure the client:

  1. Resolve the server's host address.

  2. Update the services file.

  3. Catalog a TCP/IP node.

  4. Catalog the database.

step  3.

Test the connection between the client and server.



Figure hint not displayed.

Due to the characteristics of the TCP/IP protocol, TCP/IP may not be immediately notified of the failure of a partner on another host. As a result, a client application accessing a remote DB2 server using TCP/IP, or the corresponding agent at the server, may sometimes appear to be hung. DB2 uses the TCP/IP SO_KEEPALIVE socket option to detect when there has been a failure and the TCP/IP connection has been broken.

If you are experiencing problems with your TCP/IP connection, refer to the Troubleshooting Guide for information on how to adjust this parameter and other common TCP/IP problems.

Step 1. Identify and Record Parameter Values

As you proceed through the configuration steps, complete the Your Value column in the following table. You can fill in some of the values before you start configuring this protocol.

Table 8. TCP/IP Values Required at the Client
Parameter Description Sample Value Your Value

Host Name

  • Hostname (hostname) or

  • IP address (ip_address)

Use the hostname or ip_address of the remote server workstation.

To resolve this parameter:

  • Enter the hostname command at the server to obtain the hostname.

  • Contact your network administrator to obtain the ip_address or enter the ping hostname command.

 serverhost

or

9.21.15.235

 

Service Name

  • Connection Service name (svcename) or

  • Port number/Protocol (port_number/tcp)

Values required in the services file.

The Connection Service name is an arbitrary name that represents the Connection port number (port_number) on the client.

The port number for the client must be the same as the port number that the svcename parameter maps to in the services file at the server. (The svcename parameter is located in the database manager configuration file on the server.) This value must not be in use by any other applications, and must be unique within the services file.

Contact your database administrator for the values used to configure the server.

 

server1

 

 

 

 

 

3700/tcp

 

 
Node name (node_name)

A local alias, or nickname, that describes the node to which you are trying to connect. You can choose any name you want; however, all node name values within your local node directory must be unique.

db2node  

Step 2. Configure the Client

The following steps configure this protocol on the client. Replace the sample values with your worksheet values.

A. Resolve the Server's Host Address



Figure car not displayed.

If your network has a name server, or you are planning to directly specify the IP address (ip_address) of the server, skip this step and proceed to Step B. Update the Services File.

The client must know the address of the server to which it is attempting to establish communications. If a name server does not exist on your network, you may directly specify a hostname that maps to the IP address (ip_address) of the server in the local hosts file. See Table 9 for the location of the hosts file for your particular platform.

Figure hint not displayed.

If you are planning on supporting a UNIX client that is using Network Information Services (NIS), and you are not using a name server on your network, you must update the hosts file located on your NIS master server.

Table 9. Location of the Local Hosts and Services Files
Platform Location
OS/2 Specified by the etc environment variable. Enter the set etc command to determine the location of your local hosts or services files.
Windows NT Located in the winnt\system32\drivers\etc directory.
Windows 9x Located in the windows directory.
UNIX Located in the /etc directory.

Edit the client's hosts file and add an entry for the server's hostname. For example:

   9.21.15.235     serverhost   # host address for serverhost

where:

9.21.15.235
represents the ip_address

serverhost
represents the hostname

#
represents a comment describing the entry


Figure hint not displayed.

If the server is not in the same domain as the client, you must provide a fully qualified domain name such as serverhost.vnet.ibm.com, where vnet.ibm.com is the domain name.

Step B. Update the Services File



Figure car not displayed.

If you are planning to catalog a TCP/IP node using a port number (port_number), skip this step and go to Step C. Catalog a TCP/IP Node.

Using a local text editor, add the Connection Service name and port number to the client's services file for TCP/IP support. For example:

   server1  3700/tcp  # DB2 connection service port

where:

server1
represents the Connection Service name

3700
represents the Connection port number

tcp
represents the communication protocol that you are using

#
represents a comment describing the entry

The port number used on the client must match the port number used on the server.

Figure hint not displayed.

If you are planning on supporting a UNIX client that uses Network Information Services (NIS), you must update the services file located on your NIS master server.

The file called services is located in the same directory as the local hosts file that you may have edited in A. Resolve the Server's Host Address.

See Table 9 for the location of the services file for your particular platform.

Step C. Catalog a TCP/IP Node

You must add an entry to the client's node directory to describe the remote node. This entry specifies the chosen alias (node_name), the hostname (or ip_address), and the svcename (or port_number) that the client will use to access the remote server.

To catalog a TCP/IP node, perform the following steps:

step  1.

Log on to the system with a valid DB2 user ID. For more information, see Appendix G. Naming Rules.

Figure hint not displayed.

If you are adding a database to a system that has a DB2 or DB2 Connect server product installed, log on to this system as a user with System Administrative (SYSADM) or System Controller (SYSCTRL) authority on the instance. For more information, see Working with the System Administrative Group.

This restriction is controlled by the catalog_noauth database manager configuration parameter. For more information, refer to the Administration Guide.

step  2.

If you are using a UNIX client, set up the instance environment and invoke the DB2 command line processor. Run the start-up script as follows:

   . INSTHOME/sqllib/db2profile    (for Bash, Bourne or Korn shell)
   source INSTHOME/sqllib/db2cshrc (for C shell)

where INSTHOME is the home directory of the instance.

step  3.

Catalog the node by entering the following commands:

   catalog tcpip node node_name remote [hostname|ip_address] \
   server [svcename|port_number]
   terminate

For example, to catalog the remote server serverhost on the node called db2node, using the service name server1, enter the following:

   catalog tcpip node db2node remote serverhost server server1
   terminate

To catalog a remote server with the IP address 9.21.15.235 on the node called db2node, using the port number 3700, enter the following:

   catalog tcpip node db2node remote 9.21.15.235 server 3700
   terminate



Figure hint not displayed.

If you need to change values that were set with the catalog node command, perform the following steps:

step  1.

Run the uncatalog node command in the command line processor as follows:

   uncatalog node node_name

step  2.

Recatalog the node with the values that you want to use.

Step D. Catalog the Database

Before a client application can access a remote database, the database must be cataloged on the server node and on any client nodes that will connect to it. When you create a database, it is automatically cataloged on the server with the database alias (database_alias) the same as the database name (database_name). The information in the database directory, along with the information in the node directory, is used on the client to establish a connection to the remote database.

To catalog a database on the client, perform the following steps:

step  1.

Log on to the system with a valid DB2 user ID. For more information, see Appendix G. Naming Rules.

Figure hint not displayed.

If you are adding a database to a system that has a DB2 or DB2 Connect server product installed, log on to this system as a user with System Administrative (SYSADM) or System Controller (SYSCTRL) authority on the instance. For more information, see Working with the System Administrative Group.

This restriction is controlled by the catalog_noauth database manager configuration parameter. For more information, refer to the Administration Guide.

step  2.

Fill in the Your Value column in the following worksheet.

Table 10. Worksheet: Parameter Values for Cataloging Databases
Parameter Description Sample Value Your Value
Database name (database_name) The database alias (database_alias) of the remote database. When you create a database, it is automatically cataloged on the server with the database alias (database_alias) the same as the database name (database_name). sample  
Database alias (database_alias) An arbitrary local nickname for the remote database, on the client. If you do not provide one, the default is the same as the database name (database_name). This is the name that you use when connecting to a database from a client. tor1  
Node name (node_name) The name of the node directory entry that describes where the database resides. Use the same value for node name (node_name) that you used to catalog the node in the previous step. db2node  

step  3.

If you are using a UNIX client, set up the instance environment and invoke the DB2 command line processor. Run the start-up script as follows:

   . INSTHOME/sqllib/db2profile    (for Bash, Bourne or Korn shell)
   source INSTHOME/sqllib/db2cshrc (for C shell)

where INSTHOME represents the home directory of the instance.

step  4.

Catalog the database by entering the following commands:

   catalog database database_name as database_alias at node node_name
   terminate

For example, to catalog a remote database called sample so that it has the alias tor1, on the node db2node, enter the following commands:

   catalog database sample as tor1 at node db2node
   terminate


Figure hint not displayed.

If you need to change values that were set with the catalog database command, perform the following steps:

step  a.

Run the uncatalog database command as follows:

   uncatalog database database_alias

step  b.

Recatalog the database with the value that you want to use.

Step 3. Test the Client-to-Server Connection

When you have finished configuring the client for communications, perform the following steps to test the connection:

Figure hint not displayed.

You will need to connect to a remote database to test the connection.

step  1.

Start the database manager by entering the db2start command on the server (if it was not automatically started at boot time).

step  2.

Enter the following command to connect the client to the remote database:

   connect to database_alias user userid using password

The values for userid and password must be valid for the system on which they are authenticated. By default, authentication takes place on the server for a DB2 server and on the host or AS/400 machine for a DB2 Connect server.

If the connection is successful, you will get a message showing the name of the database to which you have connected. You are now able to retrieve data from that database. For example, to retrieve a list of all the table names listed in the system catalog table, enter the following SQL command in the Command Center or command line processor:

   "select tabname from syscat.tables"

When you are finished using the database connection, enter the connect reset command to end the database connection.

Troubleshooting the Client-to-Server Connection

If the connection fails, check the following items:

At the server:

__  1.

The db2comm registry value includes the value tcpip.

Figure hint not displayed.

Check the settings for the db2comm registry value by entering the db2set DB2COMM command. For more information, refer to the Administration Guide.

__  2.

The services file was updated correctly.

__  3.

The service name (svcename) parameter was updated correctly in the database manager configuration file.

__  4.

The security service was started. Enter the net start db2ntsecserver command (for Windows NT servers only).

__  5.

The database was created and cataloged properly.

__  6.

The database manager was stopped and started again (enter the db2stop and db2start commands on the server).



Figure hint not displayed.

If there are problems starting a protocol's connection managers, a warning message appears and the error messages are logged in the db2diag.log file.

For more information on the db2diag.log file, refer to the Troubleshooting Guide.

At the client:

__  1.

If used, the services and hosts files were updated correctly.

__  2.

The node was cataloged with the correct hostname (hostname) or IP address (ip_address).

__  3.

The port number must match, or the service name must map to, the port number used on the server.

__  4.

The node name (node_name) that was specified in the database directory points to the correct entry in the node directory.

__  5.

The database was cataloged properly, using the server's database alias (database_alias) that was cataloged when the database was created on the server, as the database name (database_name) on the client.

If the connection still fails after you verify these items, refer to the Troubleshooting Guide.


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]

[ DB2 List of Books | Search the DB2 Books ]