Comando ping: opciones de ping en Linux y cómo comprobar el 100% packet loss

Entorno de pruebaFamilia RHELAlmaLinux 9.8iputils 20210202Cuenta rootDebian 12 · iputils 20221126 cuenta normal
Comandos de redpingUbicación/usr/bin/pingVerificado el 2026-11-04

En un servidor Linux, el comando ping comprueba si los paquetes llegan a otro servidor y cuánto tarda el viaje de ida y vuelta. Al enviar paquetes a example.com desde servidores AlmaLinux 9 y Debian 12 con un número fijado con -c, el tiempo de ida y vuelta fue de 1 a 3 ms, y un servidor que bloquea ICMP dio 100% packet loss en ping aunque respondía a las peticiones web.

La salida de abajo procede de un servidor AlmaLinux 9.8 (cuenta root) y de un servidor Debian 12 (cuenta normal). Todos los ping se ejecutaron fijando con -c el número de envíos. Las IP privadas de los routers intermedios se cambiaron por valores de ejemplo, y las direcciones resueltas a partir de dominios públicos como example.com se dejaron tal cual.

1️⃣ Cómo usar el comando ping

  • ↪️ Cómo leer las líneas de salida

ping envía una solicitud de eco ICMP al otro servidor e imprime, línea a línea, el tiempo que tarda en volver la respuesta de eco. En Linux, ping sigue enviando hasta que lo detienes con Ctrl+C si no fijas un número con -c (según el manual oficial), así que conviene ejecutarlo desde el principio con un 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

Al enviar cuatro paquetes a example.com desde el servidor Debian 12 llegaron las cuatro respuestas, con un tiempo de ida y vuelta de 1,28 a 1,46 ms. Esto es lo que muestra cada línea.

SalidaQué muestra
PING example.com (172.66.147.243) 56(84) bytes of data.La dirección obtenida al resolver el nombre y el tamaño enviado — 56 bytes de datos más 20 bytes de cabecera IP y 8 bytes de cabecera ICMP suman 84 bytes
64 bytes from …Tamaño de la respuesta recibida (56 bytes de datos + 8 bytes de cabecera ICMP)
icmp_seq=1Número de secuencia del envío
ttl=58TTL que queda en el paquete de respuesta — baja en 1 en cada router que atraviesa
time=1.46 msTiempo de ida y vuelta de ese paquete
4 packets transmitted, 4 received, 0% packet lossPaquetes enviados, paquetes recibidos y porcentaje sin respuesta
time 3003msTiempo desde el primer envío hasta que termina
rtt min/avg/max/mdevTiempo de ida y vuelta mínimo, medio y máximo, y su dispersión (mdev)

mdev indica cuánto se alejan los tiempos de ida y vuelta de la media, y el manual oficial explica que cuanto mayor es, menos uniformes son esos tiempos. En este resultado, con las cuatro respuestas por debajo de 1,5 ms, mdev fue 0,074 ms.

Al ejecutar el mismo comando en el servidor AlmaLinux 9, ping envió a la dirección IPv6 de example.com, y la primera línea mostró solo 56 data bytes, sin el 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

Comprueba la versión de ping instalada con -V. El servidor Debian 12 tenía iputils 20221126 y el 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️⃣ Opciones de número de envíos e intervalo de ping

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

Entre las opciones de ping, -c es el número de envíos y -i el intervalo entre ellos (segundos). El intervalo por defecto es de 1 segundo, y con -i 0.5 el tiempo para enviar cuatro paquetes bajó de 3003 ms a 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

Según el manual de iputils 20210202 del servidor AlmaLinux 9, solo root puede usar un intervalo menor de 0,2 segundos, mientras que el manual de iputils 20221126 del servidor Debian 12 fija ese límite en 2 ms. Los intervalos cortos pueden cargar el otro servidor y la red.

-w es el tiempo (segundos) tras el que ping termina del todo, sin importar cuántos envíos haya hecho. Junto con -c, termina al recibir el número fijado de respuestas o al agotarse el tiempo de -w. Con -c 10 -w 3 envió solo tres paquetes y terminó a los 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

Llegaron las tres respuestas, pero como no se completaron los 10 envíos fijados, el código de salida de ping fue 1. El manual oficial también explica que, al usar -c y -w juntos, ping termina con 1 si no recibe el número de respuestas fijado.

