GNU/Linux >> Linux Esercitazione >  >> Linux

Esercitazione sui comandi ping Linux per principianti (8 esempi)

Indipendentemente dal tipo di utente Linux che sei (principiante o professionista), ci sono alcuni strumenti di cui devi essere a conoscenza. Una di queste utilità è Ping . In questo tutorial, discuteremo le basi di questo strumento utilizzando alcuni esempi di facile comprensione. Ma prima di farlo, vale la pena ricordare che tutti gli esempi nell'articolo qui sono stati testati su una macchina Ubuntu 16.04 LTS.

Comando ping Linux

Nella maggior parte dei termini, il comando ping ti consente di verificare se un host remoto è attivo e risponde. Di seguito è riportata la sintassi dello strumento:

ping [OPTIONS] destination

Ed ecco come lo spiega la pagina 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).

Di seguito sono riportati alcuni esempi in stile domande e risposte che dovrebbero darti una buona idea su come funziona il comando ping.

Q1. Come utilizzare il comando ping?

L'utilizzo di base è abbastanza semplice:basta eseguire il comando 'ping' con la destinazione come input.

Ad esempio:

ping howtoforge.com

Di seguito è riportato il risultato di questo comando prodotto sul mio sistema:

Nota che per impostazione predefinita, il comando continuerà a essere eseguito finché non lo fermerai tramite Ctrl+C.

Q2. Come modificare l'intervallo di tempo tra i pacchetti ping?

Per impostazione predefinita, c'è un intervallo di un secondo tra i pacchetti ping. Tuttavia, se lo desideri, puoi personalizzare questo ritardo utilizzando l'opzione della riga di comando -i.

Ad esempio, il comando seguente assicura che ci sia un intervallo di 3 secondi:

ping -i 3 howtoforge.com

E il comando seguente invia i pacchetti con un ritardo di mezzo secondo.

ping -i 0.5 howtoforge.com

Tieni presente che solo il superutente può impostare l'intervallo su valori inferiori a 0,2 secondi

T3. Come modificare la dimensione del pacchetto ping?

Per impostazione predefinita, il numero di byte in un pacchetto ping è 56 (64 se si includono 8 byte di intestazione ICMP). Tuttavia, se lo desideri, puoi modificare questo valore, cosa che puoi fare usando l'opzione della riga di comando -s.

Ad esempio, per inviare un pacchetto da 80 byte (88 inclusa l'intestazione ICMP), utilizzare il comando seguente:

ping -s 80 howtoforge.com

Q4. Come fare in modo che il ping invii un determinato numero di pacchetti?

Il comportamento predefinito del ping consiste nel continuare a inviare pacchetti fino a quando non viene interrotto dall'utente. Tuttavia, se lo desideri, puoi forzare l'interruzione dell'esecuzione del ping dopo aver inviato un determinato numero di pacchetti. Puoi farlo usando l'opzione della riga di comando -c.

Ad esempio, il comando seguente invierà 3 pacchetti e poi si fermerà.

ping -c 3 howtoforge.com

Q5. Come lanciare una marea di pacchetti usando ping?

Sì, il comando ping offre anche un'opzione per lanciare una marea di pacchetti. Puoi farlo usando l'opzione della riga di comando -f.

ping -f howtoforge.com

Ecco cosa dicono i documenti ufficiali su questa opzione:

              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. Come creare un timestamp di stampa ping prima di ogni riga?

C'è un'opzione (-D) che ti consente di farlo. Il timestamp stampato è una combinazione di unix time e microsecondi (come in gettimeofday).

ping -D howtoforge.com

Ecco uno screenshot di questa opzione in azione:

Q7. Come impostare un timeout difficile per il ping?

È possibile specificare una scadenza per l'uscita del ping. Puoi farlo usando l'opzione della riga di comando -w che richiede un valore numerico che rappresenta il numero di secondi.

Ad esempio, il seguente comando ping si interromperà dopo 3 secondi:

ping -w 3 howtoforge.com

Ecco come i documenti ufficiali spiegano questa opzione:

              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. Come impostare un timeout soft per il ping?

Mentre l'opzione -w assicura che il ping si interrompa in ogni caso dopo la scadenza del termine, c'è un'altra opzione (-W, in maiuscolo) che interrompe anche il ping ma solo quando non c'è risposta dal lato di destinazione.

ping -W 3 howtoforge.com

Ecco come la pagina man spiega il comportamento in questo 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.

Conclusione

Ping è uno strumento importante che quasi certamente viene utilizzato per il debug di problemi relativi alla rete. In questo tutorial, abbiamo discusso alcune caratteristiche principali (opzioni della riga di comando) di questa utility. Esercitati con questi e, una volta terminato, vai alla pagina man dello strumento per saperne di più.


Linux
  1. Tutorial sul comando cd di Linux per principianti (8 esempi)

  2. Tutorial comando Linux comm per principianti (5 esempi)

  3. Linux df Command Tutorial per principianti (8 esempi)

  4. Tutorial sul comando della data di Linux per principianti (8 esempi)

  5. Tutorial sul comando del nome host Linux per principianti (5 esempi)

Linux who Command Tutorial per principianti (8 esempi)

Linux nl Command Tutorial per principianti (7 esempi)

Tutorial sui comandi Linux nm per principianti (10 esempi)

Esercitazione sui comandi OD Linux per principianti (6 esempi)

Linux w Command Tutorial per principianti (5 esempi)

Tutorial sui comandi Linux ss per principianti (8 esempi)