Ping de entrada no Windows

Por André Ataíde em 18/08/2023

Você está prototipando um novo sistema ou operando máquinas virtuais em redes para seus novos estudos e descobre que não consegue "pingar" em máquinas Windows, mesmo que, aparentemente, suas configurações de rede estejam perfeitas. Vamos resolver isso?

ICMP Echo

O comando "ping" envia pacotes especiais conhecidos como Internet Control Message Protocol (ICMP) Echo Requests ao dispositivo alvo e espera ele enviar um pacote ICMP Echo Response (de resposta). Por padrão, o Firewall do Windows bloqueia os "ICMP Echo Requests" vindos da rede (de entrada). Então, veremos como permitir sem precisar desligar o firewall, o que pode comprometer seriamente a segurança do sistema, lembrando que as instruções deste tutorial podem funcionar para o Windows 7, 8, 10 e 11.

Cuidado! Criar exceções e abrir portas no firewall pode gerar riscos de segurança. Permitir requisições de ping geralmente é seguro, mas bloqueie o que você não precisa.

Existem duas formas de permitir o PING de entrada no Windows. Use a que mais lhe convir:

Permitir PING pelo Prompt de Comandos

A forma mais rápida de criar uma exceção para requisições de "ping" é utilizando o prompt de comando. No Windows 8, 10 e 11, basta pressionar as teclas [Win] + [X] e selecionar "Prompt de Comando (Admin)".

No Windows 7, abra o menu iniciar e digite o "cmd". Clique com o botão direito no resultado exibido e selecione "Executar como Administrador".

Para habilitar requisições de "ping" é preciso criar duas exceções, uma para requisições ICMPv4 e outra para as de ICMPv6. Para a exceção do ICMPv4, digite a seguinte linha de comando e pressione [Enter]:

netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo request" protocol=icmpv4:8,any dir=in action=allow

Para o ICMPv6 digite: 

netsh advfirewall firewall add rule name="ICMP Allow incoming V6 echo request" protocol=icmpv6:8,any dir=in action=allow

As mudanças serão aplicadas de forma imediata, não é nem preciso reiniciar o PC. 

Se precisar bloquear as requisições de ping novamente, você precisa desabilitar ambas as exceções criadas. Para a ICMPv4, digite no terminal: 

netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo request" protocol=icmpv4:8,any dir=in action=block

Para o ICMPv6 digite:

netsh advfirewall firewall add rule name="ICMP Allow incoming V6 echo request" protocol=icmpv6:8,any dir=in action=block

Dica! Quando as requisições são bloqueadas, ao fazer ping para o seu PC aparecerá uma mensagem de tempo limite esgotado.

Existe outra forma, usando a interface do Firewall do Windows com Segurança Avançada.

Pelo Firewall do Windows com Segurança Avançada

Ao invés de usar o prompt de comando, você também pode adicionar exceções no firewall através da interface gráfica. Abra o menu iniciar, digite "Firewall do Windows com Segurança Avançada" e execute o aplicativo. Será necessário criar duas regras novas: uma para o ICMPv4 e outra para o ICMPv6.

Importante! Somente usuários com privilégios administrativos podem alterar o firewall.

Siga estes passos para criar a regra para o ICMPv4:


Siga estes passos para criar a regra para o ICMPv6:


Com as duas regras prontas, basta fechar o "Firewall do Windows com Segurança Avançada".

Para desligar as regras, basta deletar ou desativar as regras criadas. Ao desativar existe a vantagem poder reativá-las novamente sem precisar recriar.