Troubleshooting em Redes Cisco para Iniciantes
16 de setembro de 2011 Alexei C Tavares Certificação, Infraestrutura, Redes
Hoje vamos falar um pouco sobre um tema que assusta muitos técnicos e engenheiros no início de suas carreiras com redes Cisco – o troubleshooting.
No mundo ideal sua rede iria operar continuamente sem nenhum tipo de problema, mas no mundo real todos nós sabemos que isso é impossível. Cedo ou tarde você terá que enfrentar o desafio de identificar e isolar a causa de um problema de mal funcionamento em sua rede e resolver o problema no melhor tempo possível. Por isso é muito importante para todo engenheiro de redes conhecer algumas técnicas e comandos específicos para ajudar nessa tarefa.
Nos próximos parágrafos vamos mostrar alguns comandos básicos, mas extremamente úteis, que você deve ter em mente sempre que for realizar o troubleshooting em uma rede operando com roteadores e/ou switches Cisco. Os comandos que veremos são:
O ping opera na camada de rede e utiliza os serviços do protocolo ICMP. Esse é o primeiro comando que você deve utilizar em uma processo de troubleshooting.
Com o ping você poderá testar um host remoto enviando mensagens de "echo request" e recebendo de volta as mensagens de "echo reply". É importante ter em mente que o fato do host remoto estar ativo não significa que ele está funcionando corretamente, por isso o ping deve ser utilizado logo no início da sua investigação.
Além do mais, o comando ping oferece uma série de opções avançadas que podem lhe ajudar. Por exemplo, você pode fazer o ping com diferentes protocolos de rede. Também é possível configurar o número exato de requisições de ping que serão transmitidas, a quantidade de dados que será transmitida, especificar se será permitido fragmentar o pacote ou não e muitas outras opções.
Nos equipamentos Cisco utilizar o ping é muito simples, basta usar o comando ping mais o endereço do host remoto que você quer testar, por exemplo, para "pingar" o host com endereço 192.168.1.2 utilize o comando abaixo:
BR#ping 192.168.1.2
Para utilizar as opções avançadas do ping basta digitar ping e seguir o prompt.
BR#ping
Sending 50, 1500-byte ICMP Echos to 192.168.1.2, timeout is 2 seconds:
Success rate is 100 percent (50/50), round-trip min/avg/max = 76/76/100 ms
O comando traceroute mostra o caminho fim-a-fim que o pacote segue até o seu destino final. Similar ao ping, ele utiliza o protocolo ICMP. Esse comando é muito útil para identificar gargalos na rede, abaixo segue uma saída típica do traceroute.
Router#traceroute 192.168.1.2
1 10.0.0.2 6 msec 6 msec 1 msec
2 192.168.1.2 4 msec 9 msec 10 msec
O comando Telnet
Utilize o comando telnet para testar o funcionamento até a camada de aplicação entre o host de origem e do destino. Claro que para utilizar esse comando nos equipamentos Cisco devemos antes ter configurado os equipamentos para aceitarem conexões telnet. A utilização é bem simple, basta digitar telnet e o endereço ip de destino. Se tudo estiver ok, será aberto a seção de telnet e você poderá acessar o equipamento remoto.
BR#telnet 192.168.1.2
Trying 192.168.1.2 …
O comando Show Interfaces
O comando show interfaces mostra todas as interfaces disponíveis em um roteador ou switch Cisco. Você também pode utilizar esse comando para exibir os detalhes de uma interface específica, bastando adicionar o nome da interface logo em seguida do comando.
Router#show interfaces (mostra os detalhes de todas as interfaces)
Router#show interfaces fast0/0 (mostra os detalhes somente da interface fast0/0)
Esse comando é extremamente útil pois pode revelar problemas da camada 1 e 2. Além do mais também exibe detalhes como endereço MAC, endereço IP, método de encapsulamento e estatísticas de erros. Veja abaixo um exemplo da saída desse comando.
BR#show interfaces s0/0/0
Description: BR002495RA001AGE SE0/0/0 – MPLS TELEFONICA
reliability 255/255, txload 17/255, rxload 11/255
Last clearing of "show interface" counters 00:22:56
30 second input rate 23000 bits/sec, 61 packets/sec
30 second output rate 35000 bits/sec, 71 packets/sec
45930 packets input, 4312759 bytes, 0 no buffer
49398 packets output, 3817210 bytes, 0 underruns
9 unknown protocol drops
Logo na primeira linha vemos o detalhe mais importante – "Serial0/0/0 is up, line protocol is up (connected)". A primeira parte refere-se a camada 1 e mostra que a interface está "up" e operando. A segunda parte refere-se a camada 2, "line protocol is up" nos diz que temos conectividade também na camada 2. Existem 04 possíveis saídas que podemos encontrar:
Serial0/0/0 is up, line protocol is up: Camadas 1 e 2 funcionando perfeitamente.
Serial0/0/0 is down, line protocol is down: Essa saída indica problema na camada física. Pode ser, por exemplo, cabo desconetaco nessa interface ou na interface remota.
Serial0/0/0 is up, line protocol is down: Nesse caso a camada física está ok, mas a camada de enlace não. Possíveis razões para isso podem ser problema na configuração do encapsulamento ou clock rate.
Serial0/0/0 is administratively down, line protocol is down: Essa saída indica que a sua interface foi localmente colocada no estado de shutdown. Entre na configuração da interface e dê um "no shutdown".
O comando Show IP Interfaces
O comando show ip interfaces vai lhe mostrar detalhes da configuração da camada 3 nas interfaces. Com esse comando você poderá ver o endereço IP e a máscara configurada em uma interface, se existe alguma access list aplicada e outras informações básicas.
Router#sh ip interface
Utilize o comando show ip route para investigar detalhes das rotas configuradas no seu roteador. Tenha sempre em mente que o roteador só consegue enviar pacotes para rotas listadas em sua tabela de rotas. É possível que uma rota tenha sido removida da tabela de roteamento por isso é muito importante utilizar o comando "show running config" em conjunto com o "show ip route" para verificar possíveis inconsistências.
Abaixo uma saída do comando show ip route
Gateway of last resort is 168.42.18.237 to network 0.0.0.0
168.142.0.0/24 is subnetted, 1 subnets
C 168.142.16.0 is directly connected, GigabitEthernet0/0.1
168.6.0.0/32 is subnetted, 1 subnets
C 168.6.30.228 is directly connected, Loopback0
168.37.0.0/24 is subnetted, 1 subnets
C 168.37.8.0 is directly connected, GigabitEthernet0/0.15
168.42.0.0/16 is variably subnetted, 6 subnets, 2 masks
S 168.42.254.4/30 [1/0] via 192.168.116.237
S 168.42.254.0/30 [1/0] via 192.168.116.237
C 168.42.18.236/30 is directly connected, Multilink1
C 168.42.18.237/32 is directly connected, Multilink1
S 168.42.2.0/30 [254/0] via 168.42.18.237
S 168.42.4.0/30 [254/0] via 168.42.18.237
168.43.0.0/20 is subnetted, 1 subnets
C 168.43.208.0 is directly connected, Tunnel1
B 10.0.0.0/8 [20/0] via 168.42.18.237, 00:22:53
192.168.116.0/30 is subnetted, 1 subnets
C 192.168.116.236 is directly connected, GigabitEthernet0/1
B* 0.0.0.0/0 [20/0] via 168.42.18.237, 00:22:53
B 128.0.0.0/2 [20/0] via 168.42.18.237, 00:22:53
Os comandos Show Running-Config e Show Startup-Config
Utilize o show running config para exibir a configuração completa em operação no seu equipamento Cisco. Estudando a configuração do dispositivo você pode identificar a causa do problema. Já o comando show startup-config irá mostrar a configuração que será carregada no próximo reload do equipamento.
Veja abaixo uma parte da saída típica do "show run".
BR#sh run
Current configuration : 30164 bytes
hostname BR002495RA001AGE
boot system flash:c2800nm-ipvoicek9-mz.124-15.T8.bin
logging persistent url flash:/ size 2000000 filesize 500000
Por fim, confie em seus instintos
Isolar a causa de um mal funcionamento na rede não é uma tarefa fácil, em muitos casos serão necessárias horas de investigação até chegar na causa raiz do problema.
Persistência, paciência e coragem são qualidades que podem lhe ajudar nessas horas. As vezes o problema está bem na sua frente e você só vai notá-lo depois de alguns neurônios queimados.
O importante é não desanimar e seguir em frente… claro que não podemos esquecer da parte técnica: conheça bem seu equipamento, suas facilidades, recursos e os conceitos teóricos que estão por trás de toda a tecnologia.