Troubleshooting
Problem
Incorrect TCP/IP settings may prevent the IBM i from communicating with itself over the localhost interface (127.0.0.1).
Symptom
DDM/DRDA connection initialization to Loopback interface fails.
Environment
IBM i
Diagnosing The Problem
For a job attempting a DDM/DRDA connection to a relational database alias pointing to the *LOCAL RDB, it may fail with these messages:
CPE3447 Diagnostic 10 03/22/23 20:51:42.030633 QRWXDLL QSYS *STMT QRWXDLL QSYS *STMT
From user . . . . . . . . . : TheUSRPRF
From module . . . . . . . . : QRWXDLL
From procedure . . . . . . : SndErrnoMsg__FPcT1
Statement . . . . . . . . . : 13
To module . . . . . . . . . : QRWXDLL
To procedure . . . . . . . : SndErrnoMsg__FPcT1
Statement . . . . . . . . . : 13
Message . . . . : A remote host did not respond within the timeout period.
CPD3E34 Diagnostic 40 03/22/23 20:51:42.032368 QRWXDLL QSYS *STMT QRWXDLL QSYS *STMT
From user . . . . . . . . . : TheUSRPRF
From module . . . . . . . . : QRWXDLL
From procedure . . . . . . : SndCPD3Exx__FPV7QRWERCBiPi
Statement . . . . . . . . . : 30
To module . . . . . . . . . : QRWXDLL
To procedure . . . . . . . : SndCPD3Exx__FPV7QRWERCBiPi
Statement . . . . . . . . . : 30
Message . . . . : DDM TCP/IP communications error occurred on getsockname()
- Get sock name.
Cause . . . . . : Error code (errno) 3447 was received while processing the
getsockname() - Get sock name function for DRDA/DDM TCP/IP communications.
Recovery . . . : See any previously listed message(s) to determine the
cause of the error; if necessary, correct the error and issue the request
again.
CPF9162 Escape 40 03/22/23 20:51:42.032583 QCNSMCTL QSYS *STMT QRWSARDB QSYS *STMT
From user . . . . . . . . . : TheUSRPRF
From module . . . . . . . . : QCNSMCTL
From procedure . . . . . . : QCNSMCTL
Statement . . . . . . . . . : 3613
To module . . . . . . . . . : QRWSARDB
To procedure . . . . . . . : CNNRMT
Statement . . . . . . . . . : 12610
Message . . . . : Cannot establish DDM connection with remote system.
Cause . . . . . : An error occurred during distributed data management (DDM)
initialization while attempting to establish a connection at the remote
location ::FFFF:127.0.0.1.
From user . . . . . . . . . : TheUSRPRF
From module . . . . . . . . : QRWXDLL
From procedure . . . . . . : SndErrnoMsg__FPcT1
Statement . . . . . . . . . : 13
To module . . . . . . . . . : QRWXDLL
To procedure . . . . . . . : SndErrnoMsg__FPcT1
Statement . . . . . . . . . : 13
Message . . . . : A remote host did not respond within the timeout period.
CPD3E34 Diagnostic 40 03/22/23 20:51:42.032368 QRWXDLL QSYS *STMT QRWXDLL QSYS *STMT
From user . . . . . . . . . : TheUSRPRF
From module . . . . . . . . : QRWXDLL
From procedure . . . . . . : SndCPD3Exx__FPV7QRWERCBiPi
Statement . . . . . . . . . : 30
To module . . . . . . . . . : QRWXDLL
To procedure . . . . . . . : SndCPD3Exx__FPV7QRWERCBiPi
Statement . . . . . . . . . : 30
Message . . . . : DDM TCP/IP communications error occurred on getsockname()
- Get sock name.
Cause . . . . . : Error code (errno) 3447 was received while processing the
getsockname() - Get sock name function for DRDA/DDM TCP/IP communications.
Recovery . . . : See any previously listed message(s) to determine the
cause of the error; if necessary, correct the error and issue the request
again.
CPF9162 Escape 40 03/22/23 20:51:42.032583 QCNSMCTL QSYS *STMT QRWSARDB QSYS *STMT
From user . . . . . . . . . : TheUSRPRF
From module . . . . . . . . : QCNSMCTL
From procedure . . . . . . : QCNSMCTL
Statement . . . . . . . . . : 3613
To module . . . . . . . . . : QRWSARDB
To procedure . . . . . . . : CNNRMT
Statement . . . . . . . . . : 12610
Message . . . . : Cannot establish DDM connection with remote system.
Cause . . . . . : An error occurred during distributed data management (DDM)
initialization while attempting to establish a connection at the remote
location ::FFFF:127.0.0.1.
Resolving The Problem
In the above case, the TCP/IP configuration problem was that the local host table had the TCP/IP short name resolving to one local IP interface and the fully-qualified (long name) resolving to another IP interface which did not exist on the local system.
Both the short and fully qualified host names need to resolve to the same IP address.
These settings can be found using command:
===> CFGTCP
...and options "12. Change TCP/IP domain information" and "10. Work with TCP/IP host table entries"
Within option "12. Change TCP/IP domain information", additionally verify that the "Host name search priority" is set to *LOCAL.
Related Information
Document Location
Worldwide
[{"Type":"MASTER","Line of Business":{"code":"LOB57","label":"Power"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG60","label":"IBM i"},"ARM Category":[{"code":"a8m0z0000000CRKAA2","label":"Data Access-\u003EDDM DRDA"}],"ARM Case Number":"TS012493628","Platform":[{"code":"PF012","label":"IBM i"}],"Version":"All Versions"}]
Was this topic helpful?
Document Information
Modified date:
27 March 2023
UID
ibm16966568