WINDOWS:: SUPORTE A REDES – PARTE 1

Redes

Redes

SUPORTE A REDES!

 

Como você sabe, de forma simples, cada área profissional conta com uma série de técnicas de soluções e ferramentas que dão apoio a estas soluções. Em minha trajetória como profissional de TI, utilizei muitas ferramentas para prover soluções e quando fala-se de solução, é claro lembramos de suporte. Mas, a verdade é que vai muito além disso. Quando você precisa construir algo, precisa de técnicas e ferramentas que vão permitir alcançar seu objetivo: construir o algo. Mas, por hora vamos tratar um pouco apenas de suporte a usuários de redes com sistema operacional Windows.

Um cenário comum acontece, logo cedo de manhã quando você chega a sua mesa e liga seu computador, mas escuta o telefone tocar junto! Então ao atender, ouve um usuário da rede, informar que o computador dele não está “entrando na rede”! Claro, ele poderia lhe dizer isso por uma série de motivos, então é preciso investigar melhor sobre o que o foi percebido de errado, ou seja, se o problema é de logon ou mapeamentos que não estão aparecendo, entre outros…

Ping

Com certeza, um dos comandos mais utilizados para se fazer testes de comunicação entre dois hosts é o Ping (Packet Internet Grouper). Utilizando protocolo ICMP, uma solicitação de resposta como uma espécie de eco, é enviado ao destino e caso não haja nenhum problema, o host que receber o pacote ICMP irá responder. A exceção pode ser, quando o host destino estiver configurado para não responder a solicitações ICMP, então o ping falhará. Para utilizar é simples:

ping 192.168.0.1

Se o seu objetivo é receber a resposta de um host que faz parte de uma rede remota, poderá se deparar com outros obstáculos. Portanto, caso esteja tendo problemas com negação de resposta em um caso destes, será necessário o uso de uma ferramenta que permita seguir o caminho de comunicação entre o host origem e o host destino. Então, entra em cena o Tracert.

Tracert

O comando ping e o tracert, entre outros a ser vistos, trabalham a nível de camada de Internet (modelo TCP/IP) ou Rede (Modelo OSI) e por isso sua PDU é o pacote. Portanto, quando  falan-se sobre o envio e recebimento de dados utilizando esta PDU, trata-se de pacotes. Logo entra em cena o roteamento destes pacotes entre redes distintas, e se por acaso a comunicação falhar durante este processo, precisa-se “rastrear a rota” que estes pacotes estão seguindo para chegar até o host destino na outra rede. O Tracert faz exatamente isso e pode-se utilizar esta ferramenta para testar o roteamento de pacotes. O tracert também usa o protocolo ICMP e esse é o motivo de sua funcionalidade ter etapas semelhantes a da ferramenta Ping. O tracert vai enviando solicitações ICMP para cada roteador no caminho até certo host destino. A cada “salto” de um roteador para outro através de suas redes diretamente conectadas, uma resposta ICMP com tempo de vida irá alimentando uma listagem em tela. Assim pode-se descobrir por onde aquele pacote está seguindo até alcançar o destino ou certo obstáculo. Claro que, a explicação aqui é simplificada e poderia até ser mais abrangente, mas desfocaria o objetivo deste artigo, por isso não abrangerei mais detalhes técnicos aqui. O uso da ferramenta é tão simples simples quanto a ferramenta Ping já vista:

Tracert 8.8.8.8

Entretanto, você pode perceber que existe um apoio dos serviços de DNS para detalhar os resultados em tela. Mas este detalhamento se obtém com algum custo e talvez se queira ignorar esta etapa para se obter retorno de informações de forma mais rápida e até mais legível. Para isso, utiliza-se o parâmetro -d. Além disso, o um tempo de resposta de timeout, ou em outras palavras, o tempo de espera a uma resposta mesmo que negada pode ser refinada otimizando o tempo da ferramenta. Para isso utiliza-se o parâmetro -w.  Isso se torna especialmente útil quando já se conhece a infraestrutura e se sabe que o tempo de resposta de um host deverá ser mínimo ou com pouca latência. Mas atenção, se um firewall no caminho ou algum roteador estiver configurado para não permitir ou mesmo responder a solicitações ICMP, você receberá de uma a várias respostas como Timeout.

Pathping

Mas pode ser que você queira algo um pouco mais detalhado. Por exemplo, querer informações que o Ping e o Tracert não o apresente, tais como uma estatística de tempo e perda de pacotes. O Pathping faz isso por juntar as duas ferramentas anteriores em uma só e com isso, poder prover uma série de informações que serão bem vindas para análise de latência. O uso da ferramenta, também é semelhante as anteriores:

