Este documento descreve exemplos de configurações de host e roteador para executar o procedimento OMPROUTE no mainframe para trocar atualizações de roteamento com o resto da rede TCP/IP. O OMPROUTE é frequentemente usado, como neste exemplo, em conjunto com um Endereço IP Virtual (VIPA), que permite que o endereço IP do mainframe configurado nos clientes seja independente de qualquer interface de canal. Isso fornece redundância para o canal. Originalmente, a implementação TCP/IP do mainframe da IBM suportava somente o Routing Information Protocol (RIP) como um protocolo de roteamento, com o uso do procedimento OROUTED. O OMPROUTE mais recente é compatível com RIP V1 ou V2 e Open Shortest Path First (OSPF). A IBM recomenda que o OMPROUTE seja usado em vez de OROUTED, e eventualmente a IBM removerá o suporte para OROUTED.
Não existem requisitos específicos para este documento.
A versão do software Cisco IOS® usada para esta configuração foi 12.1(3a)T2 com microcódigo xCPA 27-9, que foi a mais recente no momento em que isso foi testado. No entanto, se você estiver usando a CLAW, ela deve funcionar com qualquer versão do Cisco IOS Software. O uso do CMPC+ requer um mínimo do Cisco IOS Software Release 12.1T.
O roteador era um Cisco 7206 com um adaptador de porta xCPA. Como alternativa, um roteador Cisco 7500 com uma placa CIP pode ser usado com pequenas alterações na configuração, como observado mais adiante neste 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.
A configuração de OMPROUTE no mainframe é muito semelhante à configuração de OROUTED. O OMPROUTE também usa no mínimo dois arquivos de configuração. Você deve apontar para o local desses arquivos de configuração, no espaço de endereço OMVS, com estas duas variáveis de ambiente:
export resolvedor_conf=/etc/resolv.conf
export omproute_file=/etc/omproute.conf
Este é um exemplo do conteúdo de resolvedor_conf:
TCPJobName TCPIP DomainOrigin cisco.com domain cisco.com Datasetprefix TCPIP HostName P390 Messagecase mixed
O omproute_file dependerá se o RIP ou OSPF está sendo usado. Este é um exemplo de configuração 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 o OSPF, há mais opções de configuração disponíveis, que incluem a capacidade de fazer o mainframe atuar como uma área de stub. Isso pode reduzir significativamente as atualizações de roteamento de carga que são colocadas no canal quando muitas partições lógicas (LPARs) estão se conectando no mesmo canal. Este é um exemplo:
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
O conjunto de dados de perfil TCP/IP não exige nenhuma configuração especial para OMPROUTE, além do fato de que você deve comentar toda a configuração de rota estática e padrão e a seção BSDROUTINGPARMS (que é usada somente por OROUTED). Este extrato mostra apenas o que deve ser comentado e os parâmetros aos quais os arquivos de configuração OMPROUTE se referem:
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.
As atualizações de roteamento podem ser trocadas através de conexões CLAW ou CMPC+. Se você estiver usando a CLAW, nenhuma configuração adicional será necessária no mainframe. Este exemplo usa CMPC, que requer uma entrada de lista de recursos de transporte (TRL) VTAM. Este é o membro VTAM:
DIPTGTRL VBUILD TYPE=TRL * * DIPTG TRLE LNCTL=MPC,MAXBFRU=16,READ=(E24),WRITE=(E25) *
O TRL deve ser ativado antes que a tarefa de início do TCPIP seja iniciada. Por exemplo:
V NET,ACT,ID=DIPTRL1,UPDATE=ALL IST097I VARY ACCEPTED ISTTRL ACTIVE
Em seguida, ative a tarefa de início do TCP/IP com o comando de console S TCPIP MVS. Quando a tarefa de início do TCP/IP estiver em execução, o procedimento OMPROUTE poderá ser iniciado, com o uso de linguagem de controle de tarefas (JCL) como uma tarefa iniciada ou a partir do espaço de endereço OMVS. Para iniciar no OMVS, emita estes comandos:
cd /usr/lpp/tcpip/sbin omproute &
Para verificar se o OMPROUTE está em execução, emita este comando de console, onde p390 é o ID de usuário no qual o demon OMPROUTE foi iniciado:
d omvs,u=p390
O CLAW e o CMPC devem ser especificamente configurados para enviar broadcasts pelo canal, com a palavra-chave broadcast. Por exemplo, para CLAW:
claw 0100 20 10.101.1.10 P390D C7000D TCPIP TCPIP broadcast
Neste exemplo, o CMPC+ está em uso, portanto estas são as partes relevantes da configuração do roteador:
! 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 !
Se este tivesse sido um roteador Cisco 7500 com uma placa CIP em vez de um 7200 com um adaptador de porta xCPA, a instrução tg teria sido configurada na interface virtual /2. Observe o comando ip ospf network point-to-multipoint, necessário para que o OSPF funcione corretamente. A interface do canal é considerada uma interface multiponto muito semelhante ao Frame Relay. Se você não quiser executar o OSPF em toda a rede, poderá executá-lo somente na própria interface de canal e usar a redistribuição entre outros protocolos de roteamento. Por exemplo:
! 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 exibe a tabela de roteamento. Por exemplo:
===> 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
o dispositivo netstat exibe o status e assim por diante de todos os dispositivos ou links conectados. Por exemplo:
===> 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
Há muitas outras opções disponíveis com o netstat. Você pode emitir o netstat ? para exibir todos.