This time, we will see how to manually configure an OSA device in the IBM Z Development & Test Environment emulator and the TCPIP communication with the z/OS system. It is very easy to configure and, this way, we will be able to access applications like z/OSMF, ZOWE, etc.
As a reference we will use the zPDT Redbook.
In Chapter 7 - LANs, different scenarios are shown according to the type of configuration we want. In my case, I will follow the steps of scenario 4 because it allows connection to the z/OS system from other systems in the LAN. This configuration requires a fixed IP for the z/OS system.
We start by configuring the Devmap file.
NOTE: If we generated this file with the utility "create_devmap.pl", at the end of the file we will have configuration examples.
We are going to add a new emulated OSA (emulates a real OSA card used in the mainframe). In this case, it will be an OSA QDIO (OSD).
More information about OSA QDIO:
Add the following configuration in the Devmap file:
[manager]
name awsosa 0022 --path=F0 --pathtype=OSD
device 404 osa osa
device 405 osa osa
device 406 osa osa
The number "0022" can be any hexadecimal that we do not repeat in other devices in the file.
For devices 404 (READ), 405 (WRITE) and 406 (DATAPATH), we must choose some channels that are not in use and correspond to the type "OSA" in the IODF.
Once we start the z/OS system, we will check the VTAM configuration to define this new OSA. In the case of this ADCD version, the OSA is already defined.
Go to the corresponding VTAMLST library. In this case, the definition we were going to include already exists in the OSATRL2 member.
OSATRL1 VBUILD TYPE=TRL
OSATRL1E TRLE LNCTL=MPC,READ=(400),WRITE=(401),DATAPATH=(402), X
PORTNAME=PORTA,MPCLEVEL=QDIO
OSATRL2E TRLE LNCTL=MPC,READ=(404),WRITE=(405),DATAPATH=(406), X
PORTNAME=PORTB,MPCLEVEL=QDIO
For this version of ADCD, the default list of VTAM is loaded (the 00 list). If we check the ATCCON00 member of the same VTAMLST library, we will see that the configuration of the OSATRL2 member is already activated during the startup of VTAM.
If we want a confirmation that it is active, we can use the following command from SDSF:
/D NET,ID=OSATRL2E
Now let's set up TCPIP.
To know the "PROFILE" and "SYSTCPD" you use, we must look at the TCPIP task. In my case, it is:
PROFILE - ADCD.Z24A.TCPPARMS(PROF2)
SYSTCPD - ADCD.Z24A.TCPPARMS(TCPDATA)
The setting I will use in the PROFILE parameters is:
IMPORTANT: The PORTA configuration should not be deleted.
;This device defines the tunnel
DEVICE PORTA MPCIPA
LINK ETH1 IPAQENET PORTA
HOME 10.1.1.2 ETH1
; This second device is optional
DEVICE PORTB MPCIPA
LINK ETH2 IPAQENET PORTB
HOME 192.168.1.35 ETH2
BEGINRoutes
; Destination SubnetMask FirstHop LinkName Size
ROUTE 192.168.1.0 255.255.255.0 = ETH2 MTU 1492
ROUTE 10.0.0.0 255.0.0.0 = ETH1 MTU 1492
ROUTE DEFAULT 192.168.1.1 ETH2 MTU DEFAULTSIZE
ENDRoutes
START PORTA
START PORTB
Now let's change the parameters of the SYSTCPD. In my case, I will change the following (adjust it according to your requirements):
S0W1: HOSTNAME S0W1
DOMAINORIGIN EMUZOS.COM
HOSTNAME is the name of the system.
DOMAINORIGIN is the domain name (for example, we will access this system with the address s0w1.emuzos.com).
Finally, it would be necessary to assign the IP that we have configured in the system to the domain name that we have put, so that it can resolve this name, and add the DNS servers.
This is done in the "RESOLVER" task. To find out which configuration files we are using, we go to SDSF and use the command:
F RESOLVER,DISPLAY
Check the parameter GLOBALTCPIPDATA and GLOBALIPNODES.
We start by editing the file“/etc/hosts”.
Add the IP that we have put in the TCPIP PROFILE and the name that we configure in the TCPDATA member. In addition, we modify the name in the internal IP (10.1.1.2).
In the file "/etc/resolv.conf" we are going to configure the DNS. In my case, I will use Google's DNS servers.
Modify the parameter NSINTERADDR with the Google DNS to resolve names (in case we need it).
Finally, stop and start TCPIP. We must also refresh the RESOLVER configuration.
Stopping and starting TCPIP
P TCPIP
S TCPIP
Refresh RESOLVER settings.
F RESOLVER,REFRESH
Check that everything works.
Ping to router.
Ping to the system name. To check that it returns the correct IP.
Ping to external address. To check that it resolves domains.
Finally, we can connect a terminal to the system IP z/OS (port 23) to confirm that it connects.
We already have the TCPIP connection configured and running on z/OS. I hope you found it easy.