Co je PING a jak jej používat? Naučte se to pomocí 7 příkladů

Příkaz ping patří k nejčastěji používaným síťovým nástrojům.

V tomto článku se dozvíte, co to ping je, jak ho využívat, představíme vám online ping nástroje a ukážeme si pár praktických příkladů.

Nejprve si vysvětlíme, co ping vlastně znamená. Ping je nástroj pro příkazový řádek, který slouží jako jednoduchý způsob, jak otestovat, zda má počítač připojení k internetu a zda může komunikovat s jinými počítači nebo síťovými zařízeními.

Mezi funkce příkazu ping patří:

  • Testování síťového připojení: lokální sítě, internet
  • Odstraňování problémů se síťovou kartou
  • Testování problémů s překladem DNS jmen

Většina operačních systémů, jako Windows, macOS a Linux, má příkaz ping předinstalovaný. V tomto článku se ale zaměříme i na postup instalace.

Možná jste se s ping setkali i v běžné konverzaci, například „Dám ti ping, až budu hotov s prací“. V běžné řeči ping jednoduše znamená zprávu odeslanou z počítače na jiný.

Používání příkazu ping

Chcete-li ověřit, zda máte příkaz ping nainstalovaný, spusťte terminál (macOS, Linux) nebo příkazový řádek (Windows) a zadejte „ping –help“. Ve většině případů by se vám měla zobrazit nápověda.

Pokud se vám zobrazí nápověda se seznamem parametrů, které můžete použít, jste připraveni. V některých distribucích Linuxu, jako je Ubuntu, můžete mít potíže, protože ping není ve výchozím nastavení nainstalován. V Ubuntu nainstalujete ping pomocí příkazu:

sudo apt install iputils-ping

Dalším způsobem, jak otestovat instalaci příkazu ping ve vašem systému, je použití příkazu `which`, který vrátí cestu k libovolnému binárnímu souboru nainstalovanému ve vašem systému:

which ping

# /usr/bin/ping  # Můj výsledek

Nyní, když můžete ping bez problémů používat, se naučíme jeho základní použití.

Příkaz ping se připojí k libovolnému dostupnému hostiteli, ať už ve vaší lokální síti nebo přes internet. Tímto hostitelem může být jiný počítač, server, router nebo třeba i tiskárna.

Příkaz ping přijímá jeden argument, což je webová adresa nebo IP adresa, ke které se pokoušíte připojit. Zkusíme se například připojit k webu etechblog.cz.

ping etechblog.cz

Symbol „$“ znamená, že používáme bash shell, v Powershell (Windows) by se použil symbol „>“. Měli byste kopírovat jen samotný příkaz, nikoli symbol dolaru.

Po zadání uvedeného příkazu byste měli vidět něco podobného:

PING etechblog.cz (104.27.118.115) 56(84) bytes of data.
64 bytes from 104.27.118.115 (104.27.118.115): icmp_seq=1 ttl=57 time=64.1 ms
64 bytes from 104.27.118.115 (104.27.118.115): icmp_seq=2 ttl=57 time=71.4 ms

Nejprve se zobrazí název domény, ke které se pokoušíme připojit, a její IP adresa v závorkách. Poté se odešlou pakety dat (obvykle 64 bajtů) do cílové adresy. Příkaz ping zastavíte stisknutím Ctrl + C.

Pokud máte stabilní připojení k internetu (což předpokládám, že máte, když tohle čtete), měla by se vám zobrazit zpráva podobná této:

--- etechblog.cz ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 10192ms

Tato zpráva zobrazuje statistiky pingu na zadanou doménu nebo IP adresu. Jak vidíte, ping odeslal 3 datové pakety a všechny je přijal. To znamená, že jak vaše připojení k internetu, tak hostingová služba, která cílovou IP adresu obsluhuje, fungují správně.

Stejný proces probíhá, když navštívíte webovou stránku. Vy (váš prohlížeč) odešlete datové pakety s požadavkem, DNS (Domain Name System) přeloží název domény na skutečnou IP adresu a poté hostitel odešle obsah stránky zpět k vám. Samozřejmě, zjednodušujeme si to, ale tohle je základní popis jednoduché síťové interakce.

Profesionální tip: Kdykoli potřebujete seznam dostupných parametrů, můžete vyvolat manuálovou stránku pomocí příkazu `man` nebo příznaku `–help`.

man ping
# Manuálová stránka
ping --help
# Nápověda

IPv6 vs. IPv4

Svět pomalu dochází k dostupným IPv4 adresám, a proto se začíná zavádět IPv6 (Internet Protocol verze 6).

Zjednodušeně řečeno, IPv4 je základní IP protokol, který pohání web. Používá 32bitovou IP adresu, která se zapisuje v číselné tečkové notaci. Například hlavní IP adresa Googlu je 8.8.8.8. IPv4 je s námi od roku 1981 a jedná se o protokol, na který jsme zvyklí.

Na druhou stranu, IPv6 je novější IP protokol, který řeší problém s nedostatkem adres. Zatímco IPv4 má až 4,3 miliardy kombinací, IPv6 by mohl mít až 340 trilionů trilionů trilionů IP adres.

Zde je příklad adresy IPv6: 2001:db8:3333:4444:5555:6666:7777:8888.

V příštích několika letech budeme tedy přecházet na adresy IPv6, protože každé zařízení IoT (internet věcí) a nové webové stránky budou potřebovat nové adresy.

Příkaz ping již podporuje adresy IPv6 a v některých distribucích Linuxu najdete i samostatný příkaz ping6, který je určen pro ně.

