← Zpět na srovnání

TTL DNS: jak plánovat změny záznamů bez zbytečného výpadku

TTL určuje, jak dlouho mohou DNS resolvery používat uloženou odpověď. Při plánované změně serveru, pošty nebo CDN rozhoduje o tom, kdy se nová odpověď začne reálně používat.

TTL neříká, za jak dlouho se DNS „propaguje“. Je to doba v sekundách, po kterou si resolver smí pamatovat získaný záznam. Dokud cache nevyprší, může návštěvník dostávat dřívější IP adresu nebo původní cíl CNAME záznamu, i když už jste změnu u autoritativních DNS serverů uložili.

Co TTL ovlivňuje

TTL je součástí odpovědi pro konkrétní záznam, například A, AAAA, MX nebo CNAME. Každý resolver jej odpočítává samostatně. Proto dva uživatelé nemusí novou hodnotu vidět ve stejnou chvíli: jeden mohl starou odpověď získat před minutou, druhý těsně před změnou.

Standard DNS popisuje TTL jako hodnotu určující dobu života uloženého záznamu; podrobnosti formátu záznamů najdete v RFC 1035. Vedle běžných odpovědí existuje i záporná cache: chybějící jméno nebo záznam může resolver dočasně pamatovat podle údajů SOA, jak popisuje RFC 2308.

Kdy TTL snížit

Nižší TTL má smysl před předem známou změnou, například při migraci webu na nový server, změně poskytovatele e-mailu nebo přepnutí služby za CNAME. Nesnižujte jej až v okamžiku přepnutí: resolvery, které si starou delší hodnotu uložily dříve, ji budou používat až do jejího vypršení.

Rozumný postup je snížit TTL alespoň o délku původního TTL před plánovanou změnou. Má-li záznam TTL 24 hodin a chcete při přepnutí krátkou cache, upravte jej nejméně den dopředu. Až poté, co se stará odpověď vytratí z cache, má kratší TTL praktický účinek.

Bezpečný postup při změně DNS

  1. Zapište si současné záznamy včetně hodnot, priorit MX a TTL.
  2. Snižte TTL jen u záznamů, které budete měnit, a počkejte alespoň původní TTL.
  3. Připravte nový server nebo e-mailovou službu tak, aby fungovala souběžně se starou.
  4. Změňte záznam a ověřte odpověď přímo na autoritativním DNS serveru i přes běžný resolver.
  5. Po stabilizaci vraťte TTL na hodnotu vhodnou pro běžný provoz a uložte si konečné nastavení.

Při změně e-mailu nepřepínejte bez kontroly jen MX záznam. Ověřte také SPF, DKIM a DMARC; související postup shrnuje návod jak nastavit DMARC. U webu ověřte HTTPS, přihlášení a formuláře na nové adrese dřív, než ukončíte starý server.

Jak TTL ověřit

V příkazovém řádku lze odpověď zobrazit například příkazem nslookup -type=A example.cz nebo nástrojem dig example.cz A. V administraci DNS se hodnoty často zadávají v sekundách; 300 znamená pět minut, 3600 jednu hodinu a 86400 jeden den. Nezaměňujte TTL se sériovým číslem SOA: serial pomáhá autoritativním DNS serverům poznat změnu zóny, zatímco TTL řídí cache odpovědi.

Nejčastější chyby

Praktické shrnutí

TTL je plánovací nástroj, ne tlačítko pro okamžité přepnutí DNS. U důležité změny nejdřív snižte TTL s dostatečným předstihem, připravte oba cíle pro souběžný provoz a ověřte odpovědi z více míst. Po úspěšném přepnutí TTL opět nastavte na běžnou provozní hodnotu.