Dlaczego strona się nie otwiera? Ping i traceroute krok po kroku
Jak czytać wynik pingu i traceroute, co oznaczają gwiazdki i skoki opóźnienia oraz jak ustalić, czy problem jest u Ciebie, u operatora, czy po stronie serwera.
Strona się nie ładuje, gra laguje, a VPN zrywa połączenie. Zanim zadzwonisz do operatora albo zaczniesz restartować serwer, warto ustalić, gdzie ruch się zatrzymuje. Do tego służą dwa stare, proste narzędzia: ping i traceroute. Trzeba tylko wiedzieć, jak czytać ich wynik, bo połowa „alarmujących” objawów jest zupełnie niegroźna.
Najpierw sprawdź DNS
Jeśli przeglądarka pokazuje błąd w rodzaju DNS_PROBE_FINISHED_NXDOMAIN albo „Nie można znaleźć adresu IP serwera”, problemem nie jest sieć, tylko nazwa. Sprawdź domenę w DNS lookup: jeśli nie ma rekordu A ani AAAA albo wskazuje on stary serwer, ping i traceroute nic tu nie pomogą. Więcej o rekordach w artykule Podstawowe rekordy DNS.
Ping: czy host w ogóle odpowiada
Ping wysyła pakiety ICMP Echo i mierzy, po jakim czasie wraca odpowiedź. Patrz na dwie rzeczy:
- czas (
time=): w Polsce do serwera w Polsce to zwykle kilka do kilkunastu milisekund, do Europy Zachodniej 20–40 ms, do USA około 100–150 ms, - straty (
packet loss): kilka procent strat na łączu przewodowym to już problem, który będzie widać w grach i rozmowach wideo.
Uwaga: brak odpowiedzi na ping nie znaczy, że host nie działa. Wiele serwerów i zapór blokuje ICMP. Jeśli strona otwiera się w przeglądarce, a ping milczy, wszystko jest w porządku.
Jak działa traceroute
Każdy pakiet IP ma pole TTL (w IPv6: hop limit), które każdy router po drodze zmniejsza o jeden. Gdy dojdzie do zera, router odrzuca pakiet i odsyła komunikat „czas przekroczony”. Traceroute wykorzystuje to celowo: wysyła pakiety z TTL 1, 2, 3 i tak dalej, a z odpowiedzi składa listę routerów na drodze do celu. Do każdego skoku wysyła zwykle trzy próby, stąd trzy czasy w każdej linii.
1 192.168.1.1 0.6 ms 0.5 ms 0.5 ms
2 10.20.0.1 8.1 ms 7.9 ms 8.4 ms
3 198.51.100.17 9.0 ms * 9.2 ms
4 * * *
5 203.0.113.5 31.7 ms 31.2 ms 31.9 ms
6 203.0.113.80 32.4 ms 32.0 ms 32.1 ms
Skok 1 to Twój router, kolejne należą do operatora, a dalej do sieci, przez które przechodzi ruch. Gwiazdka oznacza, że na daną próbę nie przyszła odpowiedź.
Jak czytać wynik
Najważniejsza zasada: liczy się to, co dzieje się do samego końca trasy. Routery odpowiadają na traceroute „przy okazji”, z niskim priorytetem, więc pojedyncze dziwne skoki zwykle nic nie znaczą.
| Co widzisz | Co to zwykle znaczy |
|---|---|
| gwiazdki na jednym skoku, dalej normalne czasy | router nie odpowiada na traceroute albo ogranicza odpowiedzi. Niegroźne |
| gwiazdki od pewnego skoku aż do końca | ruch zatrzymuje się w tym miejscu albo cel (lub jego zapora) blokuje sondy. Patrz na ostatni skok, który odpowiada |
| wysoki czas na jednym skoku, na kolejnych znów niski | router wolno odpowiada na sondy, ale ruch przekazuje normalnie. Niegroźne |
| skok czasu, który utrzymuje się do końca trasy | długie łącze (np. przez Atlantyk to około 70–90 ms więcej) albo przeciążenie w tym miejscu |
| straty w środku trasy, ale nie na celu | ograniczanie odpowiedzi przez router. Niegroźne |
| straty, które zaczynają się na jakimś skoku i trwają do celu | prawdziwy problem na tym odcinku lub tuż przed nim |
Pamiętaj też, że droga „tam” i „z powrotem” często nie jest taka sama. Traceroute pokazuje tylko ścieżkę w jedną stronę, a opóźnienie na każdym skoku obejmuje także drogę powrotną, której nie widać.
Patrz z dwóch stron
Jeden traceroute to jeden punkt widzenia. Porównaj dwa:
- ze swojego komputera: w Windows
tracert example.com, w Linuksie i macOStraceroute example.com. Jeszcze lepszy jestmtr example.com, który powtarza pomiar i pokazuje procent strat na każdym skoku, - z serwera routing.pl: narzędzie Traceroute sprawdza trasę z naszego serwera do celu, czyli z zupełnie innej sieci niż Twoja.
Jak to interpretować:
- z serwera działa, od Ciebie nie: problem jest bliżej Ciebie, w Twojej sieci lub u Twojego operatora,
- z obu miejsc trasa urywa się przy celu: problem leży po stronie serwera, jego zapory albo hostingu,
- strona nie działa tylko u Ciebie, a traceroute dochodzi do celu: sprawdź DNS, zaporę na komputerze, rozszerzenia przeglądarki i to, czy problem dotyczy tylko IPv4 albo tylko IPv6 (
ping -4iping -6).
Co zgłosić operatorowi
Zgłoszenie „internet nie działa” trafia na koniec kolejki. Zgłoszenie z danymi zwykle trafia do kogoś, kto może coś zrobić. Dołącz:
- wynik
mtrlubtraceroute(jako tekst, nie zrzut ekranu), - datę i godzinę, kiedy problem występował,
- swój publiczny adres IP (sprawdzisz go w Jaki jest mój IP) i adres celu,
- informację, czy problem dotyczy wszystkich stron, czy tylko jednej.