Przejdź do treści głównej

Poradniki / Napraw to: poradniki na błędy, które naprawdę się zdarzają

ERR_ADDRESS_UNREACHABLE: co oznacza i jak naprawić

ERR_ADDRESS_UNREACHABLE oznacza, że Twoje urządzenie albo sieć nie ma w ogóle trasy do adresu docelowego, więc próba połączenia nie wychodzi w sposób, który mógłby dotrzeć do celu. To niemal zawsze problem na poziomie sieci, nie coś złego z samą witryną.

Co oznacza ERR_ADDRESS_UNREACHABLE

Zanim jakikolwiek handshake TCP może się zacząć, system operacyjny musi wiedzieć, jak wytrasować pakiet w stronę docelowego adresu IP. ERR_ADDRESS_UNREACHABLE pojawia się, gdy nie ma użytecznej trasy: lokalna tablica trasowania nie ma niczego pasującego, brama, która powinna przekazać pakiet, jest niedostępna, albo sam adres nie jest czymś, do czego bieżąca sieć w ogóle może dotrzeć. Różni się to od timeoutu, gdzie trasa istnieje i pakiet zostaje wysłany, ale nic nie odpowiada; tutaj system operacyjny odmawia nawet wysłania pakietu, bo nie ma dokąd go wysłać.

Decyzje o trasowaniu zapadają lokalnie, na urządzeniu albo pierwszym routerze, przez który przechodzi ruch, zanim pakiet w ogóle dotrze do szerszego internetu. To sprawia, że ten błąd różni się w praktyce od większości innych w tej rodzinie: awarię da się poznać z góry, patrząc wyłącznie na tablicę trasowania, bez potrzeby czegokolwiek wysyłać ani czekać na odpowiedź, co też tłumaczy, dlaczego pojawia się szybciej niż timeout.

Jak pojawia się błąd

Chrome pokazuje "This site can't be reached ... ERR_ADDRESS_UNREACHABLE", często szybciej niż przy timeoucie, bo nie ma żadnego oczekiwania, awaria jest natychmiastowa. Z linii poleceń ten sam warunek widać wyraźnie:

curl -v https://192.168.1.50/
* Trying 192.168.1.50:443...
* connect to 192.168.1.50 port 443 failed: No route to host
curl: (7) Failed to connect to 192.168.1.50 port 443: No route to host

"No route to host" to komunikat systemu operacyjnego leżący u podstaw ERR_ADDRESS_UNREACHABLE; ping produkuje tę samą klasę awarii wobec adresu bez ważnej ścieżki.

Co powoduje ERR_ADDRESS_UNREACHABLE

  • Adres to prywatne IP w sieci lokalnej, odpytywane spoza tej sieci. Adres taki jak 192.168.x.x albo 10.x.x.x ma znaczenie tylko w sieci lokalnej, do której należy; dotarcie do niego z publicznego internetu nigdy się nie uda.
  • Router albo brama są niedostępne. Jeśli urządzenie odpowiedzialne za przekazywanie ruchu w stronę celu jest offline, wszystko za nim staje się jednocześnie nieosiągalne.
  • Gdzieś jest skonfigurowany zły adres IP. Nieaktualny rekord DNS, zaszyty na sztywno adres IP w pliku hosts albo literówka w ręcznie wpisanym adresie mogą wskazywać na coś, co nigdy nie było osiągalne.
  • IPv6 jest włączone bez rzeczywistej łączności IPv6. Urządzenie albo sieć, które mają przypisany adres IPv6, ale bez działającej ścieżki do szerszego internetu IPv6, zawodzą w ten sposób dla każdego celu rozwiązywanego przez rekord AAAA.
  • Tablica trasowania VPN wyklucza cel. Niektóre konfiguracje VPN trasują przez tunel tylko konkretne podsieci, a adres spoza tego zakresu, albo taki, który wymaga tunelu, ale nie jest przez niego trasowany, staje się nieosiągalny w trakcie połączenia.

Jak rozpoznać, kto zawinił

W zdecydowanej większości przypadków ten błąd to problem Twojego własnego urządzenia albo sieci, a nie serwera docelowego, bo oznacza, że Twoja strona nigdy nie znalazła ścieżki, którą mogłaby wysłać żądanie. Jeśli adres to zwykła publiczna domena, nie prywatne IP, przetestuj ten sam adres z innej sieci albo urządzenia. Jeśli łączy się tam, ale nie w Twojej oryginalnej sieci, problem trasowania jest lokalny. Kontrola HTTP uruchomiona spoza Twojej własnej sieci to najszybszy sposób, żeby potwierdzić, że sam cel jest osiągalny z szerszego internetu.

Jak naprawić ERR_ADDRESS_UNREACHABLE

