Examples of definitions generated by dynamic XCF
This topic contains examples of definitions generated by dynamic XCF in both IPv4 and IPv6 environments. The notes following the examples pertain to both environments.
- IPv4 example 1:This configuration consists of two MVS™ systems (MVS1,MVS2) that are members of the same sysplex. Each MVS host has one TCP/IP stack (TCPIP1 and TCPIP2, respectively). From the syntax descriptions, the following information is needed to generate the dynamic definitions:
- MVS sysclone value
- VTAM® CPName
- Status of XCF in VTAM
- The values specified on the IPCONFIG DYNAMICXCF keyword
Using the following user definitions:MVS1: Sysclone = A1 VTAM Cpname = VTAM1 VTAM has either specified XCFINIT=YES, XCFINIT=DEFINE, or the major node ISTLSXCF is active TCPIP1: PROFILE.TCPIP contains IPCONFIG DYNAMICXCF 9.1.1.1 255.255.255.248 3 MVS2: Sysclone = B2 VTAM Cpname = VTAM2 VTAM has either specified XCFINIT=YES, XCFINIT=DEFINE, or the major node ISTLSXCF is active TCPIP2: PROFILE.TCPIP contains IPCONFIG DYNAMICXCF 9.1.1.2 255.255.255.248 2After both TCPIP1 and TCPIP2 have been started, the following definitions will be generated.
TCPIP1 will generate the equivalent of these definitions:.DEVICE VTAM2 MPCPTP AUTORESTART LINK EZAXCFB2 MPCPTP VTAM2 HOME 9.1.1.1 EZAXCFB2 BSDROUTINGPARMS EZAXCFB2 55296 3 255.255.255.248 0 START VTAM2TCPIP2 will generate:DEVICE VTAM1 MPCPTP AUTORESTART LINK EZAXCFA1 MPCPTP VTAM1 HOME 9.1.1.2 EZAXCFA1 BSDROUTINGPARMS EZAXCFA1 55296 2 255.255.255.248 0 START VTAM1When an XCF link becomes active, each TCPIP will generate a route to the other TCPIP over the XCF link. In this example, when the XCF link becomes active, TCPIP1 will generate a route to TCPIP2 over the XCF link and vice versa.
- IPv4 example 2:
The configuration is the same as Example 1 except a second TCP/IP stack (TCPIP1A) was added to MVS1.
Using the following user definitions:MVS1: Sysclone = A1 VTAM Cpname = VTAM1 VTAM has either specified XCFINIT=YES, XCFINIT=DEFINE, or the major node ISTLSXCF is active TCPIP1: PROFILE.TCPIP contains IPCONFIG DYNAMICXCF 9.1.1.1 255.255.255.248 3 TCPIP1A: PROFILE.TCPIP contains IPCONFIG DYNAMICXCF 9.1.1.3 255.255.255.248 0 MVS2: Sysclone = B2 VTAM Cpname = VTAM2 VTAM has either specified XCFINIT=YES, XCFINIT=DEFINE, or the major node ISTLSXCF is active TCPIP2: PROFILE.TCPIP contains IPCONFIG DYNAMICXCF 9.1.1.2 255.255.255.248 2After both TCPIP1 and TCPIP2 have been started, the following definitions will be generated, as in Example 1.
TCPIP1 will generate the equivalent of these definitions:DEVICE VTAM2 MPCPTP AUTORESTART LINK EZAXCFB2 MPCPTP VTAM2 HOME 9.1.1.1 EZAXCFB2 BSDROUTINGPARMS EZAXCFB2 55296 3 255.255.255.248 0 START VTAM2TCPIP2 will generate:DEVICE VTAM1 MPCPTP AUTORESTART LINK EZAXCFA1 MPCPTP VTAM1 HOME 9.1.1.2 EZAXCFA1 BSDROUTINGPARMS EZAXCFA1 55296 2 255.255.255.248 0 START VTAM1Now, TCPIP1A is started. TCPIP1 and TCPIP2 recognize that TCPIP1A has started. TCPIP1A will generate definitions for both TCPIP1 and TCPIP2. TCPIP1 will generate IUTSAMEH definitions for TCPIP1A. However, TCPIP2 does not need to generate and will not generate any new definitions except for routing information for TCPIP1A. New definitions do not need to be created because the DEVICE and LINK definitions are based on the discovery of a new VTAM node in the sysplex. (The DEVICE name is the VTAM CPName.)
TCPIP1 will generate the equivalent of these definitions:
When the IUTSAMEH connection becomes active, each TCPIP will generate a route to the other TCPIP over the IUTSAMEH connection.DEVICE IUTSAMEH MPCPTP AUTORESTART LINK EZASAMEMVS MPCPTP IUTSAMEH HOME 9.1.1.1 EZASAMEMVS BSDROUTINGPARMS EZASAMEMVS 65535 3 255.255.255.248 0 START IUTSAMEHTCPIP2 does not generate anything.
TCPIP1A will generate:
When the IUTSAMEH connection becomes active, each TCPIP will generate a route to the other TCPIP over the IUTSAMEH connection.DEVICE IUTSAMEH MPCPTP AUTORESTART LINK EZASAMEMVS MPCPTP IUTSAMEH DEVICE VTAM2 MPCPTP AUTORESTART LINK EZAXCFB2 MPCPTP VTAM2 HOME 9.1.1.3 EZAXCFB2 HOME 9.1.1.3 EZASAMEMVS BSDROUTINGPARMS EZAXCFB2 55296 0 255.255.255.248 0 BSDROUTINGPARMS EZASAMEMVS 65535 0 255.255.255.248 0 START IUTSAMEH START VTAM2 - IPv4 example 3: To continue Example 2, add another MVS host (MVS3) with a VTAM node (VTAM3) with one TCP/IP stack (TCPIP3).
MVS3: Sysclone = C3 VTAM Cpname = VTAM3 VTAM has either specified XCFINIT=YES, XCFINIT=DEFINE, or the major node ISTLSXCF is active TCPIP3: PROFILE.TCPIP contains IPCONFIG DYNAMICXCF 9.1.1.3 255.255.255.248 0In this example, the previously active TCP/IP stacks will generate definitions for TCPIP3 because a new VTAM stack has become active in the sysplex. TCPIP3 will generate definitions for definitions for TCPIP1/TCPIP1A and TCPIP2.
TCPIP1 will generate the equivalent of these definitions:DEVICE VTAM3 MPCPTP AUTORESTART LINK EZAXCFC3 MPCPTP VTAM3 HOME 9.1.1.1 EZAXCFC3 BSDROUTINGPARMS EZAXCFC3 55296 3 255.255.255.248 0 START VTAM3TCPIP2 will generate:DEVICE VTAM3 MPCPTP AUTORESTART LINK EZAXCFC3 MPCPTP VTAM3 HOME 9.1.1.2 EZAXCFC3 BSDROUTINGPARMS EZAXCFC3 55296 2 255.255.255.248 0 START VTAM3TCPIP1A will generate:DEVICE VTAM3 MPCPTP AUTORESTART LINK EZAXCFC3 MPCPTP VTAM3 HOME 9.1.1.3 EZAXCFC3 BSDROUTINGPARMS EZAXCFC3 55296 0 255.255.255.248 0 START VTAM3TCPIP3 will generate:DEVICE VTAM1 MPCPTP AUTORESTART LINK EZAXCFA1 MPCPTP VTAM1 DEVICE VTAM2 MPCPTP AUTORESTART LINK EZAXCFB2 MPCPTP VTAM2 HOME 9.1.1.3 EZAXCFA1 HOME 9.1.1.3 EZAXCFB2 BSDROUTINGPARMS EZAXCFA1 55296 0 255.255.255.248 0 BSDROUTINGPARMS EZAXCFB2 55296 0 255.255.255.248 0 START VTAM1 START VTAM2 - IPv4 example 4:This example illustrates how dynamic XCF can generate IUTSAMEH definitions without VTAM having its XCF enabled.
MVS1: Sysclone = A1 (not used in this example) VTAM Cpname = VTAM1 (not used in this example) VTAM has XCFINIT=NO specified and has not activated the major node ISTLSXCF. TCPIP1: PROFILE.TCPIP contains IPCONFIG DYNAMICXCF 9.1.1.1 255.255.255.248 3 TCPIP1A: PROFILE.TCPIP contains IPCONFIG DYNAMICXCF 9.1.1.3 255.255.255.248 0TCPIP1 will generate the equivalent of these definitions:DEVICE IUTSAMEH MPCPTP AUTORESTART LINK EZASAMEMVS MPCPTP IUTSAMEH HOME 9.1.1.1 EZASAMEMVS BSDROUTINGPARMS EZASAMEMVS 65535 3 255.255.255.248 0 START IUTSAMEHTCPIP1A will generate:DEVICE IUTSAMEH MPCPTP AUTORESTART LINK EZASAMEMVS MPCPTP IUTSAMEH HOME 9.1.1.3 EZASAMEMVS BSDROUTINGPARMS EZASAMEMVS 65535 0 255.255.255.248 0 START IUTSAMEH - IPv6 example 1:This configuration consists of two MVS systems (MVS1,MVS2) that are members of the same sysplex. Each MVS host has one TCP/IP stack (TCPIP1 and TCPIP2, respectively). From the syntax descriptions, the following information is needed to generate the dynamic definitions:
- MVS sysclone value
- VTAM CPName
- Status of XCF in VTAM
- The values specified on the IPCONFIG6 DYNAMICXCF keyword
Using the following user definitions:MVS1: Sysclone = A1 VTAM Cpname = VTAM1 VTAM has either specified XCFINIT=YES, XCFINIT=DEFINE, or the major node ISTLSXCF is active TCPIP1: PROFILE.TCPIP contains IPCONFIG6 DYNAMICXCF 2001:0DB8::111:f001 MVS2: Sysclone = B2 Cpname = VTAM2 VTAM has either specified XCFINIT=YES, XCFINIT=DEFINE, or the major node ISTLSXCF is active TCPIP2: PROFILE.TCPIP contains IPCONFIG6 DYNAMICXCF 2001:0DB8::222:f001After both TCPIP1 and TCPIP2 are started, the following definitions are generated.
TCPIP1 generates the equivalent of these definitions:INTERFACE EZ6XCFB2 DEFINE MPCPTP6 TRLENAME VTAM2 IPADDR 2001:0DB8::111:f001 START EZ6XCFB2TCPIP2 generates:INTERFACE EZ6XCFA1 DEFINE MPCPTP6 TRLENAME VTAM1 IPADDR 2001:0DB8::222:f001 START EZ6XCFA1The INTERFACE statement combines the definitions of DEVICE, LINK, and HOME into a single statement for IPv6. When an XCF interface becomes active, each TCP/IP generates a route to the other TCP/IP over the XCF interface. In this example, when the XCF interface becomes active, TCPIP1 generates a route to TCPIP2 over the XCF interface, and TCPIP2 generates a route to TCPIP1 over the XCF interface.
- IPv6 example 2:
The configuration is the same as Example 1 except a second TCP/IP stack (TCPIP1A) is added to MVS1.
Using the following user definitions:MVS1: Sysclone = A1 VTAM Cpname = VTAM1 VTAM has either specified XCFINIT=YES, XCFINIT=DEFINE, or the major node ISTLSXCF is active TCPIP1: PROFILE.TCPIP contains IPCONFIG6 DYNAMICXCF 2001:0DB8::111:f001 TCPIP1A: PROFILE.TCPIP contains IPCONFIG6 DYNAMICXCF 2001:0DB8::111:f002 MVS2: Sysclone = B2 VTAM Cpname = VTAM2 VTAM has either specified XCFINIT=YES, XCFINIT=DEFINE, or the major node ISTLSXCF is active TCPIP2: PROFILE.TCPIP contains IPCONFIG6 DYNAMICXCF 2001:0DB8::222:f001After both TCPIP1 and TCPIP2 are started, the following definitions are generated, as in Example 1.
TCPIP1 generates the equivalent of these definitions:INTERFACE EZ6XCFB2 DEFINE MPCPTP6 TRLENAME VTAM2 IPADDR 2001:0DB8::111:f001 START EZ6XCFB2TCPIP2 generates:INTERFACE EZ6XCFA1 DEFINE MPCPTP6 TRLENAME VTAM1 IPADDR 2001:0DB8::222:f001 START EZ6XCFA1Now, TCPIP1A is started. TCPIP1 and TCPIP2 recognize that TCPIP1A has started. TCPIP1A generates definitions for both TCPIP1 and TCPIP2. TCPIP1 generates IUTSAMEH definitions for TCPIP1A. However, TCPIP2 does not need to generate and does not generate any new definitions, except for routing information, for TCPIP1A. New definitions do not need to be created because the INTERFACE definition is based on the discovery of a new VTAM node in the sysplex. (The TRLENAME is the VTAM CPName.)
TCPIP1 generates the equivalent of these definitions:
When the IUTSAMEH connection becomes active, each TCP/IP generates a route to the other TCP/IP over the IUTSAMEH connection.INTERFACE EZ6SAMEMVS DEFINE MPCPTP6 TRLENAME IUTSAMEH IPADDR 2001:0DB8::111:f001 START EZ6SAMEMVSTCPIP2 does not generate anything.
TCPIP1A generates:
When an XCF interface becomes active, each TCP/IP generates a route to the other TCP/IP over the XCF interface. In this example, when the XCF interface becomes active, TCPIP1A generates a route to TCPIP2 over the XCF interface, and TCPIP2 generates a route to TCPIP1A over the XCF interface. When the IUTSAMEH connection becomes active, each TCP/IP generates a route to the other TCP/IP over the IUTSAMEH connection.INTERFACE EZ6XCFB2 DEFINE MPCPTP6 TRLENAME VTAM2 IPADDR 2001:0DB8::111:f002 START EZ6XCFB2 INTERFACE EZ6SAMEMVS DEFINE MPCPTP6 TRLENAME IUTSAMEH IPADDR 2001:0DB8::111:f002 START EZ6SAMEMVS - IPv6 example 3: To continue Example 2, add another MVS host (MVS3) with a VTAM node (VTAM3) with one TCP/IP stack (TCPIP3).
MVS3: Sysclone = C3 VTAM Cpname = VTAM3 VTAM has either specified XCFINIT=YES, XCFINIT=DEFINE, or the major node ISTLSXCF is active TCPIP3: PROFILE.TCPIP contains IPCONFIG6 DYNAMICXCF 2001:0DB8::333:f001In this example, the previously active TCP/IP stacks generate definitions for TCPIP3 because a new VTAM stack has become active in the sysplex. TCPIP3 generates definitions for TCPIP1, TCPIP1A, and TCPIP2.
TCPIP1 generates the equivalent of these definitions:INTERFACE EZ6XCFC3 DEFINE MPCPTP6 TRLENAME VTAM3 IPADDR 2001:0DB8::111:f001 START EZ6XCFC3TCPIP2 generates:INTERFACE EZ6XCFC3 DEFINE MPCPTP6 TRLENAME VTAM3 IPADDR 2001:0DB8::222:f001 START EZ6XCFC3TCPIP1A generates:INTERFACE EZ6XCFC3 DEFINE MPCPTP6 TRLENAME VTAM3 IPADDR 2001:0DB8::111:f002 START EZ6XCFC3TCPIP3 generates:INTERFACE EZ6XCFA1 DEFINE MPCPTP6 TRLENAME VTAM1 IPADDR 2001:0DB8::333:f001 START EZ6XCFA1 INTERFACE EZ6XCFB2 DEFINE MPCPTP6 TRLENAME VTAM2 IPADDR 2001:0DB8::333:f001 START EZ6XCFB2 - IPv6 example 4:This example illustrates how dynamic XCF can generate IUTSAMEH definitions without VTAM having its XCF enabled.
MVS1: Sysclone = A1 (not used in this example) VTAM Cpname = VTAM1 (not used in this example) VTAM has XCFINIT=NO specified and has not activated the major node ISTLSXCF. TCPIP1: PROFILE.TCPIP contains IPCONFIG6 DYNAMICXCF 2001:0DB8::111:f001 TCPIP1A: PROFILE.TCPIP contains IPCONFIG6 DYNAMICXCF 2001:0DB8::111:f002TCPIP1 generates the equivalent of these definitions:INTERFACE EZ6SAMEMVS DEFINE MPCPTP6 TRLENAME IUTSAMEH IPADDR 2001:0DB8::111:f001 START EZ6SAMEMVSTCPIP1A generates:INTERFACE EZ6SAMEMVS DEFINE MPCPTP6 TRLENAME IUTSAMEH IPADDR 2001:0DB8::111:f002 START EZ6SAMEMVS
- Because the interfaces generated by dynamic XCF use a single IP address, the output of the SIOCGIFCONF ioctl() contains multiple entries with the same IP address. If an application is using the SIOCGIFCONF output to issue bind() to all the entries returned, the application could receive EADDRINUSE on a bind() if there are multiple XCF devices defined by dynamic XCF in the list.
- If you want to define a static route to a link which is generated by dynamic XCF, you must wait until the dynamic devices are started and then use the VARY TCPIP,,OBEYFILE command. The BEGINROUTES statement that refers to a dynamically defined link name or interface name must be in a separate data set from the data set that is used to define the dynamic devices (either the initial profile data set or the data set referenced by a VARY TCPIP,,OBEYFILE command).
- Even though the HOME, BSDROUTINGPARMS and BEGINROUTES definitions are full replacement statements, the definitions generated by dynamic XCF will not replace any existing definitions. Likewise, user-defined HOME, BSDROUTINGPARMS and BEGINROUTES definitions will not affect existing or future definitions generated by dynamic XCF.
- A mix of static and dynamic IPv4 and IPv6 definitions for a device is not allowed. For example, if a static IUTSAMEH IPv4 device and link is defined, an IPv6 dynamic definition for IUTSAMEH will not be created. If a static IUTSAMEH IPv6 interface is defined, an IPv4 dynamic definition for IUTSAMEH will not be created. The same logic also applies for XCF links; a mix of static and dynamic IPv4 and IPv6 definitions is not allowed for an XCF link.
- The address specified on the IPCONFIG6 DYNAMICXCF statement cannot be an existing, statically defined, interface address. If a profile contains an IPv6 interface statement for an address that is also used in the IPCONFIG6 DYNAMICXCF statement, the IPCONFIG6 DYNAMICXCF statement is ignored.