O comando netstat, que significa estatísticas de rede, é um comando do Prompt de Comando usado para exibir informações muito detalhadas sobre como seu computador está se comunicando com outros computadores ou dispositivos de rede.
Especificamente, ele pode mostrar detalhes sobre conexões de rede individuais, estatísticas de rede gerais e específicas de protocolo e muito mais, o que pode ajudar a solucionar determinados tipos de problemas de rede.
Disponibilidade do Comando Netstat
Este comando está disponível no Prompt de Comando na maioria das versões do Windows, incluindo Windows 11, Windows 10, Windows 8, Windows 7, Windows Vista, Windows XP, sistemas operacionais Windows Server e algumas versões mais antigas do Windows, também.
Netstat é um comando multiplataforma, o que significa que também está disponível em outros sistemas operacionais como macOS e Linux.
A disponibilidade de certas opções de comando netstat e outras sintaxes de comando netstat podem diferir de sistema operacional para sistema operacional.
Sintaxe do Comando Netstat
netstat [- a] [- b] [- e] [- f] [- n] [- o] [-p protocolo] [-r ] [-s ] [-t] [- x] [- y] [time_interval] [ /?]
Lista de Comandos Netstat | |
---|---|
Option | Explicação |
netstat | Execute o comando netstat sozinho para mostrar uma lista relativamente simples de todas as conexões TCP ativas que, para cada uma, mostrarão o endereço IP local (seu computador), o endereço IP externo (o outro computador ou dispositivo de rede), juntamente com seus respectivos números de porta, bem como o estado TCP. |
- a | Este switch exibe conexões TCP ativas, conexões TCP com o estado de escuta, bem como portas UDP que estão sendo escutadas. |
- b | Este switch netstat é muito semelhante ao switch - o listado abaixo, mas em vez de exibir o PID, exibirá o nome real do arquivo do processo. Usar - b sobre - o pode parecer que está economizando um passo ou dois, mas usá-lo às vezes pode estender muito o tempo que leva netstat para executar completamente. |
- e | Use este switch com o comando netstat para mostrar estatísticas sobre sua conexão de rede. Esses dados incluem bytes, pacotes unicast, pacotes não unicast, descartes, erros e protocolos desconhecidos recebidos e enviados desde que a conexão foi estabelecida. |
- f | A opção - f forçará o comando netstat a exibir o nome de domínio totalmente qualificado (FQDN) para cada endereço IP estrangeiro quando possível. |
- n | Use a chave - n para evitar que o netstat tente determinar nomes de host para endereços IP estrangeiros. Dependendo de suas conexões de rede atuais, o uso desse switch pode reduzir consideravelmente o tempo necessário para que o netstat seja totalmente executado. |
- o | Uma opção útil para muitas tarefas de solução de problemas, a chave - o exibe o identificador de processo (PID) associado a cada conexão exibida. Veja o exemplo abaixo para saber mais sobre como usar netstat -o. |
- p | Use a chave - p para mostrar conexões ou estatísticas apenas para um determinado protocolo. Você não pode definir mais de um protocolo de uma vez, nem pode executar netstat com - p sem definir um protocolo. |
protocolo | Ao especificar um protocolo com a opção - p, você pode usar tcp, udp, tcpv6, ou udpv6 Se você usar - s com - p para visualizar as estatísticas por protocolo, você pode usar icmp, ip, icmpv6, ou ipv6 além dos quatro primeiros que mencionei. |
- r | Execute netstat com - r para mostrar a tabela de roteamento IP. Isso é o mesmo que usar o comando route para executar route print. |
- s | A opção - s pode ser usada com o comando netstat para mostrar estatísticas detalhadas por protocolo. Você pode limitar as estatísticas mostradas a um protocolo específico usando a opção - s e especificando esse protocolo, mas certifique-se de usar - s antes de- p ao usar os switches juntos. |
- t | Use a chave - t para mostrar o estado de descarga da chaminé TCP atual no lugar do estado TCP normalmente exibido. |
- x | Use a opção - x para mostrar todos os ouvintes, conexões e endpoints compartilhados do NetworkDirect. |
- y | O switch - y pode ser usado para mostrar o modelo de conexão TCP para todas as conexões. Você não pode usar - y com qualquer outra opção netstat. |
tempo_intervalo | Este é o tempo, em segundos, que você gostaria que o comando netstat fosse reexecutado automaticamente, parando apenas quando você usa Ctrl-C para encerrar o loop. |
/? | Use a chave de ajuda para mostrar detalhes sobre as várias opções do comando netstat. |
Faça com que todas as informações netstat na linha de comando sejam mais fáceis de trabalhar, enviando o que você vê na tela para um arquivo de texto usando um operador de redirecionamento. Consulte Como redirecionar a saída do comando para um arquivo para obter instruções completas.
Exemplos de comandos do Netstat
Aqui estão vários exemplos mostrando como o comando netstat pode ser usado:
Mostrar conexões TCP ativas
netstat -f
Neste primeiro exemplo, executamos netstat para mostrar todas as conexões TCP ativas. No entanto, queremos ver os computadores aos quais estamos conectados no formato FQDN [- f] em vez de um endereço IP simples.
Aqui está um exemplo do que você pode ver:
Conexões Ativas
Proto Local Address Estado do Endereço Estrangeiro
TCP 127.0.0.1:5357 VM-Windows-7: 49229 TIME_WAIT
TCP 127.0.0.1:49225 VM-Windows-7:12080 TIME_WAIT
TCP 192.168.1.14:49194 75.125.212.75:http CLOSE_WAIT
TCP 192.168.1.14:49196 a795sm.avast.com:http CLOSE_WAIT
TCP 192.168.1.14: 49197 a795sm.avast.com:http CLOSE_WAIT
TCP 192.168.1.14:49230 TIM-PC:wsd TIME_WAIT
TCP 192.168.1.14:49231 TIM-PC:icslap ESTABLISHED
TCP 192.168.1.14:49232 TIM-PC:netbios-ssn TIME_WAIT
TCP 192.168.1.14:49233 TIM-PC:netbios-ssn TIME_WAIT
TCP [::1]:2869 VM-Windows-7:49226 ESTABLISHED
TCP [::1]:49226 VM-Windows-7:icslap ESTABELECIDO
Como você pode ver, havia 11 conexões TCP ativas no momento em que o netstat foi executado neste exemplo. O único protocolo (na coluna Proto) listado é o TCP, o que era esperado porque não usamos - a.
Você também pode ver três conjuntos de endereços IP na coluna Endereço local - o endereço IP real de 192.168.1.14 e as versões IPv4 e IPv6 dos endereços de loopback, juntamente com a porta que cada conexão está usando. A coluna Endereço estrangeiro lista o FQDN (75.125.212.75 não foi resolvido por algum motivo) junto com essa porta também.
Finalmente, a coluna State lista o estado TCP dessa conexão específica.
Mostrar Conexões e Identificadores de Processo
netstat -o
Neste exemplo, o netstat será executado normalmente para mostrar apenas as conexões TCP ativas, mas também queremos ver o identificador de processo correspondente [- o] para cada conexão. que podemos determinar qual programa no computador iniciou cada um.
Aqui está o que o computador exibiu:
Conexões Ativas
Proto Endereço Local Endereço Estrangeiro Estado PID
TCP 192.168.1.14:49194 75.125.212.75:http CLOSE_WAIT 2948
TCP 192.168.1.14:49196 a795sm:http CLOSE_WAIT 2948
TCP 192.168.1.14:49197 a795sm:http CLOSE_WAIT 2948
Você provavelmente notou a nova coluna PID. Neste caso, os PIDs são todos iguais, o que significa que o mesmo programa no computador abriu essas conexões.
Para determinar qual programa é representado pelo PID de 2948 no computador, tudo o que você precisa fazer é abrir o Gerenciador de Tarefas, selecionar a guia Processos e observar o nome da imagem listado ao lado do PID que estamos procurando na coluna PID.1
Usar o comando netstat com a opção - o pode ser muito útil ao rastrear qual programa está usando uma parte muito grande de sua largura de banda. Ele também pode ajudar a localizar o destino onde algum tipo de malware, ou mesmo um software legítimo, pode estar enviando informações sem sua permissão.
Enquanto este e o exemplo anterior foram executados no mesmo computador, e com apenas um minuto um do outro, você pode ver que a lista de conexões TCP ativas é consideravelmente diferente. Isso ocorre porque seu computador está constantemente se conectando e desconectando de vários outros dispositivos em sua rede e pela Internet.
Mostrar apenas conexões específicas
netstat -0 | findstr 28604
O exemplo acima é semelhante ao que já vimos, mas em vez de exibir todas as conexões, estamos dizendo ao comando netstat para mostrar apenas as conexões que estão usando um PID específico, 28604 neste exemplo.
Um comando semelhante pode ser usado para filtrar as conexões com um estado CLOSE_WAIT, substituindo o PID por ESTABLISHED.
Mostrar estatísticas específicas do protocolo
netstat -s -p tcp -f
Neste exemplo, queremos ver estatísticas específicas do protocolo [- s], mas não todas, apenas estatísticas TCP [- p tcp]. Também queremos que os endereços estrangeiros sejam exibidos no formato FQDN [-f ].
Isto é o que o comando netstat, como mostrado acima, produziu no computador de exemplo:
Estatísticas TCP para IPv4
Aberturas Ativas=77
Aberturas Passivas=21
Tentativas de conexão com falha=2 Redefinir conexões=25 Conexões atuais=5 Segmentos recebidos=7313 Segmentos Enviados=4824 Segmentos Retransmitidos=5Conexões Ativas Proto Endereço Local Endereço Estrangeiro Estado TCP 127.0.0.1:2869 VM-Windows-7:49235 TIME_WAIT TCP 127.0.0.1:2869 VM-Windows-7:49238 ESTABLISHED TCP 127.0. 0.1:49238 VM-Windows-7:icslap ESTABLISHED TCP 192.168.1.14:49194 75.125.212.75:http CLOSE_WAIT TCP 192.168.1.14:49196 a795sm.avast.com:http CLOSE_WAIT TCP 192.168.1.14:49197 a795sm.avast.com:http CLOSE_WAIT
Como você pode ver, várias estatísticas para o protocolo TCP são exibidas, assim como todas as conexões TCP ativas no momento.
Mostrar estatísticas de rede atualizadas
netstat -e -t 5
Neste último exemplo, o comando netstat é executado para mostrar algumas estatísticas básicas da interface de rede [- e] e para que essas estatísticas sejam atualizadas continuamente na janela de comando a cada cinco segundos [- t 5].
Aqui está o que é produzido na tela:
Interface Statistics
Recebido Enviado
Bytes 22132338 1846834
Unicast packets 19113 9869
Pacotes não unicast 0 0
Descarta 0 0
Erros 0 0
Protocolos desconhecidos 0Interface Statistics Recebido Enviado Bytes 22134630 1846834
Pacotes Unicast 19128 9869
Pacotes não unicast 0 0
Descarta 0 0
Erros 0 0
Protocolos desconhecidos 0
^C
Várias informações, que você pode ver aqui e que listamos na sintaxe - e acima, são exibidas.
O comando netstat executou automaticamente apenas uma vez extra, como você pode ver pelas duas tabelas no resultado. Observe o ^C na parte inferior, indicando que o comando Ctrl+C abort foi usado para interromper a reexecução do comando.
Comandos Relacionados ao Netstat
O comando netstat é frequentemente usado com outros comandos do Prompt de Comando relacionados à rede, como nslookup, ping, tracert, ipconfig e outros.
[1] Você pode ter que adicionar manualmente a coluna PID ao Gerenciador de Tarefas. Você pode fazer isso selecionando PID depois de clicar com o botão direito do mouse nos títulos das colunas na guia Process. Se você estiver usando o Windows 7 ou um sistema operacional Windows mais antigo, marque a caixa de seleção PID (Identificador de Processo) em View > Select Colunas no Gerenciador de Tarefas. Você também pode ter que escolher Mostrar processos de todos os usuários na parte inferior da guia Processos se o PID que você está procurando não estiver listado.