Como Usar o Comando Ping Linux em 2024: Principais Opções de Uso e Dicas
O comando ping do Linux é uma ferramenta para diagnosticar problemas de conectividade, monitorar o desempenho da rede e verificar a disponibilidade do servidor. Ele está pré-instalado na maioria das distribuições e é acessível via Terminal ou um cliente SSH.
O comando ping funciona enviando pacotes do Internet Control Message Protocol (ICMP) para um endereço especificado. Se o servidor alvo retornar um echo request ICMP, ele está conectado à rede.
Este tutorial explicará a utilidade ping do Linux, incluindo sua sintaxe, opções e casos de uso comuns. Você também aprenderá a interpretar os resultados do comando ping para solucionar problemas de conectividade no seu servidor privado virtual (VPS).
Conteúdo
O Que é Comando Ping Linux?
No Linux, o comando ping, ou packet internet groper, é uma utilidade para diagnosticar problemas em um servidor ou rede. Ele funciona enviando um pacote de dados para o dispositivo alvo e aguardando a resposta. Os administradores de rede podem modificar o comportamento do ping usando várias opções. Por exemplo, você pode definir o número de pacotes enviados e alterar os intervalos.
Sintaxe e Opções do Comando Ping
O ping geralmente vem pré-instalado na maioria dos sistemas operacionais Linux. Para verificar se o seu sistema possui esta funcionalidade, consulte a versão do ping instalada usando este comando:
ping -V
Se o ping estiver instalado, você verá o número da versão. Caso contrário, o Terminal retornará o erro de comando não encontrado.
Dependendo do sistema operacional da sua máquina, as etapas de instalação podem variar. Por exemplo, vamos executar este comando Linux para instalar o ping em nosso sistema de teste Ubuntu:
sudo apt-get update && install iputils-ping
Uma vez instalado, execute o comando ping com a seguinte sintaxe. Ela deve ser a mesma para todas as distribuições:
ping option destino
Substitua destino pelo endereço IP exato, nome do host ou URL do sistema alvo. Você também pode adicionar uma opção para especificar o comportamento do comando. Aqui estão algumas das opções mais populares:
Opções | Uso |
-c | define quantos pacotes enviar |
-a | toca um som quando o destino responde |
-i | altera o intervalo para enviar pacotes |
-v | habilita a saída detalhada |
-V | verifica a versão do ping |
-q | resume todos os resultados do ping em uma saída |
-f | inunda o host de destino com um grande número de pacotes para testes de estresse |
-4 e -6 | especifica o protocolo de endereço IP de destino como IPv4 ou IPv6, respectivamente |
-s | modifica a unidade máxima de transmissão |
-D | inicia cada resultado de ping com um timestamp UNIX |
-W ou -w | define um tempo limite para cada pacote ou sessão, respectivamente |
Dica
Combine várias opções de comando ping para testes mais específicos.
Como Usar o Comando Ping no Linux
Esta seção explorará os casos de uso, a sintaxe e a saída do comando ping do Linux. Para executar esses comandos em uma máquina remota, conecte-se usando um prompt de comando, um cliente SSH como o PuTTY ou o Terminal. Para usuários da Hostinger, use o Terminal do Navegador integrado.
1. Verifique a Conectividade
O comando ping mais básico permite que você verifique a conexão de um servidor com a internet. Por exemplo, execute o seguinte para verificar se o seu sistema está conectado à internet e pode alcançar o servidor de hospedagem do Google:
ping google.com
Use este comando para verificar se o seu VPS está funcionando e respondendo à conexão do cliente. Use o nome do host ou o endereço IP como destino:
ping 185.185.185.185
Se o Terminal retornar a resposta da mensagem de eco ICMP (icmp echo_request), seu sistema está ativo e conectado à internet.
Caso contrário, o VPS ou a máquina do cliente podem estar enfrentando problemas. Para verificar se o seu sistema atual está enfrentando um problema de conexão de rede, faça um ping no nome do host:
ping localhost
Se o comando ping retornar uma resposta de eco, o problema está no sistema remoto.
2. Especifique o número do ECHO_REQUEST
Por padrão, o ping envia pacotes ilimitados até que o usuário termine o processo. Para enviar um número específico de pacotes, use a opção -c:
ping -c * destino
Substitua * pelo número limite para seus pacotes. Por exemplo, este comando ping enviará cinco pacotes para o endereço IP especificado:
ping -c 5 185.185.185.185
3. Ping Audível
A opção -a emitirá um som quando o comando ping receber uma resposta do dispositivo alvo. Como manter o Terminal aberto até que ele receba uma resposta é inconveniente, essa opção é útil para a solução de problemas de rede.
A sintaxe e a saída são semelhantes ao comando básico de ping:
ping -a destino
4. Definir Intervalos
O comando ping enviará um pacote a cada segundo. No entanto, você pode precisar alterar esse intervalo para uma tarefa específica. Por exemplo, um intervalo de tempo mais curto é útil durante a resolução de problemas, pois você obterá mais amostras de dados.
Para alterar o valor padrão do intervalo de ping, use a opção -i e especifique o número de segundos. Para configurá-lo mais rápido que um segundo, use um decimal. Veja um exemplo:
ping -i 0.5 185.185.185.185
5. Receba Apenas o Resumo do Comando Ping do Linux
O monitoramento contínuo de ping pode ser tedioso devido à longa saída do Terminal. Para simplificar os resultados, use a opção -q . O comando irá resumir todas as estatísticas de ping em uma única saída, simplificando a análise:
ping -q destino
Se você não especificar o número de pacotes, o resumo aparecerá depois que você encerrar o processo.
6. Inunde a Rede com o Comando Ping do Linux
O comando ping permite que você envie pacotes rapidamente em grandes quantidades usando a opção -f . Isso ajuda a simular o desempenho do seu servidor durante um pico de tráfego ou um ataque distribuído de negação de serviço (DDoS). Aqui está a sintaxe do comando:
ping -f destino
Assim como a opção -q , o comando de inundação de ping mostrará apenas o resumo das respostas do pacote. Por exemplo, a seguinte saída mostra que enviamos mais de 200 pacotes ping em dois segundos.
7. Especifique o Protocolo de Internet
Devido ao desenvolvimento da internet, os endereços IP IPv4 estão se esgotando, e o IPv6 está se tornando mais comum. O comando ping usa por padrão o IPv4, mas você pode usar qualquer protocolo de internet.
Adicione a opção -4 para usar o endereço IPv4 e -6 para enviar um ping IPv6. Ficará assim:
ping -4 destino
ping -6 destino
Você ainda pode fazer ping em um nome de host ou nome de domínio com essas opções. Neste caso, a saída mostrará que o destino foi resolvido para o endereço IP correspondente.
8. Altere o Tamanho do Pacote Ping
Por padrão, o comando ping envia um pacote com 56(84) bytes de dados. 56 representa o tamanho do seu pacote em bytes. Enquanto isso, 84 especifica o tamanho total do byte ping, incluindo todos os cabeçalhos, que adicionam 28 bytes.
Você pode alterar o tamanho padrão para verificar se sua conexão de rede sofre limitações ao receber um pacote maior. Para fazer isso, use a opção -s :
ping -s 1234 destino
Substitua 1234 pelo tamanho real do seu pacote de ping em bytes. Lembre-se de que o tamanho no seu comando não inclui o cabeçalho. Então, se você escrever 1000, o tamanho total do seu pacote será de 1028 bytes.
Importante! Devido às limitações do protocolo, o tamanho máximo do pacote é de 65.535 bytes, incluindo o cabeçalho.
9. Adicione uma Timestamp
Para simplificar o monitoramento de desempenho de rede, o comando ping permite que você adicione um carimbo de data/hora à resposta do pacote. Para fazer isso, adicione a opção -D usando a seguinte sintaxe de comando:
ping -D destino
A saída começará com um carimbo de data/hora em um formato UNIX semelhante ao seguinte:
O carimbo de data/hora mostra o segundo, minuto, hora, dia, mês e ano de cada resposta. Para convertê-lo em um formato legível, use uma ferramenta online como o Epoch Converter.
10. Ping de Tempo Esgotado
O comando ping tem duas opções de tempo limite, -W e -w. A opção -W determina o tempo que cada ping vai esperar até que o host especificado envie uma resposta. Se exceder o tempo, a solicitação expira.
Enquanto isso, a opção –w define o limite de tempo antes do comando ping sair. O terminal encerrará automaticamente o processo assim que atingir o tempo especificado. Aqui estão as sintaxes para os comandos de ping:
ping -W * destino
ping -w * destino
Substitua * pela duração do tempo limite em segundos. Por exemplo, use o seguinte para pingar seu host remoto por cinco segundos:
ping -w 5 185.185.185.185
Interpretando Resultados de Ping
A resposta do ping fornece várias informações sobre sua conectividade de rede. A saída pode variar dependendo da sua opção e condição de rede, mas a estrutura permanece a seguinte:
64 bytes from (185.185.185.185): icmp_seq=1 ttl=64 time=0.1 ms
Aqui está como interpretar a saída de ping acima:
- 64 bytes – o tamanho do pacote em bytes de dados do protocolo ICMP. Ele adiciona 8 bytes ao tamanho do pacote para o cabeçalho ICMP.
- de (185.185.185.185): – o endereço de destino que responde ao seu ping. Se você usar um nome de host ou domínio, ele mostrará o endereço IP resolvido.
- Icmp_seq – o número de sequência ICMP do pacote. O número será aumentado em um único dígito para solicitações de eco subsequentes.
- ttl (tempo de vida) – essa métrica indica quantas vezes o pacote pode se mover entre roteadores antes de expirar.
- time=0.1 ms – o tempo total de ida e volta (RTT) para um pacote, incluindo o atraso.
No final da saída está a linha de estatísticas do ping, que resume todos os pacotes. Esses dados são úteis para análise de latência e perda de pacotes. Em outras palavras, você pode usá-lo para identificar possíveis problemas que diminuem a velocidade da sua rede.
Dicas para Usar o Comando Ping
Nesta seção, vamos explorar as melhores práticas de ping para te ajudar a usar efetivamente a ferramenta para diagnósticos e monitoramento de rede.
Use o Ping para Diagnosticar Problemas Internos e Externos de Rede
Se você tem vários sistemas em uma rede, determinar onde o problema está pode ser difícil. O comando ping permite que você direcione diferentes destinos para identificar facilmente qual sistema está enfrentando um problema.
Além disso, você pode pingar seu sistema atual para diagnosticar a interface de rede local. Ao fazer loop de pacotes, você pode determinar se o stack de rede está funcionando corretamente.
Compare os Resultados do Ping para Estabelecer Linhas de Base para o Desempenho da Rede
Para identificar problemas de rede, você deve entender como ela normalmente funciona. Lembre-se de que cada rede se comporta de maneira diferente devido a fatores como carga, topologia e distância.
Executar o comando ping várias vezes permite que você determine o benchmark de desempenho para análise de linha de base da rede.
Se o resultado do seu ping desviar da linha de base, isso indica possíveis problemas. Além disso, você pode usar esses dads para avaliar o desempenho do seu servidor após implementar alterações.
Tenha Cuidado com as Configurações de Firewall que Podem Bloquear Solicitações ICMP
Alguns firewalls de distribuições Linux podem bloquear solicitações ICMP por padrão, impedindo você de receber ou enviar pacotes ping.
Para verificar um conflito entre firewall e solicitações ICMP, liste suas regras do iptables usando o seguinte comando:
sudo iptables -L
Procure por uma regra que contenha ICMP com o valor de DROP ou REJECT. Para permitir solicitações de ping, remova as regras do iptables usando a seguinte sintaxe de comando:
sudo iptables -D rules
Use o Ping em Combinação com Outras Ferramentas de Diagnóstico para uma Análise Abrangente
Embora seja adequado para análises básicas, o comando ping pode ser insuficiente para diagnosticar todos os problemas de rede. Tente combiná-lo com outras ferramentas de rede Linux para uma análise mais aprofundada.
Por exemplo, combine o traceroute e o ping para rastrear a rota de um pacote do sistema do cliente até o destino. Para testar o desempenho da rede, use o Iperf para medir a velocidade máxima de conexão e a largura de banda.
Os usuários do VPS da Hostinger podem, no hPanel, usar o recurso de Uso do Servidor para monitorar facilmente a transmissão de pacotes e o uso da rede com um gráfico fácil de entender.
Conclusão
O comando ping do Linux é uma ferramenta para testar a conectividade e a disponibilidade do sistema, seja ele um servidor local, remoto, de e-mail ou tantos outros. Ele está pré-instalado na maioria das distribuições Linux e é acessível via linha de comando, no Terminal ou um cliente SSH. Seu funcionamento o envio de pacotes ICMP para uma máquina de destino usando seu nome de host, domínio ou endereço IP.
Os usuários podem adicionar várias opções para modificar o comando para diferentes cenários de teste. Por exemplo, use -c para definir o número de pacotes enviados, -i para alterar o intervalo de tempo, e -q para resumir os resultados do ping em uma única saída.
A saída do ping fornece informações sobre o destino do pacote, tamanho, tempo de vida e tempo de resposta. Além de um sistema remoto, você pode pingar seu computador local para diagnosticar problemas de rede internos.
O firewall do seu sistema pode fazer com que o ping não funcione corretamente. Ao fazer ping, certifique-se de que o firewall do seu sistema não bloqueie os pacotes ICMP.
Para diagnósticos mais precisos, execute o comando várias vezes e combine-o com outras ferramentas, como o traceroute.
Comentários
May 24 2022
Boa noite, instalei o centos 6.6 no modo texto. Porem a minha conexão com a internet não funciona de jeito nenhum, já tentei de tudo que conhecia e tbm o que pesquisei. vou relatar aqui o problema. n minha rede interna os dispositivos se comunicam normal, isso testo atraves do comando ping. porem quando faço esse mesmo teste como no exemplo a seguir. (ping www.google.com.br) simples a resposta é ping www.google.com.br (172.217.29.3)56(84) bytes of data. e fica somente nisso e não sai disso ate eu da ctrl+c. Att.: Carlos Lima
June 03 2022
Olá, Carlos! Conversei com nosso time técnico aqui e o que você descreveu parecem sinais de um problema no firewall. No caso, recomendamos todos os passos comuns para resolver problemas de conexão, como reiniciar o roteador e limpar o cache DNS. Também é uma boa ideia checar o firewall para garantir que ele está funcionando de maneira correta, e que não está bloqueando quaisquer conexões com a internet. Se nada disso funcionar, a única solução realmente é entrar em contato com sua provedora de internet ?