Ile realnie trwa propagacja DNS, skąd wziął się mit 48 godzin, jak sprawdzić stan zmiany w różnych lokalizacjach i jak ją bezpiecznie przyspieszyć.
Propagacja DNS trwa tyle, ile wynosi TTL zmienianego rekordu - czyli zwykle od kilku minut do kilku godzin, a nie mityczne 48 godzin. Wbrew nazwie nic nie „płynie po świecie": po prostu każda zapamiętana kopia starej odpowiedzi wygasa we własnym tempie i dopiero wtedy pobierana jest nowa. Zmiana serwerów nazw (NS) trwa dłużej niż zmiana pojedynczego rekordu.
Poniżej: co dokładnie dzieje się po zapisaniu zmiany, ile czasu zajmują poszczególne typy zmian, jak sprawdzić stan propagacji w różnych częściach świata, jak ją bezpiecznie przyspieszyć oraz jak przeprowadzić migrację tak, żeby okres mieszanych odpowiedzi w ogóle nie był odczuwalny dla klientów.
DNS działa jak sieć notesów z adresami. Każdy serwer DNS - u operatora, w firmie, w routerze, w telefonie - zapamiętuje odpowiedź na pytanie „jaki adres IP ma twojadomena.pl" na czas określony parametrem TTL (czas życia rekordu, podawany w sekundach). Gdy zmieniasz rekord u swojego dostawcy, stare notesy nie są czyszczone: każda kopia po prostu wygasa, gdy minie jej TTL, i dopiero wtedy pobierana jest nowa odpowiedź.
„Propagacja" to więc okres, w którym część świata ma jeszcze starą odpowiedź, a część już nową. Stąd klasyczny objaw: u Ciebie strona działa, u klienta nie - albo odwrotnie. Nikt niczego nie zepsuł, po prostu dwa różne serwery DNS mają zapisane dwie różne prawdy i obie za chwilę się zrównają.
Warto znać jeszcze jeden mechanizm: serwery zapamiętują także odpowiedzi negatywne, czyli informację, że rekord NIE istnieje. Dlatego jeśli sprawdzisz adres, zanim skończysz konfigurację, „brak rekordu" potrafi zostać zapamiętany na kilka godzin - i będziesz miał wrażenie, że zmiana nie działa, choć jest już poprawna. Prosta zasada: nie sprawdzaj domeny, zanim jej nie skonfigurujesz do końca.
| Rodzaj zmiany | Realny czas | Od czego zależy |
|---|---|---|
| Rekord A, CNAME, MX, TXT | od kilku minut do kilku godzin | TTL ustawiony przed zmianą |
| Zmiana serwerów nazw (NS) | zwykle 2-24 godziny | TTL delegacji w rejestrze domeny |
| Nowa, świeżo zarejestrowana domena | praktycznie natychmiast | brak starych kopii do wygaszenia |
| Nowa subdomena | minuty | brak wcześniejszych zapytań o nią |
Legenda o „48 godzinach" pochodzi z czasów, gdy standardem był TTL ustawiony na dobę, a serwery odświeżały się leniwie. Dziś, przy TTL rzędu 5-10 minut, zmiana rekordu A bywa widoczna szybciej niż zdążysz odświeżyć przeglądarkę - o ile pamiętałeś, żeby TTL obniżyć przed zmianą, a nie razem z nią.
To rozróżnienie jest kluczowe: obniżenie TTL działa dopiero wtedy, gdy stary, długi TTL zdąży wygasnąć. Jeśli w piątek rano zmienisz TTL z 24 godzin na 5 minut i od razu podmienisz rekord, świat i tak będzie się odświeżał według starej, dobowej reguły.
Najprościej naszym darmowym narzędziem do sprawdzania propagacji DNS - odpytuje serwery w różnych lokalizacjach i pokazuje, gdzie odpowiedź jest już nowa, a gdzie wciąż stara.
Ręcznie zrobisz to samo z wiersza poleceń, pytając konkretne serwery:
nslookup twojadomena.pl 8.8.8.8 # co widzi Google
nslookup twojadomena.pl 1.1.1.1 # co widzi Cloudflare
dig twojadomena.pl +short # Linux i macOS
dig twojadomena.pl MX +short # sprawdzenie pocztyInterpretacja jest prosta: jeśli publiczne serwery pokazują już nowy adres, a Twoja przeglądarka wciąż stary - problem jest lokalny, po stronie systemu, routera albo operatora, a nie globalny. Kompletny przewodnik po samych rekordach i ich znaczeniu zbiera tekst o rekordach DNS.
Zawodowy sposób na całkowite ominięcie problemu jest zaskakująco prosty: przez czas propagacji oba serwery serwują tę samą stronę. Wtedy nie ma znaczenia, którą odpowiedź dostanie odwiedzający - stary czy nowy adres prowadzi do działającego serwisu, a przełączenie odbywa się niezauważalnie.
Kolejność jest zawsze ta sama: najpierw kopiujesz stronę i bazę na nowy serwer i sprawdzasz, czy działa (na tymczasowym adresie albo przez wpis w pliku hosts), potem obniżasz TTL, dopiero na końcu przełączasz rekordy. Nigdy odwrotnie. Tak prowadzimy darmowe migracje, a pełen plan opisuje przewodnik o przenoszeniu strony bez przestoju.
Przy poczcie dochodzi jeszcze jeden element: wiadomości wysłane w trakcie propagacji mogą trafić na stary serwer, dlatego trzeba zostawić okno dosyłki i nie kasować starych skrzynek od razu. Szczegóły w tekście o migracji poczty.
| Objaw | Przyczyna |
|---|---|
| Telefon na LTE widzi nową stronę, na Wi-Fi starą | dwa różne resolvery z osobną pamięcią - dowód, że to kwestia czasu |
| Wszyscy widzą nową stronę, Ty starą | cache przeglądarki, systemu albo routera |
| Zmiana nie działa mimo upływu doby | rekord zmieniony u dostawcy, który nie obsługuje już domeny (złe NS) |
| Strona działa, poczta przestała | zmieniono rekord A, zapominając o MX |
| „Brak rekordu" mimo poprawnej konfiguracji | zapamiętana odpowiedź negatywna sprzed konfiguracji |
| Część klientów trafia na starą stronę tygodniami | bardzo wysoki TTL ustawiony przed zmianą |
Tyle, ile wynosi TTL zmienianego rekordu - najczęściej od kilku minut do kilku godzin. Zmiana serwerów nazw trwa dłużej, zwykle od 2 do 24 godzin, bo w grę wchodzi dodatkowo pamięć delegacji w rejestrze domeny. Podawane w poradnikach 24-48 godzin to bezpieczny margines, a nie typowy czas.
Częściowo. Jedyny skuteczny sposób to obniżenie TTL z wyprzedzeniem - najlepiej dzień przed planowaną zmianą. Po fakcie możesz jedynie czyścić własną pamięć podręczną i wymuszać odświeżenie u dużych resolverów; nie masz wpływu na serwery operatorów w całym kraju.
Nie musi być, jeśli migracja jest przeprowadzona poprawnie - stary i nowy serwer przez ten czas serwują tę samą stronę. Niedostępność pojawia się tylko wtedy, gdy ktoś wyłączy stary serwer natychmiast po zmianie rekordów, zanim świat zdąży się o niej dowiedzieć.
Dodaj wpis do pliku hosts na swoim komputerze - to lokalna „nadpisana" odpowiedź DNS, która działa natychmiast i tylko u Ciebie. Standardowa metoda testowania nowego serwera przed przełączeniem rekordów. Po zakończonej migracji pamiętaj wpis usunąć, bo inaczej będziesz jedyną osobą widzącą stronę pod starym adresem.
Nie - zapytania DNS wyłącznie odczytują dane i niczego nie zmieniają. Jedyny efekt uboczny bywa odwrotny do zamierzonego: pytając o domenę, zanim skończysz konfigurację, możesz spowodować zapamiętanie odpowiedzi „nie istnieje" na kilka godzin.
Dla stabilnej strony rozsądne jest 3600 sekund (godzina) - kompromis między szybkością zmian a obciążeniem serwerów. Wartości poniżej 300 sekund trzymaj tylko na czas migracji; utrzymywane na stałe generują niepotrzebny ruch, a przy awarii serwera DNS skracają czas, przez który cokolwiek jeszcze działa z pamięci.
Wszystkie poradniki z kategorii: Domeny, DNS i poczta