pathping 10.1.1.12

Com o parâmetro adicional -n também não serão resolvidos os nomes, assim como no Tracert.

Você pode obter mais informações sobre esta ferramenta neste link: https://technet.microsoft.com/en-us/library/cc958876.aspx?f=255&MSPPError=-2147217396

Ipconfig

Se você utiliza um servidor DHCP para associar um endereço IP de forma dinâmica aos computadores da rede, deve estar muito habituado a ferramenta Ipconfig.exe. Esta ferramenta vai ainda além de prover apenas suporte ao serviço de DHCP. Todavia, como seu uso é muito comum para este tipo de diagnóstico, em serviços DHCP no host e, portanto ele será visto intencionalmente com ênfase nesta utilização.

Para mostrar informações detalhadas configuradas no protocolo TCP/IP via DHCP, normalmente utiliza-se a forma:

Ipconfig /all

Este comando devolve todas as informações de conexões de rede no computador, independente se foram fixadas manualmente ou dinamicamente.

Algumas vezes, por algum motivo você pode notar o computador não estar se comunicado com outros na mesma rede. Então percebe um endereço estranho iniciando em 169.254.x.x/16. Este é um endereço APIPA ( Automatic Private IP Addressing), um recurso para permitir comunicação entre computadores mesmo que um servidor DHCP não esteja presente para responder solicitações DHCP. O problema é, quando um servidor DHCP está presente na rede mas, por algum motivo, não faz a concessão ou talvez não renove a concessão já obtida. Assim utiliza-se a ferramenta Ipconfig para se forçar manualmente este processo de concessão ou renovação:

ipconfig /renew

Todavia, algumas vezes o servidor DHCP respondeu a uma solicitação e o endereço IP foi concedido ou o “leasing” foi renovado. Mas um problema de comunicação entre o computador e outros computadores que fazem parte da mesma rede continua. Assim o problema pode estar relacionado a concessão para o computador com problemas. Por isso, aí vai a dica! Será necessário isolar aquele endereço IP diretamente no servidor DHCP , colocando-o como excluído mesmo que provisoriamente em uma lista de exclusão. Após isso, deve-se retornar ao computador do usuário e fazer a liberação da concessão pelo comando:

ipconfig /release

E então deve-se renovar para um novo endereço IP utilizando o comando:

ipconfig /renew

Embora seja um procedimento simples, muitas vezes ele o é desconhecido! Este tipo de incidente pode ser comum em redes que possuem uma configuração no servidor DHCP com tempo de Leasing menor. Talvez a opção desta configuração é por haver muitos Laptops como clientes desta rede. Não faz sentido manter um tempo de Leasing alto, pois em pouco tempo a reserva de endereços IP estaria escassa. Assim adicionar o endereço IP em uso no computador que não está se comunicando corretamente a uma lista de exclusão, mesmo que temporariamente, dará oportunidade ao computador antes com problemas, obter um novo endereço IP. Alguns incidentes ocorrem com um endereço IP, por conta de trocas de pacotes corrompidos. Esta corrupção do pacote pode ocorrer por uma simples colisão coincidente no processo de concessão ou renovação, talvez até devido a problemas físicos.

Mas e se o problema for resolução do nome do host na rede local em relação ao servidor DNS na rede? Talvez por um problema de DNS, o host não está sendo identificado corretamente pelo seu nome na rede. Isso é mais comum quando não se utiliza serviços do DHCP. Se mesmo os serviços de DHCP estejam sendo usados na rede, uma tentativa válida será por atualizar todas as concessões de DHCP e registrar novamente o nome DNS por utilizar o comando:

ipconfig /registerdns

Este comando irá funcionar, mesmo em caso de não se utilizar os serviços de DHCP na rede. E por mais estranho que possa parecer, eu mesmo já resolvi problema até de logon de usuários com isso! Agora, alguns problemas de resolução de nomes acontecem quando está envolvida a comunicação com outros hosts, talvez por conta de cache de servidor proxy ou até netcache. Mas pode ser que também não seja este o caso, mas o incidente se dá por um problema no próprio sistema operacional. Esta situação se refere ao resolver do Windows. Assim, para saber o que está armazenado no resolver local, utiliza-se o comando:

ipconfig /displaydns

Caso seja apresentado uma longa lista com vários endereços, pode-se limpar esta lista utilizando o comando:

ipconfig /flushdns

Grande parte dos problemas quando um usuário reclama a falta de acesso a determinado site (inclusive aqueles da Caixa e da Receita… ), mas este mesmo usuário informa observar outros usuários na mesma rede, ou seja, em seu próprio departamento acessando normalmente o site, com este procedimento acima pode-se prover a solução.

ARP

Mas pode o caso de o problema não estar necessariamente na camada de aplicação e sim na camada física, sendo até mesmo algo relacionado a rede local. Por exemplo, um compartilhamento deixou de estar acessível, embora ainda listado. Antes porém, se faz necessário certificar se por algum motivo algum switch foi reinicializado ou, talvez um cabo de rede que se conecta a porta de um switch fora mudada para outra porta. Talvez até mesmo seja um problema relacionado a interface de rede do computador. Então, verifique como está o cache ARP com o comando:

arp -a

Se uma longa tabela for listada na tela, você pode tentar limpar este cache, utilizando o comando:

arp -d

ou

netsh int ip delete arpcache

Caso queira obter o endereço MAC do seu próprio computador, utilize o comando getmac.

Após isso, vamos testar a comunicação na camada 2. Então efetue teste de ping para outras estações e mesmo algum servidor. Depois verifique se a tabela ARP é novamente preechida:

arp -a

Em alguns casos este simples procedimento resolverá o problema. Mas em outros, você deverá verificar se o problema não está no switch e mais precisamente na porta que este computador com problemas está conectado. O switch também possui uma tabela ARP e um buffer por porta a fim evitar problemas de colisões. Pode acontecer de haver algum problema com os dados armazenados naquele buffer. Cada porta do switch possui um endereço MAC, e quando você troca a porta em uso, está criando um novo link de camada 2, diferente do anterior.

Netstat

Bem, pode ser então que até aqui tudo esteja funcionando, mas algo está estranho. Aquele computador está muito lento para se comunicar. Em alguns casos se você utilizar um “farejador IP” como o Wireshark, talvez até descubra um alto índices de pacotes sendo trocados entre a rede e este computador. Por isso, talvez seja necessário verificar quais as conexões TCP ativas no momento. Conexões que não fazem sentido poderão significar uma grande ameaça. O comando netstat (de Net statistic) apresenta informações valiosas sobre as conexões de rede em ambos sentidos entrada ou saída. Além disso você pode visualizar a tabela de roteamento.

  • -a Mostra todas as conexões e portas abertas e na escuta (listening ports)

O estado LISTENING representa na espera, escutando, aceitando conexões nesta porta. O estado ESTABLISHED já significa que uma conexão está ativa nesta porta.

  • -e apresenta as estatísticas da placa de rede. Este comando pode ser combinado com a opção -s.
  • -s Mostra por estatística de protocolo . Por padrão, as estatísticas são mostradas por TCP e UDP; A opção -p pode ser usada para especificar um subconjunto padrão.
  • -n Mostra o endereço local e externo em formato numérico dividido em octetos e mais o número de portas.
  • -p [protocolo] Mostra as conexões para o protocolo um dos protocolos [TCP/UDP ou IP]. Combiando a opção -s, apresentará estatística do protocolo.
  • -r Mostra a tabela de roteamento
  • -b temos detalhes sobre as conexões estabelecidas.

interval Mostra novamente as estatísticas selecionadas, pausando interval segundos entre cada display. Use CTRL+C para interromper. Se omitido, Netstat mostrará a informação corrente em uma única vez.

Com netstat -s, você obtém informações sumarizadas apresentando quantas conexões estão ativas e seu estado. Poe exemplo, para exibir estatísticas para apenas os protocolos TCP e UDP, digite:

netstat -s -p tcp udp

Então abra o Gerenciador de tarefas ao mesmo tempo, dividindo sua tela. Na aba de processos do Gerenciador de Tarefas do Windows, você poderá comparar qualquer processo pelo PID, sendo que se houver algum que seja estranho e utilizando determinada conexão, poderá ser investigado de perto.

Sobre suporte ainda existe muito a se falar, mas este artigo poderia ficar muito longo. Por isso poderei tratar de outros comandos em um tópico posterior. Mas entre incidentes que causam problemas de comunicação na rede, alguns problemas podem estar relacionados a camada de aplicação. E sobre este tópico, talvez você também possa gostar de outro artigo: WINDOWS:: SUPORTE – REDEFININDO TCP/IP E WINSOCK

[]’s

1 comentário

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.