Este documento describe ejemplos de configuraciones de host y router para ejecutar el procedimiento OMPROUTE en el mainframe para intercambiar actualizaciones de ruteo con el resto de la red TCP/IP. OMPROUTE se utiliza a menudo, como en este ejemplo, junto con una dirección IP virtual (VIPA), que permite que la dirección IP del mainframe configurado en los clientes sea independiente de cualquier interfaz de canal. Esto proporciona redundancia para el canal. Originalmente, la implementación TCP/IP del mainframe de IBM sólo admitía Routing Information Protocol (RIP) como protocolo de routing, con el uso del procedimiento OROUTED. El OMPROUTE más reciente admite RIP V1 o V2 y Open Shortest Path First (OSPF). IBM recomienda que OMPROUTE se utilice en lugar de OROUTED, e IBM eliminará eventualmente el soporte para OROUTED.
No hay requisitos específicos para este documento.
La versión de software del IOS® de Cisco que se utilizó para esta configuración fue 12.1(3a)T2 con microcódigo xCPA 27-9, el último en el momento en que se probó. Sin embargo, si utiliza CLAW, esto debería funcionar con cualquier versión del software Cisco IOS. El uso de CMPC+ requiere un mínimo de Cisco IOS Software Release 12.1T.
El router era un Cisco 7206 con un adaptador de puerto xCPA. Alternativamente, un router Cisco 7500 con una tarjeta CIP podría utilizarse con cambios menores en la configuración, como se indica más adelante en este documento.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
For more information on document conventions, refer to the Cisco Technical Tips Conventions.
La configuración de OMPROUTE en el mainframe es muy similar a la configuración de OROUTED. OMPROUTE también utiliza un mínimo de dos archivos de configuración. Debe señalar la ubicación de estos archivos de configuración, en el espacio de direcciones OMVS, con estas dos variables de entorno:
export resolver_conf=/etc/resolv.conf
export omproute_file=/etc/omproute.conf
Este es un ejemplo del contenido de resol_conf:
TCPJobName TCPIP DomainOrigin cisco.com domain cisco.com Datasetprefix TCPIP HostName P390 Messagecase mixed
El omproute_file dependerá de si se está utilizando RIP o OSPF. Este es un ejemplo de configuración para RIP:
; Originate_RIP_Default Condition=Always Cost=1 ; RIP_Interface IP_Address=10.64.3.34 Name=LDIPTG Subnet_Mask=255.255.255.240 Receive_Dynamic_Nets=YES Receive_Dynamic_Subnets=YES MTU=1470 Destination_Addr=10.64.3.33 ; RIP_Interface IP_Address=10.64.3.17 Name=VIPALINK Subnet_Mask=255.255.255.240 MTU=1470 ;
Para OSPF, hay más opciones de configuración disponibles, que incluyen la capacidad de hacer que el mainframe actúe como un área stub. Esto puede reducir significativamente las actualizaciones de ruteo de carga que se colocan en el canal cuando muchas particiones lógicas (LPARs) se conectan a través del mismo canal. Aquí tiene un ejemplo:
Area Area_Number=0.0.0.0 Authentication_Type=None Stub_Area=NO ; Comparison=Type2 ; AS_Boundary_Routing Import_Subnet_Routes=YES Import_Direct_Routes=YES ; OSPF_Interface IP_Address=10.64.3.34 Name=LDIPTG Subnet_Mask=255.255.255.240 Attaches_To_Area=0.0.0.0 MTU=1470 Destination_Addr=10.64.3.33 Hello_Interval=30 Dead_Router_Interval=120 ; OSPF_Interface IP_Address=10.64.3.17 Name=VIPALINK Subnet_Mask=255.255.255.240
El conjunto de datos del perfil TCP/IP no requiere ninguna configuración especial para OMPROUTE, excepto el hecho de que debe comentar toda la configuración de ruta estática y predeterminada y la sección BSDROUTINGPARMS (que sólo utiliza OROUTED). Este extracto muestra sólo lo que se debe comentar y los parámetros a los que se refieren los archivos de configuración OMPROUTE:
TCPIP Profile dataset --------------------- ----------------------------------------------------------------------- ; Hardware definitions: ----------------------------------------------------------------------- ; NOTE: To use these device and link statements, update the statements ; to reflect your installation configuration and remove the semicolon ; DEVICE DIPTG MPCPTP LINK LDIPTG MPCPTP DIPTG DEVICE VIPADEV VIRTUAL 0 LINK VIPALINK VIRTUAL 0 VIPADEV ; ; ; ----------------------------------------------------------------------- ; ; HOME Internet (IP) addresses of each link in the host. ; ; NOTE: To use this home statement, update the ipaddress and linknames ; to reflect your installation configuration and remove the semicolon ; HOME 10.64.3.17 VIPALINK 10.64.3.34 LDIPTG ; ----------------------------------------------------------------------- ; ; IP routing information for the host. All static IP routes should ; be added here. ; ; NOTE: To use this GATEWAY statement, update the addresses and links ; to reflect your installation configuration and remove the semicolon ; ; GATEWAY ; ; Direct Routes - Routes that are directly connected to my interfaces. ; ; Network First Hop Link Name Packet Size Subnet Mask Subnet Value ; 10 = CIS1 1500 0.255.255.0 0.101.1 ; 10 = LDIPTG 1500 0.255.255.240 0.64.3.32 ; 9 = LIS1 1500 0.255.255.0 0.117.56.0 ; 130.50 = TR1 2000 0.0.255.0 0.0.10.0 ; 193.5.2 = ETH1 1500 0 ; 9 = FDDI1 4000 0.255.255.0 0.67.43.0 ; 193.7.2.2 = SNA1 2000 HOST ; ; Indirect Routes - Routes that are reachable through routers on my ; network. ; ; Network First Hop Link Name Packet Size Subnet Mask Subnet Value ; DEFAULTNET 10.64.3.33 LDIPTG DEFAULTSIZE 0 ; 193.12.2 130.50.10.1 TR1 2000 0 ; 10.5.6.4 193.5.2.10 ETH1 1500 HOST ; ; Default Route - All packets to an unknown destination are routed ; through this route. ; ; Network First Hop Link Name Packet Size Subnet Mask Subnet Value ; DEFAULTNET 9.67.43.1 FDDI1 DEFAULTSIZE 0 ; ; ----------------------------------------------------------------------- ; ; orouted Routing Information ; ; if you are using orouted, comment out the GATEWAY statement and ; update the BSDROUTINGPARMS statement to reflect your installation ; configuration and remove the semicolon ; ; Link Maxmtu Metric Subnet Mask Dest Addr ; BSDROUTINGPARMS false ; LDIPTG 1500 0 255.255.255.240 10.64.3.33 ; VIPALINK 1500 0 255.255.255.240 0 ; TR1 2000 0 255.255.255.0 0 ; ETH1 1500 0 255.255.255.0 0 ; FDDI1 DEFAULTSIZE 0 255.255.255.0 0 ; ENDBSDROUTINGPARMS !--- Note that all of the last two sections have been commented out.
Las actualizaciones de ruteo se pueden intercambiar a través de conexiones CLAW o CMPC+. Si utiliza CLAW, no se requiere ninguna configuración adicional en el mainframe. Este ejemplo utiliza CMPC, que requiere una entrada de la lista de recursos de transporte (TRL) de VTAM. Este es el miembro VTAM:
DIPTGTRL VBUILD TYPE=TRL * * DIPTG TRLE LNCTL=MPC,MAXBFRU=16,READ=(E24),WRITE=(E25) *
La TRL se debe activar antes de que se inicie la tarea TCPIP start. Por ejemplo:
V NET,ACT,ID=DIPTRL1,UPDATE=ALL IST097I VARY ACCEPTED ISTTRL ACTIVE
A continuación, active la tarea TCP/IP iniciada con el comando S TCPIP MVS console. Una vez que se ejecuta la tarea TCP/IP iniciada, se puede iniciar el procedimiento OMPROUTE, ya sea con el uso del lenguaje de control de trabajo (JCL) como tarea inicial o desde el espacio de dirección OMVS. Para comenzar dentro de OMVS, ejecute estos comandos:
cd /usr/lpp/tcpip/sbin omproute &
Para verificar que OMPROUTE se está ejecutando, ejecute este comando de consola, donde p390 es el ID de usuario bajo el cual se inició el demonio OMPROUTE:
d omvs,u=p390
Tanto CLAW como CMPC deben configurarse específicamente para enviar broadcasts a través del canal, con la palabra clave broadcast. Por ejemplo, para CLAW:
claw 0100 20 10.101.1.10 P390D C7000D TCPIP TCPIP broadcast
En este ejemplo, CMPC+ está en uso, por lo que estas son las partes relevantes de la configuración del router:
! interface Channel2/0 ip address 10.64.3.33 255.255.255.240 ip ospf network point-to-multipoint no keepalive cmpc 0100 24 DIPTG READ cmpc 0100 25 DIPTG WRITE tg DIPTG ip 10.64.3.34 10.64.3.33 broadcast router ospf 1 network 10.0.0.0 0.255.255.255 area 0 !
Si éste hubiera sido un router Cisco 7500 con una tarjeta CIP en lugar de un 7200 con un adaptador de puerto xCPA, la instrucción tg se habría configurado en la interfaz virtual /2. Observe el comando ip ospf network point-to-multipoint, que es necesario para que OSPF funcione correctamente. La interfaz de canal se considera una interfaz multipunto al igual que Frame Relay. Si no desea ejecutar OSPF en toda la red, sólo puede ejecutarlo en la propia interfaz de canal y utilizar la redistribución entre otros protocolos de ruteo. Por ejemplo:
! router eigrp 1 redistribute ospf 1 passive-interface Channel2/0 network 10.0.0.0 no eigrp log-neighbor-changes ! router ospf 1 log-adjacency-changes redistribute eigrp 1 network 10.64.3.33 0.0.0.0 area 0 !
diplodocus# show extended channel 2/0 status Path: 0100 -- ESTABLISHED Command Selective System Device CU Dev Connects Retries Cancels Reset Reset Errors Busy 24 30 21 1 0 0 0 0 25 29 0 1 0 0 0 0 Blocks Bytes Dropped Blk Memd Dev-Lnk Read Write Read Write Read Write wait Con 24-00 29 6 3484 789 0 0 0 Y 25-00 9 29 801 3920 0 0 0 Y Path 0100 Total: 38 35 4285 4709 0 0 0 Last statistics 0 seconds old, next in 10 seconds diplodocus# show extended channel 2/0 cmpc Path Dv TGName Dir Bfrs Status CMPC 0100 24 DIPTG READ 16 Active+ CMPC 0100 25 DIPTG WRITE 16 Active+ diplodocus# show ip ospf i Channel2/0 is up, line protocol is up Internet Address 10.64.3.33/28, Area 0 Process ID 1, Router ID 200.100.100.9, Network Type POINT_TO_MULTIPOINT, Cost: 4 Transmit Delay is 1 sec, State POINT_TO_MULTIPOINT, Timer intervals configured, Hello 30, Dead 120, Wait 120, Retransmit 5 Hello due in 00:00:10 Index 1/1, flood queue length 0 Next 0x0(0)/0x0(0) Last flood scan length is 1, maximum is 1 Last flood scan time is 0 msec, maximum is 0 msec Neighbor Count is 1, Adjacent neighbor count is 1 Adjacent with neighbor 10.64.3.17 Suppress hello for 0 neighbor(s) diplodocus# show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 10.64.3.17 1 FULL/ - 00:01:35 Neighbor is up for 00:04:01 10.64.3.34 Channel2/0 diplodocus# show ip route Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area * - candidate default, U - per-user static route, o - ODR P - periodic downloaded static route Gateway of last resort is 10.64.3.1 to network 0.0.0.0 1.0.0.0/27 is subnetted, 1 subnets C 1.1.1.0 is directly connected, Loopback1 200.100.100.0/29 is subnetted, 1 subnets C 200.100.100.8 is directly connected, Loopback0 10.0.0.0/8 is variably subnetted, 9 subnets, 3 masks D 10.0.0.0/8 is a summary, 00:06:40, Null0 C 10.64.3.0/28 is directly connected, Ethernet6/0 O E2 10.64.3.17/32 [110/1] via 10.64.3.34, 00:03:57, Channel2/0 O 10.64.3.16/28 [110/5] via 10.64.3.34, 00:03:57, Channel2/0 C 10.64.3.32/28 is directly connected, Channel2/0 S 10.64.3.34/32 [1/0] via 10.64.3.34, Channel2/0 S 10.64.3.37/32 [1/0] via 10.64.3.37, Channel2/0 C 10.64.3.48/28 is directly connected, Serial1/3.1 C 10.64.3.128/28 is directly connected, Serial1/3.2 S* 0.0.0.0/0 [1/0] via 10.64.3.1
D NET,TRL IST097I DISPLAY ACCEPTED ST350I DISPLAY TYPE = TRL 042 IST1314I TRLE = DIPTG STATUS = ACTIV CONTROL = MPC IST1454I 1 TRLE(S) DISPLAYED IST314I END D NET,TRL,TRLE=DIPTG IST097I DISPLAY ACCEPTED IST075I NAME = DIPTG, TYPE = TRLE 045 IST486I STATUS= ACTIV, DESIRED STATE= ACTIV IST087I TYPE = LEASED , CONTROL = MPC , HPDT = YES IST1715I MPCLEVEL = HPDT MPCUSAGE = SHARE IST1577I HEADER SIZE = 4092 DATA SIZE = 60 STORAGE = ***NA*** IST1221I WRITE DEV = 0E25 STATUS = ACTIVE STATE = ONLINE IST1577I HEADER SIZE = 4092 DATA SIZE = 60 STORAGE = DATASPACE IST1221I READ DEV = 0E24 STATUS = ACTIVE STATE = ONLINE IST314I END
netstat route muestra la tabla de ruteo. Por ejemplo:
===> netstat route EZZ2350I MVS TCP/IP NETSTAT CS V2R7 TCPIP NAME: TCPIP 15:56:33 EZZ2755I Destination Gateway Flags Refcnt Interface EZZ2756I ----------- ------- ----- ------ --------- EZZ2757I 10.0.0.0 10.64.3.33 UG 000000 LDIPTG EZZ2757I 10.64.3.32 0.0.0.0 U 000000 LDIPTG EZZ2757I 10.64.3.33 0.0.0.0 UH 000000 LDIPTG
netstat device muestra el estado y así sucesivamente de todos los dispositivos o links conectados. Por ejemplo:
===> netstat device EZZ2350I MVS TCP/IP NETSTAT CS V2R7 TCPIP NAME: TCPIP 15:58:04 EZZ2760I DevName: LOOPBACK DevType: LOOPBACK DevNum: 0000 EZZ2761I LnkName: LOOPBACK LnkType: LOOPBACK Status: Ready EZZ2762I NetNum: 0 QueSize: 0 ByteIn: 0000004278 ByteOut: 0000004278 EZZ2768I BSD Routing Parameters: EZZ2769I MTU Size: 00000 Metric: 00 EZZ2770I DestAddr: 0.0.0.0 SubnetMask: 0.0.0.0 EZZ2810I Multicast Specific: EZZ2811I Multicast Capability: No EZZ2760I DevName: DIPTG DevType: MPC DevNum: 0000 EZZ2761I LnkName: LDIPTG LnkType: MPC Status: Ready EZZ2762I NetNum: 0 QueSize: 0 ByteIn: 0000001848 ByteOut: 0000001936 EZZ2768I BSD Routing Parameters: EZZ2769I MTU Size: 01470 Metric: 01 EZZ2770I DestAddr: 0.0.0.0 SubnetMask: 255.255.255.240 EZZ2810I Multicast Specific: EZZ2811I Multicast Capability: Yes EZZ2812I Group RefCnt EZZ2813I ----- ------ EZZ2814I 224.0.0.5 0000000001 EZZ2814I 224.0.0.1 0000000001 EZZ2760I DevName: VIPADEV DevType: VIPA DevNum: 0000 EZZ2761I LnkName: VIPALINK LnkType: VIPA Status: Ready EZZ2762I NetNum: 0 QueSize: 0 ByteIn: 0000000000 ByteOut: 0000000000 EZZ2768I BSD Routing Parameters: EZZ2769I MTU Size: 01470 Metric: 01 EZZ2770I DestAddr: 0.0.0.0 SubnetMask: 255.255.255.240 EZZ2810I Multicast Specific: EZZ2811I Multicast Capability: No
Hay muchas más opciones disponibles con netstat. ¿Puede emitir el netstat ? para mostrarlos todos.