Jeśli jesteś odwiedzającym

  1. Sprawdź, czy adres to prywatne IP. Cokolwiek zaczynające się od 192.168., 10. albo 172.16. do 172.31. działa wyłącznie z wnętrza tej konkretnej sieci lokalnej; generalnie nie da się do niego dotrzeć skądinąd bez VPN do tej sieci.
  2. Zrestartuj router, żeby wykluczyć zawieszoną albo uszkodzoną lokalną tablicę trasowania.
  3. Rozłącz się z dowolnym aktywnym VPN i spróbuj ponownie; VPN z niekompletną albo źle skonfigurowaną tablicą trasowania to częsta przyczyna właśnie tego błędu.
  4. Wyłącz tymczasowo IPv6 w ustawieniach karty sieciowej, jeśli witryna ma zarówno adres IPv4, jak i IPv6; to wymusza połączenie po IPv4 i wyklucza zepsutą ścieżkę IPv6.
  5. Potwierdź sam adres, sprawdzając literówkę albo starą notatkę, która może zawierać wewnętrzne IP zamiast publicznej nazwy domeny.

Jeśli prowadzisz witrynę

  1. Sprawdź rekordy DNS A i AAAA dla domeny i potwierdź, że wskazują na żywy, publicznie osiągalny adres IP, a nie na zakres prywatny albo wycofany serwer.
  2. Potwierdź, że brama i trasowanie dostawcy hostingu są sprawne, korzystając z jego strony statusu albo kanału wsparcia, jeśli adres jest poprawny, ale wciąż nieosiągalny z wielu zewnętrznych sieci.
  3. Usuń albo popraw dowolny nieaktualny rekord IPv6 (AAAA), jeśli łączność IPv6 do serwera nie jest faktycznie skonfigurowana od końca do końca; rekord AAAA bez działającej za nim ścieżki IPv6 kieruje klientów preferujących IPv6 w ślepy zaułek.

Jak zapobiec ERR_ADDRESS_UNREACHABLE

Rekord DNS, który po cichu zaczyna wskazywać na prywatny albo wycofany adres, rzadko wywołuje alarm na samym serwerze, bo serwer w ogóle nie widzi nieudanego żądania. Ciągłe monitorowanie HTTP i DNS rozwiązuje domenę i łączy się z nią spoza sieci według harmonogramu, wyłapując problem trasowania albo rekordu, zanim dotknie prawdziwych odwiedzających, i wysyła alerty e-mailem, SMS-em, połączeniem głosowym, przez Slack, Telegram i inne kanały.

Powiązane błędy

Najczęściej zadawane pytania

Czy ERR_ADDRESS_UNREACHABLE to to samo co niedziałająca witryna?

Zwykle nie. Najczęściej wskazuje na problem trasowania w Twojej własnej sieci albo urządzeniu, zwłaszcza gdy adres to prywatne IP albo zaangażowane jest IPv6, a nie na to, że serwer docelowy jest wyłączony.

Dlaczego widzę ten błąd tylko w niektórych sieciach Wi-Fi?

Różne sieci mają różne tablice trasowania i konfiguracje VPN. Trasa, która działa w Twojej domowej sieci, może nie istnieć w sieci firmowej albo publicznej, zwłaszcza dla adresów wewnętrznych.

Czy zapora może spowodować ERR_ADDRESS_UNREACHABLE?

Pośrednio. Większość zapór blokujących ruch produkuje zamiast tego timeout albo odrzucone połączenie, ale zapora albo router, który całkowicie wycofuje trasę, zamiast filtrować ruch na niej, może wyprodukować ten błąd.

Jaka jest różnica między tym a ERR_CONNECTION_TIMED_OUT?

ERR_ADDRESS_UNREACHABLE oznacza, że w ogóle nie istnieje trasa do celu, więc nic nie jest wysyłane. ERR_CONNECTION_TIMED_OUT oznacza, że trasa istnieje, pakiet został wysłany, a oczekiwanie po prostu minęło bez odpowiedzi.

Czy zdarza się to przy zwykłych publicznych witrynach?

Może się zdarzyć, najczęściej przez zepsutą ścieżkę IPv6 albo rekord DNS rozwiązujący się do adresu bez ważnej trasy, ale zdecydowanie częściej dotyczy adresu prywatnego albo wewnętrznego odpytywanego z niewłaściwej sieci.

Jak sprawdzić, czy adres jest prywatny?

Spójrz na pierwszą część adresu IP: 10.0.0.0 do 10.255.255.255, 172.16.0.0 do 172.31.255.255 i 192.168.0.0 do 192.168.255.255 są zarezerwowane dla sieci prywatnych i nigdy nie są osiągalne z publicznego internetu, niezależnie od tego, jak skonfigurowane jest trasowanie.

Sprawdź teraz

Uruchom darmowe sprawdzenie na swojej stronie - bez zakładania konta.

HTTP check

Monitoruj to na stałe

Otrzymasz powiadomienie w chwili awarii: HostTracker sprawdza z ponad 300 lokalizacji i powiadamia e-mailem, SMS-em, przez Slack, Telegram i nie tylko.

Funkcje HostTracker

Więcej w tej sekcji: Napraw to: poradniki na błędy, które naprawdę się zdarzają