-W es el tiempo (segundos) que se espera una sola respuesta. Según el manual oficial, este valor solo se aplica cuando no llega ninguna respuesta; con un destino que sí responde, espera el doble del tiempo de ida y vuelta.

Para ver solo el resumen sin las líneas de resultado, añade -q. Al enviar cuatro paquetes quedaron solo la primera línea y las estadísticas finales.

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️⃣ Opciones de tamaño de paquete e IPv6 de ping

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

El tamaño de los datos enviados se cambia con -s. Con -s 1000, la primera línea pasó a 1000(1028) bytes y las líneas de respuesta a 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 son 1000 bytes de datos más 20 bytes de cabecera IP y 8 bytes de cabecera ICMP, y 1008 son los datos más solo la cabecera ICMP. El tiempo de ida y vuelta fue de 1,21 a 1,31 ms, sin gran diferencia respecto al tamaño por defecto (56 bytes).

-t fija el TTL de los paquetes enviados. El TTL baja en 1 en cada router, y al llegar a 0 ese router descarta el paquete y devuelve [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

Con el TTL bajado a 3, el tercer router devolvió [Time to live exceeded] las dos veces. Subiendo el TTL de uno en uno desde 1, example.com respondió por primera vez con 8.

-4 y -6 limitan el tipo de dirección de destino a IPv4 o a IPv6. El servidor AlmaLinux 9 enviaba a la dirección IPv6 de example.com incluso sin opciones, así que para enviar a la dirección IPv4 se añadió -4.

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

Con iputils 20210202 en el servidor AlmaLinux 9, al añadir -4 el campo del nombre salió vacío en la primera línea y en la de estadísticas. Con el mismo comando en iputils 20221126 del servidor Debian 12, example.com apareció con normalidad.

En el servidor Debian 12, que no tiene ruta IPv6 por defecto, añadir -6 terminó enseguida con [connect: Network is unreachable] y sin líneas de respuesta.

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

🔲 Opciones del comando ping

📌 Opciones principales: resultados de este artículo

OpciónTareaResultado en este artículo
-c númeroFija cuántos paquetes enviar y termina tras enviarlos-c 4 en el servidor Debian 12: cuatro envíos y cuatro respuestas, ida y vuelta 1,28–1,46 ms
-i intervaloIntervalo entre envíos (segundos), 1 segundo por defectoCon -i 0.5, el tiempo para enviar cuatro paquetes bajó de 3003 ms a 1502 ms
-w tiempoTiempo (segundos) tras el que ping termina del todo, sin importar cuántos envíos haya hecho-c 10 -w 3 envió solo tres paquetes a los 3 segundos y terminó con código de salida 1
-W tiempoTiempo (segundos) de espera de una sola respuesta cuando no llega ningunaDos envíos a 192.0.2.1 con -W 1: [100% packet loss], código de salida 1
-qMuestra solo la primera línea y las estadísticas finales, sin líneas de respuestaTras cuatro envíos quedan solo la primera línea y la de estadísticas
-s tamañoTamaño de los datos enviados (bytes), 56 por defectoCon -s 1000, la primera línea muestra 1000(1028) bytes y las de respuesta 1008 bytes
-t TTLTTL de los paquetes enviadosCon -t 3, el tercer router devolvió [Time to live exceeded] las dos veces
-4Envía solo a direcciones IPv4En el servidor AlmaLinux 9 envió a la dirección IPv4 en lugar de IPv6; el campo del nombre sale vacío
-6Envía solo a direcciones IPv6En el servidor Debian 12 sin ruta IPv6 por defecto: [connect: Network is unreachable]
-DAñade delante de cada línea de respuesta el tiempo Unix (segundos.microsegundos)Delante de cada línea de respuesta aparece una marca de tiempo como [1793227536.574201]
-VMuestra la información de versiónDebian 12 tiene iputils 20221126 y AlmaLinux 9, iputils 20210202

📎 Otras opciones: según el manual oficial

OpciónTarea
-nMuestra las direcciones solo como números, sin resolverlas a nombres
-I interfazIndica la interfaz o la dirección de origen desde la que enviar
-AAjusta por sí mismo el intervalo de envío al tiempo de ida y vuelta; sin root, intervalo mínimo de 200 ms
-fPing de inundación que envía rápido sin esperar respuestas; el intervalo 0 es solo para root
-l númeroPaquetes que se envían por adelantado sin esperar respuesta; más de 3 solo con root
-M doFija el modo de Path MTU Discovery; do impide la fragmentación (también acepta want y dont)
-p patrónPatrón de bytes con el que se rellenan los paquetes enviados, hasta 16 bytes
-OAvisa de las solicitudes sin respuesta antes de enviar el siguiente paquete; se usa con -D para registrar
-RRegistra la ruta recorrida (solo IPv4; muchos hosts ignoran esta opción)
-bPermite enviar a una dirección de difusión (broadcast)
-aEmite un sonido cada vez que llega una respuesta

🔲 Simulador del comando ping

En el simulador de abajo puedes escribir comandos tú mismo para ver los resultados con distintos números de envíos e intervalos, tamaños de paquete y envíos a una dirección que no responde.

Simulador del comando pingiputils 20221126
[root@server work]#
Funciona solo dentro del navegador y no envía paquetes reales. Con ↑↓ recuperas los comandos que escribiste antes.

4️⃣ ping sin respuesta

  • ↪️ 100% packet loss y fallo de resolución de nombres

[100% packet loss] significa que no llegó ninguna respuesta a los paquetes enviados. Al enviar dos veces con -W 1 a 192.0.2.1, una dirección reservada para documentación, solo aparecieron las estadísticas, sin líneas de respuesta.

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

Cuando no llegó ninguna respuesta, el código de salida de ping fue 1, y cuando llegaron respuestas fue 0. Los scripts usan este valor para comprobar si otro servidor responde.

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

ping solo comprueba ICMP, así que un servidor que bloquea ICMP puede responder a las peticiones web y no a ping. Al enviar dos veces a amazon.com desde el servidor Debian 12 salió [100% packet loss], y una petición web con curl a la misma dirección recibió una respuesta 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

Un servidor que bloquea ICMP es como una tienda que ha quitado el timbre.

En algunos servidores en la nube hay que permitir ICMP en las reglas del cortafuegos para que respondan a ping. Una instancia de VM de Oracle Cloud respondió a ping después de cambiar a 8 el tipo ICMP en la lista de seguridad de la subred pública.

Si no puede resolver el nombre a una dirección IP, termina enseguida con [Name or service not known] y sin primera línea, con código de salida 2. .invalid es un nombre reservado para que no se resuelva en ningún sitio, por eso se usó para comprobar este error.

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

Si este error aparece con un dominio real, consulta la guía: Comando nslookup — comprueba si el servidor DNS devuelve una dirección para ese nombre. Abajo están las cuatro salidas que aparecieron cuando no hubo respuesta y lo que conviene revisar después.

SalidaSignificadoQué revisar después
100% packet lossNo llegó ninguna respuesta a los paquetes enviadosEl servicio web con curl; el cortafuegos, con una regla que permita ICMP
Name or service not knownNo pudo resolver el nombre a una dirección IPRespuesta DNS con nslookup
connect: Network is unreachableNo hay ruta de salida para ese tipo de direcciónEnviar a la dirección IPv4 con -4
Time to live exceededEl TTL llegó a 0 en un router intermedioSubir el valor de -t o quitarlo y volver a enviar

🔢 FAQ & contenido recomendado

En el servidor Debian 12, ejecutarlo con una cuenta normal recibió respuestas sin sudo. El /usr/bin/ping de este servidor tiene la capacidad cap_net_raw (capability), así que podía enviar paquetes ICMP sin ser root.

En los dos servidores comprobados, ping lo instalaba el paquete iputils en AlmaLinux 9 y el paquete iputils-ping en Debian 12. Por eso se instala con [sudo dnf install iputils] en la familia RHEL y con [sudo apt install iputils-ping] en la familia Debian.

Con -D se añade delante de cada línea de respuesta el tiempo Unix (segundos.microsegundos). Al enviar dos veces a example.com desde el servidor Debian 12, delante de cada línea de respuesta quedó una marca de tiempo como [1793227536.574201].

ℹ️ Aviso de afiliados
El contenido de este sitio incluye enlaces de afiliado. Cuando un visitante compra un producto o servicio a través de uno de ellos, el sitio recibe una comisión del vendedor. El importe que paga el comprador(baja durante las promociones ↓)no aumenta. Los precios, descuentos y existencias publicados corresponden al momento de redacción y pueden variar, así que confírmalos con el vendedor antes de comprar. Los productos se eligen y evalúan con criterios propios, y las comisiones no influyen en el orden ni en el contenido de las reseñas.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Demuestra que eres humano: 7   +   1   =