- Visão geral
- Notação de variáveis
- Etapa 1: Verificação de conectividade ICMP (ping)
- Etapa 2: Verificação de rota (tracert)
- Etapa 3: Teste de porta TCP (Test-NetConnection)
- Etapa 4: Estado das sessões TCP (netstat / Get-NetTCPConnection)
- Etapa 5: Resolução de DNS (nslookup / Resolve-DnsName)
- Etapa 6: Solução de problemas avançada
- Conclusão
Visão geral
Este artigo apresenta uma abordagem sistemática para identificar causas de falhas de comunicação em ambientes Windows Server, utilizando comandos padrão e ferramentas do PowerShell. Inclui testes de conectividade ICMP, análise de portas TCP, resolução de DNS e coleta de logs.
Notação de variáveis
Os valores dependentes do ambiente são representados conforme a tabela abaixo. Substitua conforme sua configuração.
| Variável | Exemplo | Descrição |
|---|---|---|
<<TARGET_HOST>> |
192.168.10.1 |
Nome do host ou endereço IP de destino |
<<PORT_NUMBER>> |
443 |
Número da porta TCP utilizada pela aplicação |
<<LOG_PATH>> |
C:\Logs\netdiag.txt |
Caminho para salvar o log de saída |
Etapa 1: Verificação de conectividade ICMP (ping)
Verifica a acessibilidade na camada de rede.
ping <<TARGET_HOST>>
Se não houver resposta:
- Verifique se o ICMP não está bloqueado pelo Windows Defender Firewall
- Confirme se o host de destino está ativo
- Valide a tabela de rotas com
route print
Nota: Em ambientes onde o ICMP é desativado, realize o teste de conectividade via TCP.
Etapa 2: Verificação de rota (tracert)
Identifica em qual salto (hop) ocorre a falha de comunicação.
tracert <<TARGET_HOST>>
Etapa 3: Teste de porta TCP (Test-NetConnection)
Confirma se a comunicação na camada de aplicação pode ser estabelecida.
Test-NetConnection -ComputerName <<TARGET_HOST>> -Port <<PORT_NUMBER>>
Principais campos de saída:
| Campo | Descrição |
|---|---|
TcpTestSucceeded |
Indica se a conexão TCP foi bem-sucedida |
PingSucceeded |
Mostra o resultado do teste ICMP |
RemoteAddress |
Endereço IP de destino resolvido |
SourceAddress |
Endereço de origem utilizado na conexão |
Dica: Se houver instabilidade de DNS, utilize o IP diretamente.
Etapa 4: Estado das sessões TCP (netstat / Get-NetTCPConnection)
Visualiza conexões TCP ativas e portas em escuta.
Usando netstat
netstat -ano | findstr "<<PORT_NUMBER>>"
Opções:
-a: exibe todas as conexões e portas em espera-n: mostra endereços e portas em formato numérico-o: exibe o ID do processo
Identificar o processo associado:
tasklist /FI "PID eq <<PID_NUMBER>>"
Usando PowerShell
Get-NetTCPConnection -State Established |
Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort, State, OwningProcess
Get-NetTCPConnection | Where-Object { $_.LocalPort -eq <<PORT_NUMBER>> }
Um número excessivo de conexões nos estados
SYN_SENTouTIME_WAITpode indicar interrupções ou reconexões frequentes.
Etapa 5: Resolução de DNS (nslookup / Resolve-DnsName)
Confirma se a resolução de nomes está funcionando corretamente.
nslookup <<TARGET_HOST>>
Usando PowerShell para análise detalhada:
Resolve-DnsName <<TARGET_HOST>> -Type A
Consulta a um servidor DNS específico:
Resolve-DnsName <<TARGET_HOST>> -Type A -Server 8.8.8.8
Nota: Em ambientes IPv6, use
-Type AAAA.
Etapa 6: Solução de problemas avançada
Ativar logs do Firewall
Se a comunicação estiver bloqueada, habilite o log do firewall para análise.
Set-NetFirewallProfile -Profile Domain,Public,Private `
-LogAllowed True -LogBlocked True `
-LogFileName "C:\Windows\System32\LogFiles\Firewall\pfirewall.log" `
-LogMaxSizeKilobytes 32767
O tamanho padrão é 1 MB; aumente o limite para facilitar a análise.
Verificação da tabela ARP (problemas de camada 2)
arp -a
Endereços MAC duplicados ou inconsistentes podem indicar cache incorreto em switches ou NICs virtuais.
Conclusão
A maioria dos problemas de rede pode ser diagnosticada em cinco etapas:
ICMP → Rota → TCP → DNS → Log
Com ferramentas nativas como ping, tracert, netstat e cmdlets do PowerShell como Get-NetTCPConnection, Resolve-DnsName e Test-NetConnection, é possível realizar uma análise eficiente, estruturada e reproduzível de falhas de comunicação no Windows Server.
