When customizing a Dynamic Capacity Intelligence (DCI) Controller region JCL, a TCP port number must be provided. There are some TCP commands that can help determine if a port is already in use.
IP ports cannot be shared between different regions. Moreover, a port can be reserved to a specific region.
DCI 2.0 and above on z/OS
NETSTAT CONN (PORT nnnn command shows if the port is already in use; for example:
NETSTAT CONN (PORT 21
MVS TCP/IP NETSTAT CS V2R5 TCPIP Name: TCPIP
User Id Conn State
------- ---- -----
FTP 00000044 Establsh
Local Socket: ::ffff:192.0.2.1..21
Foreign Socket: ::ffff:198.51.100.1..46044
FTP 00000045 Listen
Local Socket: ::..21
Foreign Socket: ::..0
NETSTAT PORTL (PORT nnnn command shows if the port is reserved to a specific jobname, for example:
NETSTAT PORTL (PORT 21
MVS TCP/IP NETSTAT CS V2R5 TCPIP Name: TCPIP
Port# Prot User Flags Range SAF Name
----- ---- ---- ----- ----- --------
21 TCP FTP DA
The above commands can be run in batch:
//NETSTAT EXEC PGM=IKJEFT01
//SYSPRINT DD SYSOUT=*
//SYSTSPRT DD SYSOUT=*
//SYSTERM DD DUMMY
//SYSTSIN DD *
NETSTAT CONN (PORT 21
NETSTAT PORTL (PORT 21
/*
If the DCI Control region is started with a TCP port that is "reserved" to a different region, then the following message is returned:
DCI0999E: ERROR BIND : (0000000D/FFFFFFFF)
See "DCI1322E and DCI0999E ERROR BIND 0000000D on DCI Controller joblog" article for additional details.