12 Praktiske eksempler på ping-kommandoer for Linux-brukere


Ping er et enkelt, mye brukt nettverksverktøy på tvers av plattformer for å teste om en vert er tilgjengelig på et IP-nettverk (Internet Protocol). Det fungerer ved å sende en serie ECHO_REQUEST-meldinger (Internet Control Message Protocol) (ICMP) til målverten og vente på et ICMP-ekkosvar (eller ECHO_RESPONSE).

Du kan kjøre en ping-test for å fastslå om datamaskinen din kan kommunisere med en annen datamaskin (målvert); det hjelper deg å bestemme:

  • om målverten er tilgjengelig (aktiv) eller ikke,
  • for å måle hvor lang tid det tar for pakker å komme til målverten og tilbake til datamaskinen (tur-retur-tiden (rtt) for å kommunisere med målverten) og
  • pakketapet, uttrykt i prosent.

Utdataene er en liste over svar fra målverten sammen med tiden det tar før den siste pakken når målverten og tilbake til datamaskinen din. Den viser også et statistisk sammendrag av testen, typisk inkludert antall pakker som er overført og de mottatte, prosentandel av pakketap; minimum, maksimum, gjennomsnittlig rundturstid og standardavvik for gjennomsnittet (mdev). I tilfelle en ping-test mislykkes, vil du se feilmeldinger som utdata.

I denne artikkelen vil vi forklare 12 praktiske eksempler på ping-kommandoer for å teste tilgjengeligheten til en vert på et nettverk.

Lær eksempler på ping-kommandoer

1. Du kan kjøre en enkel ping-test for å se om målverten www.google.com er tilgjengelig eller ikke. Du kan også bruke en IP-adresse i stedet for domenenavn som vist.

$ ping www.google.com
OR
$ ping 216.58.212.78
PING www.google.com (172.217.166.164) 56(84) bytes of data.
64 bytes from bom07s20-in-f4.1e100.net (172.217.166.164): icmp_seq=1 ttl=57 time=2.40 ms
64 bytes from bom07s20-in-f4.1e100.net (172.217.166.164): icmp_seq=2 ttl=57 time=2.48 ms
64 bytes from bom07s20-in-f4.1e100.net (172.217.166.164): icmp_seq=3 ttl=57 time=2.43 ms
64 bytes from bom07s20-in-f4.1e100.net (172.217.166.164): icmp_seq=4 ttl=57 time=2.35 ms
^C
--- www.google.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 2.353/2.420/2.484/0.058 ms

Fra resultatene av kommandoen ovenfor, var ping vellykket og ingen pakker gikk tapt. En viktig ting å merke seg, i en ping-testutgang er tiden på slutten av hvert ping-svar. Forutsatt at du utfører en ping-testing til serverne dine, betyr verdien her mye, avhengig av hvilken type applikasjon du kjører på en server.

Hvis du for eksempel har en nettapplikasjon der en enkelt brukerforespørsel resulterer i så mange forespørsler til en(e) database(r) for å generere resultater på brukergrensesnittet, betyr en lavere pingtid til den bestemte serveren at mer data blir overført uten en forsinkelse og det motsatte er sant.

2. Du kan spesifisere antall ECHO_REQUEST som skal sendes etter som ping avsluttes, ved å bruke -c-flagget som vist (i dette tilfellet vil ping-testen stoppe etter sending av 5 pakker).

$ ping -c 5 www.google.com

PING www.google.com (172.217.163.36) 56(84) bytes of data.
64 bytes from maa05s01-in-f4.1e100.net (172.217.163.36): icmp_seq=1 ttl=56 time=29.7 ms
64 bytes from maa05s01-in-f4.1e100.net (172.217.163.36): icmp_seq=2 ttl=56 time=29.7 ms
64 bytes from maa05s01-in-f4.1e100.net (172.217.163.36): icmp_seq=3 ttl=56 time=29.4 ms
64 bytes from maa05s01-in-f4.1e100.net (172.217.163.36): icmp_seq=4 ttl=56 time=30.2 ms
64 bytes from maa05s01-in-f4.1e100.net (172.217.163.36): icmp_seq=5 ttl=56 time=29.6 ms

