ping

Sprawdza osiągalność hosta wysyłając pakiety ICMP Echo i mierzy czas odpowiedzi (RTT).

ping to najprostszy test „czy żyje?” w sieci. Wysyła do hosta pakiety ICMP Echo Request, czeka na odpowiedzi Echo Reply i mierzy czas, jaki minął między nimi (RTT, round-trip time). Dzięki temu w kilka sekund sprawdzisz, czy serwer jest osiągalny, czy działa DNS, czy łącze nie gubi pakietów i jak bardzo „leży” trasa do celu. To pierwsze narzędzie, po które sięga admin, gdy „internet nie działa”.

Składnia i najważniejsze opcje

Podstawowa forma: ping [-c liczba] [-i interwał] [-W timeout] host

  • -c liczba — wyślij dokładnie tyle pakietów i zakończ (bez tego ping leci w nieskończoność, aż wciśniesz Ctrl+C).
  • -i interwał — odstęp w sekundach między pakietami (domyślnie 1 s). Wartości poniżej 0,2 s wymagają uprawnień roota.
  • -W timeout — ile sekund czekać na odpowiedź; działa głównie gdy brak odpowiedzi (przy odpowiedziach ping czeka 2x RTT). 0 oznacza brak limitu.
  • -w deadline — łączny limit czasu w sekundach dla całego ping, niezależnie od liczby pakietów.
  • -s rozmiar — rozmiar danych w pakiecie w bajtach (domyślnie 56, co daje 64 B z nagłówkiem ICMP).
  • -n — bez rozwiązywania nazw, same adresy IP (szybciej i bez zaciemniania przez DNS).
  • -4 / -6 — wymuś IPv4 albo IPv6.

Przykłady użycia

  • ping -c 4 google.com — wyślij 4 pakiety i pokaż podsumowanie (klasyczny szybki test).
  • ping -c 100 -i 0.2 192.168.1.1 — 100 pakietów co 0,2 s, żeby wyłapać gubione pakiety na lokalnej bramie.
  • ping -W 2 -c 3 10.0.0.5 — krótka cierpliwość: czekaj maks. 2 s na odpowiedź, idealne do skryptów.
  • ping -c 5 -s 1472 8.8.8.8 — test większym pakietem, przydatny przy diagnozie problemów z MTU.
  • ping -n -c 4 1.1.1.1 — bez DNS, gdy podejrzewasz, że to właśnie rozwiązywanie nazw nie działa.

Częste błędy i pułapki

Najczęstsza pomyłka: zakładanie, że brak odpowiedzi = host wyłączony. Wiele firewalli po prostu blokuje ICMP, więc serwer może żyć i obsługiwać HTTP, a na ping milczeć. Druga pułapka to różnice między systemami. W Windowsie liczbę pakietów ustawiasz przez -n (nie -c), a -t oznacza „pinguj w nieskończoność”. Na macOS/BSD -W podaje się w milisekundach, nie w sekundach jak w Linuksie (iputils) — łatwo o tym zapomnieć i czekać 1000x dłużej. Pamiętaj też, że -w (mały deadline całości) i -W (timeout na pojedynczą odpowiedź) to dwie różne rzeczy.

Powiązane komendy: traceroute i mtr (śledzenie trasy), dig oraz nslookup (diagnostyka DNS), netstat i ss (połączenia), telnet i nc (sprawdzanie konkretnych portów).