Przejdź do treści

Obniż TTL przed migracją

Aktualizacja: 5 min czytaniaZespół DNSPeek

Obniż TTL rekordów, które zmienisz, do 300 sekund co najmniej jeden pełny stary TTL przed migracją, zwykle 24–48 godzin wcześniej. Resolvery będą wtedy zapamiętywać stary adres najwyżej przez pięć minut, więc przełączenie szybko dotrze prawie do wszystkich, a wycofanie będzie równie szybkie. Kilka dni po przeprowadzce przywróć TTL do zwykłej wartości.

Co robi TTL podczas migracji

Każdy rekord DNS ma TTL (time to live, czas życia) w sekundach. Mówi on resolverom, jak długo mogą ponownie używać zapamiętanej odpowiedzi, zanim zapytają znowu. Przy TTL 86400 resolver, który sprawdził Twoją domenę tuż przed przełączeniem, może przez cały dzień kierować swoich użytkowników na stary serwer.

Samo obniżenie TTL niczego nie przyspiesza. Skraca następny okres przechowywania w pamięci podręcznej. Dlatego liczy się czas: krótki TTL zaczyna działać dopiero wtedy, gdy stary, długi TTL wygaśnie w każdej pamięci podręcznej, która przechowuje rekord.

Harmonogram

Harmonogram TTL przy migracji
KiedyRekordTTLDlaczego
DziśA → IP starego serweraObniż do 300Pamięci podręczne zaczynają przejmować krótki TTL, gdy wygasają ich stare kopie
Po upływie jednego starego TTLA → IP starego serwera300Każda pamięć podręczna trzyma teraz rekord najwyżej pięć minut
Dzień przełączeniaA → IP nowego serwera300Odwiedzający przechodzą w ciągu minut; wycofanie jest równie szybkie
Kilka dni późniejA → IP nowego serweraZ powrotem 3600 lub więcejMniej zapytań i większa odporność, jeśli dostawca DNS ma awarię
plik strefy
; Before the move: same IP, short TTL
example.com.   300   IN   A   198.51.100.7

; Switch day: new IP
example.com.   300   IN   A   203.0.113.10

; A few days later: a longer TTL again
example.com.   3600  IN   A   203.0.113.10

Jak obniżyć TTL

  1. Krok 1: Sprawdź obecny TTL

    Sprawdź TTL każdego rekordu, który zmienisz, narzędziem sprawdzanie TTL lub poleceniem dig i zanotuj najwyższą wartość.

  2. Krok 2: Ustaw TTL na 300 sekund

    W panelu dostawcy DNS zmień tylko TTL tych rekordów na 300. Pozostaw je skierowane na stary serwer.

  3. Krok 3: Odczekaj jeden stary TTL

    Odczekaj co najmniej tyle, ile wynosił zanotowany stary TTL, aby każda zapamiętana kopia z długim TTL wygasła.

  4. Krok 4: Przełącz rekordy

    Zmień rekordy na nowy serwer. Większość odwiedzających trafi na niego w ciągu pięciu minut; obserwuj to narzędziem sprawdzanie propagacji DNS.

  5. Krok 5: Podnieś TTL ponownie

    Kilka dni po przeprowadzce, gdy masz pewność, że wycofanie nie będzie potrzebne, ustaw TTL z powrotem na 3600 sekund lub więcej.

Sprawdź obecny TTL

Darmowe sprawdzanie TTL pokazuje TTL każdego rekordu domeny. W terminalu liczba po nazwie to TTL w sekundach:

Terminal (macOS / Linux)
dig example.com A +noall +answer
# example.com.   3600   IN   A   198.51.100.7
PowerShell (Windows)
Resolve-DnsName -Name example.com -Type A | Format-Table Name, TTL, IPAddress

Zapamiętane odpowiedzi odliczają czas

Resolver rekurencyjny pokazuje czas pozostały dla jego zapamiętanej kopii, więc liczba maleje między zapytaniami. Aby zobaczyć skonfigurowaną wartość, odpytaj bezpośrednio autorytatywny serwer nazw (dig @ns1.your-dns-host.com example.com A).

Które rekordy obniżyć

  • A i AAAA dla domeny i dla www, a także dla innych nazw hostów wskazujących stary serwer, takich jak shop czy api.
  • Rekordy CNAME, które będą wskazywać nowe miejsce.
  • MX tylko wtedy, gdy poczta też się przenosi. Jeśli poczta zostaje na miejscu, nie zmieniaj MX.
  • Rekordy TXT, takie jak SPF, jeśli zmieniają się serwery wysyłające.

Rekordy, których nie zmieniasz, mogą zachować swój TTL. Jeśli przenosisz strefę DNS do innego dostawcy (zmieniasz serwery nazw), TTL poszczególnych rekordów pomaga mniej: delegacja w rejestrze ma własny TTL, którego nie możesz zmienić, często od jednego do dwóch dni. W takim przypadku najpierw skopiuj wszystkie rekordy do nowej strefy i porównaj obie strony narzędziem Porównanie DNS, zanim zmienisz serwery nazw. Sprawdzanie serwerów nazw pokazuje, co podaje rejestr.

Jak nisko zejść?

