Tutorial del comando ping de Linux para principiantes (8 ejemplos)

Independientemente del tipo de usuario de Linux que seas (principiante o profesional), hay ciertas herramientas que debes conocer. Una de ellas es Ping. En este tutorial, hablaremos de los fundamentos de esta herramienta utilizando algunos ejemplos fáciles de entender. Pero antes de hacerlo, vale la pena mencionar que todos los ejemplos del artículo han sido probados en una máquina Ubuntu 16.04 LTS.

El comando ping de Linux

En términos básicos, el comando ping te permite comprobar si un host remoto está vivo y responde. A continuación se muestra la sintaxis de la herramienta:

ping [OPTIONS] destination

Y así es como lo explica la página man:

       ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to elicit
       an ICMP ECHO_RESPONSE from a host or gateway.   ECHO_REQUEST  datagrams
       (``pings'')  have  an  IP and ICMP header, followed by a struct timeval
       and then an arbitrary number of ``pad'' bytes  used  to  fill  out  the
       packet.

       ping6  is  IPv6  version  of  ping,  and can also send Node Information
       Queries (RFC4620).  Intermediate hops may not be allowed, because  IPv6
       source routing was deprecated (RFC5095).

A continuación hay algunos ejemplos al estilo de las preguntas y respuestas que deberían darte una buena idea de cómo funciona el comando ping.

Q1. ¿Cómo se utiliza el comando ping?

El uso básico es bastante sencillo: basta con ejecutar el comando «ping» con el destino como entrada.

Por ejemplo:

ping howtoforge.com

A continuación se muestra el resultado de este comando producido en mi sistema:

Cómo utilizar el comando ping

Ten en cuenta que, por defecto, el comando seguirá ejecutándose hasta que lo detengas mediante Ctrl+C.

Q2. ¿Cómo cambiar el intervalo de tiempo entre los paquetes de ping?

Por defecto, hay un intervalo de un segundo entre los paquetes de ping. Sin embargo, si quieres, puedes personalizar este intervalo utilizando la opción de línea de comandos -i.

Por ejemplo, el siguiente comando hace que haya un intervalo de 3 segundos:

ping -i 3 howtoforge.com

Y el siguiente comando envía paquetes con un retraso de medio segundo.

ping -i 0.5 howtoforge.com

Ten en cuenta que sólo el superusuario puede establecer el intervalo en valores inferiores a 0,2 segundos

Q3. ¿Cómo cambiar el tamaño de los paquetes de ping?

Por defecto, el número de bytes de un paquete ping es de 56 (64 si incluyes 8 bytes de la cabecera ICMP). Sin embargo, si quieres, puedes cambiar este valor, algo que puedes hacer utilizando la opción de línea de comandos -s.

Por ejemplo, para enviar un paquete de 80 bytes (88 incluyendo la cabecera ICMP), utiliza el siguiente comando:

ping -s 80 howtoforge.com

Cómo cambiar el tamaño del paquete de ping

Q4. ¿Cómo hacer que ping envíe un número determinado de paquetes?

El comportamiento por defecto de ping es seguir enviando paquetes hasta que el usuario lo interrumpa. Sin embargo, si quieres, puedes forzar a ping a que deje de ejecutarse tras enviar un número determinado de paquetes. Esto lo puedes hacer utilizando la opción de línea de comandos -c.

Por ejemplo, el siguiente comando enviará 3 paquetes y luego se detendrá.

ping -c 3 howtoforge.com

Q5. ¿Cómo lanzar una avalancha de paquetes mediante ping?

Sí, el comando ping también ofrece una opción para lanzar una avalancha de paquetes. Puedes hacerlo utilizando la opción de línea de comandos -f.

ping -f howtoforge.com

Esto es lo que dicen los documentos oficiales sobre esta opción:

              For  every  ECHO_REQUEST  sent  a  period  ``.''  is
              printed,  while  for  ever  ECHO_REPLY  received  a backspace is
              printed.  This provides a rapid display of how many packets  are
              being  dropped.   If  interval is not given, it sets interval to
              zero and outputs packets as fast as they come back or  one  hun?
              dred  times  per second, whichever is more.  Only the super-user
              may use this option with zero interval.

Q6. ¿Cómo hacer que ping imprima la marca de tiempo antes de cada línea?

Hay una opción (-D) que te permite hacerlo. La marca de tiempo que se imprime es una combinación de tiempo unix y microsegundos (como en gettimeofday).

ping -D howtoforge.com

Aquí tienes una captura de pantalla de esta opción en acción:

Cómo hacer que el ping imprima la marca de tiempo antes de cada línea

Q7. ¿Cómo establecer un tiempo límite duro para el ping?

Puedes especificar un tiempo límite para que el ping salga. Esto lo puedes hacer utilizando la opción de línea de comandos -w que requiere un valor numérico que represente el número de segundos.

Por ejemplo, el siguiente comando ping se detendrá después de 3 segundos:

ping -w 3 howtoforge.com

Así es como los documentos oficiales explican esta opción:

              Specify  a  timeout, in seconds, before ping exits regardless of
              how many packets have been sent or received. In this  case  ping
              does  not  stop after count packet are sent, it waits either for
              deadline expire or until count probes are answered or  for  some
              error notification from network.

Q8. ¿Cómo establecer un tiempo de espera suave para el ping?

Mientras que la opción -w hace que el ping se detenga en cualquier caso una vez transcurrido el plazo, hay otra opción (-W, en mayúsculas) que también hace que el ping se detenga pero sólo cuando no hay respuesta del lado de destino.

ping -W 3 howtoforge.com

Así es como la página man explica el comportamiento en este caso:

              Time to wait for a response, in seconds. The option affects only
              timeout in absence of any responses, otherwise  ping  waits  for
              two RTTs.

Conclusión

El ping es una herramienta importante que se utiliza casi con toda seguridad en la depuración de problemas relacionados con la red. En este tutorial, hemos hablado de algunas de las principales características (opciones de la línea de comandos) de esta utilidad. Practícalas, y una vez que hayas terminado, dirígete a lapágina man de la herramienta para saber más sobre ella.

También te podría gustar...