12 Exemplos de Comandos Ping para Testar sua Rede

Ping é uma utilidade de rede simples, amplamente utilizada e multiplataforma para testar se um host é alcançável em uma rede de Protocolo de Internet (IP). Funciona enviando uma série de mensagens de solicitação de eco Protocolo de Mensagem de Controle da Internet (ICMP) ECHO_REQUEST para o host alvo e aguardando uma resposta de eco ICMP (ou ECHO_RESPONSE).

Você pode executar um teste de ping para estabelecer se o seu computador pode se comunicar com outro computador (host de destino); isso ajuda a determinar:

  • Se o host de destino é alcançável (ativo) ou não.
  • Para medir a quantidade de tempo que os pacotes levam para chegar ao host de destino e voltar ao seu computador (o tempo de ida e volta (rtt) na comunicação com o host de destino) e
  • A perda de pacotes é expressa como uma porcentagem.

Seu resultado é uma lista de respostas do host de destino juntamente com o tempo levado para o último pacote chegar ao host de destino e voltar ao seu computador.

Também mostra um resumo estatístico do teste, geralmente incluindo o número de pacotes transmitidos e recebidos, a porcentagem de perda de pacotes; os tempos de ida e volta mínimos, máximos e médios, e o desvio padrão da média (mdev). No caso de falha em um teste de ping, você verá mensagens de erro como saída.

Exemplos de Comandos Ping no Linux

Neste artigo, vamos explicar 12 exemplos práticos de comando ping para testar a acessibilidade de um host em uma rede.

1. Pingar Domínio ou Endereço IP

Você pode executar um teste de ping simples para ver se o host de destino www.google.com é acessível ou não. Você também pode usar um endereço IP em vez do nome de domínio, conforme mostrado.

$ ping www.google.com
OR
$ ping 172.217.27.196

Exemplo de Saída:

ping www.google.com
PING www.google.com (172.217.27.196) 56(84) bytes of data.
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=1 ttl=111 time=5.01 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=2 ttl=111 time=4.75 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=3 ttl=111 time=5.37 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=4 ttl=111 time=4.99 ms
^C
--- www.google.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 4.751/5.030/5.373/0.222 ms
...

A partir dos resultados do comando acima, o ping foi bem-sucedido e não houve perda de pacotes. Uma coisa importante a se observar em uma saída de teste de ping é o tempo no final de cada resposta de ping.

Supondo que você esteja realizando testes de ping em seus servidores, então o valor aqui importa muito, dependendo do tipo de aplicativo em execução em um servidor.

Se, por exemplo, você tiver um aplicativo da web onde uma única solicitação do usuário resulta em tantas consultas a um (s) banco (s) de dados para gerar resultados na interface do usuário, então um tempo de ping mais baixo para esse servidor em particular implica que mais dados estão sendo transmitidos sem atraso e o contrário é verdadeiro.

2. Solicitação de Eco do Ping

Você pode especificar o número de ECHO_REQUESTs a serem enviados após os quais o ping será encerrado, usando a opção -c conforme mostrado (neste caso, o teste de ping será interrompido após o envio de 5 pacotes).

$ ping -c 5 www.google.com

PING www.google.com (172.217.27.196) 56(84) bytes of data.
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=1 ttl=111 time=4.31 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=2 ttl=111 time=4.35 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=3 ttl=111 time=4.06 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=4 ttl=111 time=5.20 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=5 ttl=111 time=4.41 ms

--- www.google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 4.064/4.464/5.195/0.383 ms

3. Definir Intervalo de Tempo de Ping

A opção -i permite definir intervalos em segundos entre o envio de cada pacote, o valor padrão é de um segundo.

$ ping -i 3 -c 5 www.google.com

PING www.google.com (172.217.27.196) 56(84) bytes of data.
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=1 ttl=111 time=5.71 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=2 ttl=111 time=6.19 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=3 ttl=111 time=5.39 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=4 ttl=111 time=7.34 ms
64 bytes from bom07s15-in-f4.1e100.net (172.217.27.196): icmp_seq=5 ttl=111 time=4.77 ms

