Comando ping: opções do ping no Linux e como verificar 100% packet loss

Ambiente de testeFamília RHELAlmaLinux 9.8iputils 20210202conta rootDebian 12 · iputils 20221126 conta comum
Comandos de redepingLocalização/usr/bin/pingVerificado em 2026-11-04

Em um servidor Linux, o comando ping verifica se os pacotes chegam a outro servidor e quanto tempo leva a ida e volta. Ao enviar para example.com a partir de servidores AlmaLinux 9 e Debian 12 com um número definido por -c, o tempo de ida e volta foi de 1 a 3 ms, e um servidor que bloqueia ICMP mostrou 100% packet loss no ping mesmo respondendo a requisições web.

A saída abaixo vem de um servidor AlmaLinux 9.8 (conta root) e de um servidor Debian 12 (conta comum). Todos os ping foram executados com o número de envios definido por -c. Os IPs privados dos roteadores intermediários foram trocados por valores de exemplo, e os endereços resolvidos a partir de domínios públicos como example.com foram mantidos como estavam.

1️⃣ Como usar o comando ping

  • ↪️ Como ler as linhas de saída

O ping envia uma solicitação de eco ICMP ao outro servidor e mostra, linha por linha, quanto tempo a resposta de eco levou para voltar. No Linux, o ping continua enviando até você parar com Ctrl+C se não definir um número com -c (segundo o manual oficial), então execute-o desde o início com um número, como -c 4.

ping -c 4 example.com
PING example.com (172.66.147.243) 56(84) bytes of data.
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=1 ttl=58 time=1.46 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=2 ttl=58 time=1.30 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=3 ttl=58 time=1.28 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=4 ttl=58 time=1.30 ms

--- example.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 1.279/1.336/1.464/0.074 ms

Ao enviar quatro pacotes para example.com a partir do servidor Debian 12, as quatro respostas voltaram, com tempo de ida e volta de 1,28 a 1,46 ms. Veja abaixo o que cada linha mostra.

SaídaO que mostra
PING example.com (172.66.147.243) 56(84) bytes of data.O endereço obtido ao resolver o nome e o tamanho enviado — 56 bytes de dados mais 20 bytes de cabeçalho IP e 8 bytes de cabeçalho ICMP somam 84 bytes
64 bytes from …Tamanho da resposta recebida (56 bytes de dados + 8 bytes de cabeçalho ICMP)
icmp_seq=1Número de sequência do envio
ttl=58TTL que resta no pacote de resposta — cai 1 a cada roteador que ele atravessa
time=1.46 msTempo de ida e volta desse pacote
4 packets transmitted, 4 received, 0% packet lossPacotes enviados, pacotes recebidos e a parcela sem resposta
time 3003msTempo do primeiro envio até o fim
rtt min/avg/max/mdevTempo de ida e volta mínimo, médio e máximo, e a dispersão (mdev)

O mdev indica o quanto os tempos de ida e volta se afastam da média, e o manual oficial explica que, quanto maior o valor, menos uniformes são esses tempos. Neste resultado, com as quatro respostas abaixo de 1,5 ms, o mdev foi 0,074 ms.

O mesmo comando no servidor AlmaLinux 9 enviou para o endereço IPv6 de example.com, e a primeira linha mostrou só 56 data bytes, sem o 84.

ping -c 4 example.com
PING example.com(2606:4700:10::ac42:93f3 (2606:4700:10::ac42:93f3)) 56 data bytes
64 bytes from 2606:4700:10::ac42:93f3 (2606:4700:10::ac42:93f3): icmp_seq=1 ttl=51 time=2.20 ms
64 bytes from 2606:4700:10::ac42:93f3 (2606:4700:10::ac42:93f3): icmp_seq=2 ttl=54 time=2.30 ms
64 bytes from 2606:4700:10::ac42:93f3 (2606:4700:10::ac42:93f3): icmp_seq=3 ttl=51 time=2.55 ms
64 bytes from 2606:4700:10::ac42:93f3 (2606:4700:10::ac42:93f3): icmp_seq=4 ttl=54 time=2.26 ms

--- example.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 2.203/2.326/2.547/0.131 ms

Verifique a versão do ping instalada com -V. O servidor Debian 12 tinha iputils 20221126 e o servidor AlmaLinux 9, iputils 20210202.

