ping

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání
Tento článek pojednává o programu. Další významy jsou uvedeny v článku Ping (rozcestník).

Program ping (anglicky Packet InterNet Groper) umožňuje prověřit funkčnost spojení mezi dvěma síťovými rozhraními (počítače, síťová zařízení) v počítačové síti, která používá rodinu protokolů TCP/IP. Ping při své činnosti periodicky odesílá IP datagramy a očekává odezvu protistrany. Při úspěšném obdržení odpovědi vypíše délku zpoždění (latence) a na závěr statistický souhrn.

Popis činnosti[editovat | editovat zdroj]

Parametrem programu ping je doménové jméno nebo IP adresa síťového rozhraní, jehož dostupnost chceme prověřit. Je-li uvedeno doménové jméno, je nejprve přeloženo pomocí DNS na IP adresu. Program využívá zprávy „Echo Request“ (typ 8, výzva) a „Echo Reply“ (typ 0, odpověď) protokolu ICMP. Výzvy jsou odesílány na cílovou IP adresu a ve stanoveném limitu se očekává odpověď (typicky 3 sekundy). Jednotlivé výzvy obsahují čísla (icmp_seq), podle kterých je možné identifikovat jednotlivé odpovědi nebo jejich ztrátu. Program průběžně vypisuje, které odpovědi již došly a s jakým zpožděním (latencí).

Ping (Linux)[editovat | editovat zdroj]

  • -i interval s jakým se budou pakety posílat
  • -s velikost paketu
  • -t TTL paketu (maximální počet skoků k cíli)

Pro popis ostatních použijte:

ping --help

Příklad výpisu[editovat | editovat zdroj]

[login@localhost ~]$ ping cs.wikipedia.org
PING rr.pmtpa.wikimedia.org (66.230.200.100) 56(84) bytes of data.
64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=0 ttl=49 time=193 ms
64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=1 ttl=49 time=184 ms
64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=2 ttl=49 time=179 ms
64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=3 ttl=49 time=181 ms
64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=4 ttl=49 time=192 ms
64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=5 ttl=49 time=182 ms
64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=6 ttl=49 time=176 ms

--- rr.pmtpa.wikimedia.org ping statistics ---
7 packets transmitted, 7 received, 0% packet loss, time 6003ms
rtt min/avg/max/mdev = 176.643/184.297/193.533/5.889 ms, pipe 2

V příkladu byl výpis přerušen kombinací kláves CTRL+c po 7 vyslaných paketech na server rr.pmtpa.wikimedia.org. Odpovědi se „vrátily“ v průměrném čase 184,3 ms, nejkratší dosažený čas je 176,6 ms a nejdelší je 193,5 ms. Žádný paket nebyl ztracen.

Délku odesílaného paketu je možné nastavit. Délky těsně pod hranici MTU (Maximum Transmission Unit, obvykle 1500 bajtů) umožní sledovat chování sítě při přenosu delších datagramů, což se hodí zejména v bezdrátových sítích, kde kratší datagramy projdou snadněji. Nemá však smysl délku zvětšovat nad velikost MTU, protože dojde k automatické fragmentaci datagramu. Výhodou unixových verzí je, že obvykle kontrolují i obsah vráceného datagramu, takže lze zjistit, jestli nedochází k jejich poškození.

Ping (Windows)[editovat | editovat zdroj]

  • -t – odesílat až do přerušení pomocí kombinace kláves CTRL+c
  • -l velikost paketu
  • -i TTL paketu (maximální počet skoků k cíli)

Pro popis ostatních použijte:

ping /?

Příklad výpisu[editovat | editovat zdroj]

C:\>ping cs.wikipedia.org

Příkaz PING na rr.knams.wikimedia.org [91.198.174.2] s délkou 32 bajtů:

Odpověď od 91.198.174.2: bajty=32 čas=19ms TTL=60
Odpověď od 91.198.174.2: bajty=32 čas=19ms TTL=60
Odpověď od 91.198.174.2: bajty=32 čas=19ms TTL=60
Odpověď od 91.198.174.2: bajty=32 čas=19ms TTL=60

Statistika ping pro 91.198.174.2:
Pakety: Odeslané = 4, Přijaté = 4, Ztracené = 0 (ztráta 0%),
Přibližná doba do přijetí odezvy v milisekundách:
Minimum = 19ms, Maximum = 19ms, Průměr = 19ms

Ve výpisu je vidět, že standardní program ping v systému Microsoft Windows neumožňuje měřit s přesností větší než 1 milisekunda. Proto vznikl pro Microsoft Windows nový ping tzv. "True Ping" který měří přesněji a není závislý na konkrétní verzi Windows. Ping skončí automaticky po 4 pokusech.