--- www.google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 12014ms
rtt min/avg/max/mdev = 4.768/5.879/7.341/0.863 ms

4. Ataque DoS com Ping Flooding também conhecido como Ping of Death

Para determinar a resposta da sua rede sob condições de alta carga, você pode executar um “ping de inundação” que envia solicitações o mais rápido possível, usando a opção -f. Apenas o root pode usar esta opção, caso contrário, use o comando sudo para obter privilégios de root.

$ sudo ping -f www.google.com
OR
$ sudo ping -f -i 3 www.google.com	#specify interval between requests 

PING www.google.com (172.217.163.36) 56(84) bytes of data.
.......................................................................................................................................................................................^C
--- www.google.com ping statistics ---
2331 packets transmitted, 2084 received, 10% packet loss, time 34095ms
rtt min/avg/max/mdev = 29.096/29.530/61.474/1.417 ms, pipe 4, ipg/ewma 14.633/29.341 ms

5. Ping Broadcast de uma LAN

Você pode habilitar o ping a um broadcast usando a opção -b, que obterá uma resposta de todos os endereços IP conectados à sua rede LAN.

$ ping -b 192.168.0.0

6. Definir Valor TTL do Ping

Para limitar o número de saltos de rede (TTLTempo de Vida) que as sondagens percorrem, use a opção -t. Você pode definir qualquer valor entre 1 e 255; sistemas operacionais diferentes têm padrões diferentes.

Cada roteador que recebe o pacote subtrai pelo menos 1 da contagem e se a contagem ainda for maior que 0, o roteador encaminha o pacote para o próximo salto; caso contrário, descarta-o e envia uma resposta ICMP de volta para o seu computador.

Neste exemplo, o TTL foi excedido e o teste de ping falhou, como mostrado na captura de tela.

$ ping -t 10 www.google.com
Set Ping TTL Count

7. Definir Tamanho do Pacote de Ping

O tamanho padrão do pacote deve ser suficiente para um teste de ping, no entanto, você pode alterá-lo para atender às suas necessidades específicas de teste. Você pode especificar o tamanho da carga útil, em número de bytes, usando a opção -s, o que resultará em um tamanho total do pacote igual ao valor fornecido mais 8 bytes extras para o cabeçalho ICMP.

$ ping -s 1000 www.google.com

8. Definir Pré-Carga de Ping

Se a pré-carga for adicionada, o ping envia essa quantidade de pacotes sem esperar por uma resposta. Note que apenas o root pode selecionar uma pré-carga de mais de 3; caso contrário, use o comando sudo para obter privilégios de root.

$ sudo ping -l 5 www.google.com 

9. Definir Tempo Limite do Ping

É também possível definir o tempo de espera por uma resposta, em segundos, usando a opção -W conforme mostrado.

$ ping -W 10 www.google.com

10. Definir Tempo Limite de Ping em Segundos

Para definir um tempo limite em segundos, antes do ping encerrar independentemente de quantos pacotes foram enviados ou recebidos, use a opção -w.

$ ping -w 5 www.google.com

11. Depurar Pacotes ICMP do Ping

A opção -d permite que você habilite os detalhes de pacotes IP de depuração conforme mostrado.

$ ping -d www.google.com

12. Saída Detalhada do Ping

Você pode habilitar a saída detalhada usando a opção -v, como segue.

$ ping -v www.google.com

Nota: O Ping pode não ser necessariamente usado para testar a conectividade de rede, ele simplesmente informa se um endereço IP está ativo ou inativo.

Geralmente é usado em conjunto com o programa traceroute, mas, o MTR – uma ferramenta de diagnóstico de rede moderna combina a funcionalidade do ping e do traceroute e oferece muitos recursos adicionais.

Para uma lista abrangente de ferramentas de rede, confira: Gestão de Rede, Solução de Problemas e Depuração do Linux

Resumo

Ping é um método muito comum para solucionar a acessibilidade de hosts em uma rede. Neste artigo, explicamos 12 exemplos práticos de comandos ping para testar a acessibilidade de um dispositivo em rede. Compartilhe seus pensamentos conosco através do formulário de comentários abaixo.

Source:
https://www.tecmint.com/ping-command/