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ů.