--- www.google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4004ms
rtt min/avg/max/mdev = 29.499/29.781/30.285/0.307 ms

3. -i-flagget lar deg angi intervall i sekunder mellom sending av hver pakke, standardverdien er ett sekund.

$ ping -i 3 -c 5 www.google.com

4. For å bestemme responsen til nettverket ditt under forhold med høy belastning, kan du kjøre en \flomping som sender forespørsler så raskt som mulig, ved å bruke -f-bryteren. Bare root kan bruke denne alternativ, ellers bruk sudo-kommandoen for å få root-privilegier.

$ sudo ping -f www.google.com
OR
$ sudo ping -f -i 3 www.google.com	#specify interval between requests 

PING www.google.com (172.217.163.36) 56(84) bytes of data.
.......................................................................................................................................................................................^C
--- www.google.com ping statistics ---
2331 packets transmitted, 2084 received, 10% packet loss, time 34095ms
rtt min/avg/max/mdev = 29.096/29.530/61.474/1.417 ms, pipe 4, ipg/ewma 14.633/29.341 ms

5. Du kan aktivere pinging av en kringkasting ved å bruke -b som vist.

$ ping -b 192.168.43.255

6. For å begrense antall nettverkshopp (TTL – Time-to-live) som sonderer gjennom, bruk -t-flagget. Du kan angi hvilken som helst verdi mellom 1 og 255; forskjellige operativsystemer setter forskjellige standardinnstillinger.

Hver ruter som mottar pakken trekker minst 1 fra tellingen, og hvis tellingen fortsatt er større enn 0, videresender ruteren pakken til neste hopp, ellers forkaster den den og sender et ICMP-svar tilbake til datamaskinen din.

I dette eksemplet har TTL blitt overskredet og ping-testen mislyktes, som vist på skjermbildet.

$ ping -t 10 www.google.com

7. Standard pakkestørrelse bør være tilstrekkelig for en ping-test, men du kan endre den for å møte dine spesifikke testbehov. Du kan spesifisere størrelsen på nyttelasten, i antall byte ved å bruke -s-alternativet, som vil resultere i en total pakkestørrelse med verdi pluss 8 ekstra byte for ICMP-overskriften.

$ ping -s 1000 www.google.com

8. Hvis forhåndsinnlasting er spesifisert, sender ping så mange pakker som ikke venter på svar. Vær oppmerksom på at bare root kan velge en forhåndsinnlasting mer enn 3, ellers bruker du sudo-kommandoen for å få root-privilegier.

$ sudo ping -l 5 www.google.com 

9. Det er også mulig å stille inn tiden for å vente på svar, i sekunder, ved å bruke -W-alternativet som vist.

$ ping -W 10 www.google.com

10. For å angi en timeout i sekunder, før ping avsluttes uavhengig av hvor mange pakker som er sendt eller mottatt, bruk -w-flagget.

$ ping -w 10 www.google.com

11. Alternativet -d lar deg aktivere feilsøkings-IP-pakkedetaljene som vist.

$ ping -d www.google.com

12. Du kan aktivere detaljert utdata ved å bruke -v-flagget, som følger.

$ ping -v www.google.com

Merk: Ping kan ikke nødvendigvis brukes til å teste nettverkstilkobling, det forteller deg ganske enkelt om en IP-adresse er aktiv eller inaktiv. Den brukes vanligvis sammen med MTR – et moderne nettverksdiagnoseverktøy kombinerer funksjonaliteten til ping og traceroute og tilbyr mange tilleggsfunksjoner.

For en omfattende liste over nettverksverktøy, sjekk ut: En Linux Sysadmins guide til nettverksadministrasjon, feilsøking og feilsøking

Ping er en veldig vanlig metode for feilsøking av tilgjengeligheten til verter på et nettverk. I denne artikkelen har vi forklart 12 praktiske eksempler på ping-kommandoer for å teste tilgjengeligheten til en nettverksenhet. Del dine tanker med oss via kommentarskjemaet nedenfor.