300 sekund to typowy wybór. To na tyle krótko, że przełączenie lub wycofanie dotrze do większości odwiedzających w ciągu minut, i na tyle długo, by nie obciążać dostawcy DNS. Niższe wartości, np. 60 sekund, w praktyce rzadko pomagają: niektóre resolvery i tak stosują minimalny czas przechowywania, a przeglądarki i systemy operacyjne mają własne krótkie pamięci podręczne.

Niektóre panele DNS nie pozwalają na wartości poniżej pewnego minimum albo pokazują TTL jako menu z pozycjami typu „Auto”. Przy rekordzie przepuszczanym przez proxy CDN, np. Cloudflare, ustawiony TTL w ogóle nie ma znaczenia dla przełączenia: odwiedzający rozwiązują domenę na CDN, a zmieniasz origin w CDN.

Typowe błędy z TTL

  • Obniżenie TTL w dniu przełączenia. Pamięci podręczne, które już trzymają rekord z TTL jednego dnia, zachowają go do jednego dnia, bez względu na krótki TTL.
  • Zmiana niewłaściwej strefy. Jeśli serwery nazw domeny wskazują Cloudflare, edycja strefy u rejestratora nic nie da. Najpierw sprawdź, które serwery nazw są autorytatywne.
  • Zapomnienie o www i IPv6. Domena bez www przełącza się w ciągu minut, a www lub rekord AAAA nadal ma stary IP z długim TTL.
  • Niepodniesienie TTL z powrotem. Stały TTL 300 sekund działa, ale oznacza więcej zapytań i słabszą ochronę, jeśli dostawca DNS ma awarię.
  • Oczekiwanie, że TTL rozwiąże sprawę CDN. Przy rekordzie przez proxy odwiedzający i tak trafiają do CDN; zmiana następuje w ustawieniach origin w CDN.

Wykorzystaj czas oczekiwania na testy

Krótki TTL to także Twoja siatka bezpieczeństwa. Jeśli po przełączeniu coś pójdzie nie tak, skierowanie rekordu z powrotem na stary serwer dotrze do odwiedzających równie szybko, o ile stary serwer nadal działa. Utrzymuj go, dopóki przeprowadzka się nie ustabilizuje. Dzień między obniżeniem TTL a przełączeniem to idealny czas na sprawdzenie nowego serwera. Otwórz stronę na nowym IP za pomocą linku do podglądu DNSPeek, uruchom raport QA i wyślij link osobie, która ma go zatwierdzić. Raport QA odczytuje też DNS domeny i przypomni o obniżeniu TTL, jeśli nadal jest długi.

Checklista TTL

TTL

  • Zanotowany obecny TTL każdego rekordu do zmiany
  • TTL obniżony do 300 sekund, rekordy nadal na starym IP
  • Przed przełączeniem upłynął jeden stary TTL
  • Rekordy przełączone na nowy IP
  • Propagacja sprawdzona w publicznych resolverach
  • TTL podniesiony ponownie kilka dni później

Najczęstsze pytania

Jak długo przed migracją obniżyć TTL?

Co najmniej jeden pełny stary TTL przed przełączeniem. Przy TTL wynoszącym godzinę obniż go ponad godzinę wcześniej; przy TTL wynoszącym dzień — ponad dzień wcześniej. Obniżenie 24–48 godzin wcześniej obejmuje typowe przypadki.

Jakiego TTL użyć przy przełączaniu DNS?

300 sekund, czyli pięć minut, to typowa wartość. Sprawia, że przełączenie i ewentualne wycofanie są szybkie, bez zauważalnego obciążenia dostawcy DNS.

Czy obniżenie TTL tuż przed przełączeniem pomaga?

Bardzo niewiele. Resolvery, które zapamiętały rekord ze starym, długim TTL, trzymają go, dopóki ten TTL nie wygaśnie, więc krótka wartość pomaga tylko resolverom, które zapytają ponownie po obniżeniu.

Czy utrzymywać niski TTL na stałe?

Zwykle nie. Dłuższy TTL, np. godzina lub więcej, oznacza mniej zapytań i dłużej utrzymuje dostępność strony, jeśli dostawca DNS ma awarię. Obniż go ponownie przed kolejną planowaną zmianą.

Czy TTL wpływa na zmianę serwerów nazw?

Tylko częściowo. Delegacja do Twoich serwerów nazw jest zapamiętywana przez resolvery zgodnie z TTL strefy nadrzędnej, którego nie możesz zmienić. Skopiuj wszystkie rekordy do nowego dostawcy i licz się z maksymalnie dwoma dniami na samą zmianę serwerów nazw.

Moving a site? Use the migration checklist

Every step from lowering the TTL to checking email after the switch, on one printable page. With a free account you keep your preview links in one place and run a QA report of the site on the new server.

Sprawdź nowy serwer przed przełączeniem

DNSPeek daje Ci jeden link HTTPS, który pokazuje Twoją stronę z nowego serwera, podczas gdy DNS nadal wskazuje stary. Otwórz go na dowolnym urządzeniu, udostępnij zespołowi lub klientowi i uruchom skanowanie QA na tym samym linku.

Utwórz darmowy link do podglądu