ping -V
ping from iputils 20221126
libcap: yes, IDN: yes, NLS: no, error.h: yes, getrandom(): yes, __fpending(): yes
ping -V
ping from iputils 20210202

2️⃣ Opções de quantidade e intervalo do ping

  • ↪️ -c, -i, -w, -W, -q

Entre as opções do ping, -c é o número de envios e -i é o intervalo entre eles (segundos). O intervalo padrão é de 1 segundo, e com -i 0.5 o tempo para enviar quatro pacotes caiu de 3003 ms para 1502 ms.

ping -c 4 -i 0.5 example.com
PING example.com (172.66.147.243) 56(84) bytes of data.
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=1 ttl=58 time=1.26 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=2 ttl=58 time=1.31 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=3 ttl=58 time=1.37 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=4 ttl=58 time=1.44 ms

--- example.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 1502ms
rtt min/avg/max/mdev = 1.264/1.343/1.436/0.065 ms

Pelo manual do iputils 20210202 do servidor AlmaLinux 9, só o root pode usar um intervalo menor que 0,2 segundo, enquanto o manual do iputils 20221126 do servidor Debian 12 coloca esse limite em 2 ms. Intervalos curtos podem sobrecarregar o outro servidor e a rede.

-w é o tempo (segundos) após o qual o ping termina por completo, não importa quantos envios tenha feito. Junto com -c, termina ao receber o número de respostas definido ou quando o tempo de -w acaba. Com -c 10 -w 3, enviou só três pacotes e terminou após 3 segundos.

ping -c 10 -w 3 example.com
PING example.com (172.66.147.243) 56(84) bytes of data.
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=1 ttl=58 time=1.34 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=2 ttl=58 time=1.27 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=3 ttl=58 time=1.34 ms

--- example.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 1.272/1.318/1.342/0.032 ms

As três respostas chegaram, mas como os 10 envios definidos não foram completados, o código de saída do ping foi 1. O manual oficial também explica que, usando -c e -w juntos, o ping termina com 1 se não receber o número de respostas definido.

-W é o tempo (segundos) de espera por uma única resposta. Segundo o manual oficial, esse valor só vale quando nenhuma resposta chega; para um destino que responde, o ping espera o dobro do tempo de ida e volta.

Para ver só o resumo, sem as linhas de resultado, adicione -q. Depois de quatro envios, restaram só a primeira linha e as estatísticas finais.

ping -c 4 -q example.com
PING example.com (104.20.23.154) 56(84) bytes of data.

--- example.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 1.551/1.649/1.715/0.060 ms

3️⃣ Opções de tamanho de pacote e IPv6 do ping

  • ↪️ -s, -t, -4, -6

O tamanho dos dados enviados é alterado com -s. Com -s 1000, a primeira linha passou para 1000(1028) bytes e as linhas de resposta para 1008 bytes.

ping -c 2 -s 1000 example.com
PING example.com (172.66.147.243) 1000(1028) bytes of data.
1008 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=1 ttl=58 time=1.21 ms
1008 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=2 ttl=58 time=1.31 ms

--- example.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 1.214/1.262/1.311/0.048 ms

1028 é 1000 bytes de dados mais 20 bytes de cabeçalho IP e 8 bytes de cabeçalho ICMP, e 1008 é os dados mais só o cabeçalho ICMP. O tempo de ida e volta foi de 1,21 a 1,31 ms, quase igual ao do tamanho padrão (56 bytes).

-t define o TTL dos pacotes enviados. O TTL cai 1 a cada roteador e, quando chega a 0, esse roteador descarta o pacote e devolve [Time to live exceeded].

ping -c 2 -t 3 example.com
PING example.com (172.66.147.243) 56(84) bytes of data.
From 192.0.2.103 (192.0.2.103) icmp_seq=1 Time to live exceeded
From 192.0.2.103 (192.0.2.103) icmp_seq=2 Time to live exceeded

--- example.com ping statistics ---
2 packets transmitted, 0 received, +2 errors, 100% packet loss, time 1001ms

Com o TTL reduzido para 3, o terceiro roteador devolveu [Time to live exceeded] nas duas vezes. Aumentando o TTL de um em um a partir de 1, a primeira resposta de example.com veio em 8.