Nejlepší způsob, jak použít ping s adresou IPv6, je ale pomocí parametru `-6`.

Zde je příklad:

ping -6 2001:db8:3333:4444:5555:6666:7777:8888

Pokud vaše síť zatím IPv6 nepodporuje, nemusíte si s tím dělat starosti. Implementace IPv6 v posledních letech rychle roste.

Zvýšená podpora IPv6.

Pomocí testovacího nástroje IPv6 si můžete ověřit, zda váš web IPv6 podporuje.

Online ping služby

Příkaz ping se používá nejen k ověření, zda jste se schopni připojit k určitému serveru, ale i k zjištění latence (doby, kterou potřebuje ping na přijetí odpovědi) vašeho požadavku na server. Online ping nástroje vám umožňují shromáždit mnohem více dat o procesech pingu, například:

Na druhou stranu, pokud máte problémy s připojením, nebo jen chcete otestovat latenci serveru z různých míst po celém světě, je online ping nástroj tou nejlepší volbou.

Podívejte se na náš bezplatný online ping nástroj a provádějte pingy z Londýna, Bombaje a Oregonu. Pomocí tohoto nástroje získáte důležitá data, jako je ztráta paketů a maximální a minimální čas potřebný k získání odpovědi z vašeho serveru.

Příklady použití příkazů

Nyní si otestujeme a prohlédneme několik často používaných příkladů tohoto síťového nástroje.

#1. Kontrola připojení k internetu

Může se to zdát samozřejmé, ale můžete si ověřit, zda máte přístup k internetu pomocí příkazu ping na spolehlivého hostitele, jako je google.com.

ping google.com

Pokud nedostáváte žádnou odpověď, vaše připojení k internetu pravděpodobně nefunguje správně.

#2. Odeslání stanoveného počtu pingů

Jedním z problémů, se kterým se můžete setkat, pokud používáte Unixový systém, je to, že ping odesílá datové pakety neomezeně dlouho. Pomocí parametru `-c` (count) můžete zadat počet pingů, které chcete provést. Například pokud chcete pingnout přesně třikrát, použijete:

ping -c 3 etechblog.cz

Poznámka: Toto se neděje ve Windows, kde ping odesílá pouze 4 datové pakety.

Tento parametr můžete použít i k odeslání pouze jednoho ping požadavku a zobrazení IP adresy cíle, ke kterému se pokoušíte připojit.

ping -c 1 google.com

#3. Ping na server v určitém intervalu

Můžete nastavit interval v sekundách mezi odesláním jednotlivých paketů. Výchozí interval je jedna sekunda, ale můžete ho upravit pomocí parametru `-i`.

ping -i 3 etechblog.cz

#4. Ping na localhost

Můžete pingnout jakoukoli IPv4 adresu, a proto můžete pingnout i váš localhost pomocí označení `localhost` nebo IP adresy `127.0.0.1`.

ping localhost
# funguje správně
ping 127.0.0.1
# funguje také

Ping neprochází fyzickým síťovým rozhraním, ale virtuální smyčkou.

#5. Ping na broadcast

K odesílání požadavků na broadcast adresu můžete použít parametr `-b`. Například můžete pingnout všechna zařízení ve vaší lokální síti pomocí následujícího příkazu.

ping -b 255.255.255.255

#6. Odeslání paketu o určité velikosti

V závislosti na vašich potřebách můžete změnit velikost paketů pingu pomocí parametru `-s` a počtu bajtů, které chcete odeslat.

ping -s 70 google.com

Upozorňujeme, že některé požadavky nemusí fungovat, pokud odešlete příliš velký paket.

#7. Flood ping

Parametr `-f` odesílá ping požadavky tak rychle, jak to váš počítač a síť dokážou. Protože minimální uživatelem povolený interval pingu je 200 ms, musíte ho spustit jako superuživatel pomocí příkazu `sudo`.

ping -f google.com
PING google.com (142.250.78.142) 56(84) bytes of data.
ping: cannot flood; minimal interval allowed for user is 200ms

sudo ping -f -c 1000 google.com
# Zastavit po 1000 pingu
--- google.com ping statistics ---
1000 packets transmitted, 1000 received, 0% packet loss, time 11158ms

Jak můžete vidět, použil jsem parametr count, abych zastavil odesílání požadavků, jakmile jich bylo odesláno 1000 (všimněte si, že to trvalo jen 11 sekund).

Poznámka: Buďte velmi opatrní při používání flood pingu, protože byste mohli způsobit DoS (denial of service) serveru, na který pingujete. Měli byste ho použít jen v případě, že testujete váš server v prostředí s vysokou zátěží.

IP nebo Domain Ping API

Ping API od etechblog.cz je praktický nástroj, který vám může pomoci sledovat výkon jakékoli IP adresy nebo domény z více lokací.

Může se ukázat jako klíčové pro udržení přehledu o velkém počtu serverů, aby se zajistil optimální uživatelský zážitek.

Navíc to můžete snadno vyzkoušet s bezplatnou úrovní API od etechblog.cz, která poskytuje 3000 volání API měsíčně.

Pro profesionály nabízejí prémiové plány rezidenční proxy, vyšší rychlost odesílání požadavků a vyšší počet volání API, a to už od 5 dolarů měsíčně.

Závěr

Příkaz ping je nástroj starý prakticky jako samotný internet. Můžete pomocí něj zjistit, zda máte aktivní připojení k internetu, a ověřit, zda jste se schopni připojit k webovým serverům nebo jiným síťovým zařízením.

Nezapomeňte otestovat váš web pomocí našeho testovacího nástroje PING a celé naší sady nástrojů.