-4 e -6 limitam o tipo de endereço de destino a IPv4 ou IPv6. O servidor AlmaLinux 9 enviava para o endereço IPv6 de example.com mesmo sem opção, então -4 foi adicionado para enviar ao endereço IPv4.

ping -4 -c 4 example.com
PING  (172.66.147.243) 56(84) bytes of data.
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=1 ttl=54 time=2.64 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=2 ttl=54 time=2.55 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=3 ttl=54 time=2.57 ms
64 bytes from 172.66.147.243 (172.66.147.243): icmp_seq=4 ttl=54 time=2.58 ms

---  ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 2.553/2.585/2.642/0.033 ms

No iputils 20210202 do servidor AlmaLinux 9, adicionar -4 deixou vazio o campo do nome na primeira linha e na linha de estatísticas. O mesmo comando no iputils 20221126 do servidor Debian 12 mostrou example.com normalmente.

No servidor Debian 12, que não tem rota IPv6 padrão, adicionar -6 terminou na hora com [connect: Network is unreachable], sem linhas de resposta.

ping -6 -c 2 example.com
ping: connect: Network is unreachable

🔲 Opções do comando ping

📌 Principais opções: resultados deste artigo

OpçãoTarefaResultado neste artigo
-c númeroDefine quantos pacotes enviar e termina depois de enviá-los-c 4 no servidor Debian 12: quatro envios, quatro respostas, ida e volta 1,28–1,46 ms
-i intervaloIntervalo entre os envios (segundos), padrão 1 segundoCom -i 0.5, o tempo para enviar quatro pacotes caiu de 3003 ms para 1502 ms
-w tempoTempo (segundos) após o qual o ping termina por completo, não importa quantos envios tenha feito-c 10 -w 3 enviou só três pacotes em 3 segundos e terminou com código de saída 1
-W tempoTempo (segundos) de espera por uma única resposta quando nenhuma resposta chegaDois envios para 192.0.2.1 com -W 1: [100% packet loss], código de saída 1
-qMostra só a primeira linha e as estatísticas finais, sem linhas de respostaDepois de quatro envios, restaram só a primeira linha e a linha de estatísticas
-s tamanhoTamanho dos dados enviados (bytes), padrão 56Com -s 1000, a primeira linha mostra 1000(1028) bytes e as linhas de resposta 1008 bytes
-t TTLTTL dos pacotes enviadosCom -t 3, o terceiro roteador devolveu [Time to live exceeded] nas duas vezes
-4Envia só para endereços IPv4No servidor AlmaLinux 9, enviou para o endereço IPv4 em vez do IPv6; o campo do nome fica vazio
-6Envia só para endereços IPv6No servidor Debian 12 sem rota IPv6 padrão: [connect: Network is unreachable]
-DColoca o horário Unix (segundos.microssegundos) na frente de cada linha de respostaUm registro de horário como [1793227536.574201] aparece na frente de cada linha de resposta
-VMostra as informações de versãoDebian 12 tem iputils 20221126, AlmaLinux 9 tem iputils 20210202

📎 Outras opções: segundo o manual oficial

OpçãoTarefa
-nMostra os endereços só como números, sem resolvê-los em nomes
-I interfaceDefine a interface ou o endereço de origem do envio
-AAjusta sozinho o intervalo de envio ao tempo de ida e volta; sem root, intervalo mínimo de 200 ms
-fPing de inundação (flood) que envia rápido sem esperar respostas; intervalo 0 só para root
-l númeroNúmero de pacotes enviados antecipadamente sem esperar resposta; mais de 3 só para root
-M doDefine o modo do Path MTU Discovery; do impede a fragmentação (want e dont também são aceitos)
-p padrãoPadrão de bytes que preenche os pacotes enviados, até 16 bytes
-OAvisa sobre solicitações sem resposta antes de enviar o próximo pacote; usado com -D ao registrar
-RRegistra o caminho percorrido (só IPv4; muitos hosts ignoram esta opção)
-bPermite enviar para um endereço de broadcast
-aEmite um som a cada resposta recebida

🔲 Simulador do comando ping

No simulador abaixo, você pode digitar comandos e ver os resultados de quantidade e intervalo, tamanho do pacote e envio para um endereço que não responde.

Simulador do comando pingiputils 20221126
[root@server work]#
Funciona só dentro do navegador e não envia pacotes de verdade. Com ↑↓ você recupera comandos digitados antes.

4️⃣ ping sem resposta

  • ↪️ 100% packet loss e falha na resolução de nomes

[100% packet loss] significa que nenhuma resposta voltou para os pacotes enviados. Dois envios com -W 1 para 192.0.2.1, um endereço reservado para documentação, mostraram só as estatísticas, sem linhas de resposta.

ping -c 2 -W 1 192.0.2.1
PING 192.0.2.1 (192.0.2.1) 56(84) bytes of data.

--- 192.0.2.1 ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1024ms

Quando nenhuma resposta voltou, o código de saída do ping foi 1, e quando as respostas voltaram foi 0. Scripts usam esse valor para verificar se outro servidor está respondendo.

ping -c 2 -W 1 192.0.2.1 > /dev/null; echo $?; ping -c 1 example.com > /dev/null; echo $?
1
0

O ping só verifica ICMP, então um servidor que bloqueia ICMP pode responder a requisições web e ignorar o ping. Dois envios para amazon.com a partir do servidor Debian 12 deram [100% packet loss], enquanto uma requisição web com curl para o mesmo endereço recebeu uma resposta 301.

ping -c 2 -W 1 amazon.com
PING amazon.com (98.82.161.185) 56(84) bytes of data.

--- amazon.com ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1002ms
curl -sI https://amazon.com/ | head -1
HTTP/1.1 301 Moved Permanently

Um servidor que bloqueia ICMP é como uma loja que tirou a campainha da porta.

Alguns servidores na nuvem só respondem ao ping depois que o ICMP é liberado nas regras do firewall. Uma instância de VM do Oracle Cloud respondeu ao ping depois que o tipo ICMP na lista de segurança da sub-rede pública foi alterado para 8.

Se o ping não consegue resolver o nome em um endereço IP, termina na hora com [Name or service not known], sem a primeira linha, e o código de saída foi 2. .invalid é um nome reservado para não ser resolvido em lugar nenhum, por isso foi usado para verificar esse erro.

ping -c 1 no-such-host.invalid
ping: no-such-host.invalid: Name or service not known

Se esse erro aparecer em um domínio real, use o comando nslookup para verificar se o servidor DNS devolve um endereço para esse nome. As quatro saídas vistas quando não houve resposta e o que verificar em seguida estão abaixo.

SaídaSignificadoO que verificar em seguida
100% packet lossNenhuma resposta voltou para os pacotes enviadosO serviço web com curl, o firewall com uma regra que libere ICMP
Name or service not knownNão conseguiu resolver o nome em um endereço IPResposta DNS com nslookup
connect: Network is unreachableNão há rota de saída para esse tipo de endereçoEnviar para o endereço IPv4 com -4
Time to live exceededO TTL chegou a 0 em um roteador intermediárioAumentar o valor de -t ou retirá-lo e enviar de novo

🔢 FAQ & conteúdo recomendado

No servidor Debian 12, executar com uma conta comum recebeu respostas sem sudo. O /usr/bin/ping desse servidor tem a permissão cap_net_raw (capability), então podia enviar pacotes ICMP sem ser root.

Nos dois servidores verificados, o ping era instalado pelo pacote iputils no AlmaLinux 9 e pelo pacote iputils-ping no Debian 12. Por isso, instale com [sudo dnf install iputils] na família RHEL e com [sudo apt install iputils-ping] na família Debian.

Com -D, o horário Unix (segundos.microssegundos) aparece na frente de cada linha de resposta. Dois envios para example.com a partir do servidor Debian 12 registraram um horário como [1793227536.574201] na frente de cada linha de resposta.

ℹ️ Aviso de afiliados
O conteúdo deste site contém links de afiliados. Quando um visitante compra um produto ou serviço por meio de um desses links, o site recebe uma comissão do vendedor. O valor que o comprador paga (em promoções, ele diminui ↓) não aumenta por causa disso. Preços, descontos e informações de estoque valem para o momento em que o texto foi escrito e podem ter mudado, por isso confirme com o vendedor antes de comprar. Os produtos são escolhidos e avaliados por critérios próprios, e o recebimento de comissão não influencia a ordem de apresentação nem o conteúdo das avaliações.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Demonstre sua humanidade: 5   +   8   =