DNS-propagáció: miért tart sokáig, és hogyan ellenőrizze?
Amikor átírja egy DNS-rekordot, vagy névszervert vált, a változás nem „terjed” sehol: a világ DNS-gyorsítótárai egyenként járnak le. Ha érti ezt, pontosan meg tudja jósolni a várakozást, és el tudja kerülni a leállást.
Tartalomjegyzék
- Nincs „terjedés”: csak gyorsítótárak vannak
- Mitől függ a várakozási idő?
- A rekord TTL-je
- Névszerver-váltás
- Negatív gyorsítótár
- Nem minden feloldó tartja be a TTL-t
- Ellenőrzés: mit lát a világ?
- Parancssorból
- Online eszközökkel
- A saját gépén
- Teendők, hogy ne legyen leállás
- Gyakori kérdések
- Mennyi idő, amíg egy DNS-változás érvényesül?
- Miért látom én az új oldalt, a barátom meg a régit?
- Siethetem a folyamatot?
- Források
A DNS-alapok útmutató felsorolja a rekordtípusokat és megemlíti a TTL-t. Itt a „DNS-propagáció” mögötti működést nézzük meg.
Nincs „terjedés”: csak gyorsítótárak vannak#
Az internet DNS-e nem egy központi telefonkönyv, amelynek minden példányát át kell írni. Amikor valaki megnyitja az Ön oldalát, a gépe egy rekurzív névfeloldótól kérdezi meg a címet (az internetszolgáltatóétól, vagy egy nyilvános szolgáltatóétól). A feloldó végigkérdezi a DNS hierarchiát, megkapja a választ, és a TTL (time to live, élettartam) idejéig megjegyzi.
Ha Ön rekordot módosít, a hiteles névszerver azonnal az új értéket adja. De aki a TTL lejárta előtt már lekérdezte, az még a régi választ kapja egy ideig. Tehát a „propagáció” valójában az, hogy a régi válaszok gyorsítótárai egyenként lejárnak.
| Réteg | Hol van a gyorsítótár | Meddig tart |
|---|---|---|
| A böngésző | a böngésző saját DNS-gyorsítótára | percek |
| Az operációs rendszer | a gép DNS-gyorsítótára | a rekord TTL-je, vagy rövidebb |
| A hálózati eszköz | otthoni router, vállalati DNS | a TTL-ig, néha tovább |
| Az internetszolgáltató / nyilvános feloldó | a rekurzív névfeloldó | a rekord TTL-je |
| A TLD (a végződés) nyilvántartója | a névszerverek (NS) delegációja | gyakran egy-két nap |
Mitől függ a várakozási idő?#
A rekord TTL-je#
Ha a régi rekord TTL-je 3600 (egy óra), akkor a változás után legfeljebb nagyjából egy óra múlva mindenki az újat látja, kivéve azokat, akik hosszabban tartják a gyorsítótárat. Ha 86400 (egy nap), akkor akár egy napig is a régit láthatják.
Ezért érdemes a TTL-t előre csökkenteni: egy-két nappal a tervezett módosítás előtt állítsa a rekord TTL-jét alacsonyra (például 300 másodpercre), várja ki a régi TTL lejártát, és csak ezután módosítson. Így a változás percek alatt életbe lép. A módosítás után a TTL-t visszaviheti magasabb értékre. (Ugyanezt javasolja a Weboldal költöztetése útmutató is.)
Névszerver-váltás#
Névszervert váltani lassabb, mert a régi névszerverekre mutató delegációs rekordot a végződés (TLD) nyilvántartója tárolja, és ennek a TTL-je általában hosszú (gyakran egy-két nap). Az új névszerverekről a világ fokozatosan értesül. Részletek: Mi az a névszerver?.
Negatív gyorsítótár#
Ha egy nevet lekérdeztek, mielőtt létezett (és a válasz „nincs ilyen név” volt), a feloldók ezt a választ is megjegyzik egy ideig (RFC 2308: a negatív válasz élettartamát a zóna SOA-rekordja szabja meg). Ezért előfordulhat, hogy egy frissen létrehozott aldomain nem érhető el néhány percig-óráig, mert valaki már korábban megkérdezte.
Nem minden feloldó tartja be a TTL-t#
Egyes hálózatok vagy eszközök a TTL-t felülbírálhatják, és hosszabban tartják a rekordot. Ezt Ön nem tudja befolyásolni, ezért a változás után is lehetnek egyes látogatók, akik a régi címre mennek.
Ellenőrzés: mit lát a világ?#
Parancssorból#
A dig (macOS, Linux; Windowson nslookup) megmutatja egy rekord értékét és a hátralévő TTL-t:
dig +short A sajatdomain.hu
dig A sajatdomain.hu # a TTL a válasz ANSWER szakaszában látszikKérdezhet közvetlenül egy konkrét feloldótól, ezzel látja, hol áll a változás:
dig @8.8.8.8 +short A sajatdomain.hu # Google nyilvános feloldó
dig @1.1.1.1 +short A sajatdomain.hu # Cloudflare nyilvános feloldóA hiteles névszervertől közvetlenül lekérdezve az új értéket kell látnia (ez az igazság forrása):
dig NS sajatdomain.hu +short # melyek a névszerverek
dig @ns1.pelda-nevszerver.hu +short A sajatdomain.huAz +trace kapcsolóval végigkövetheti a feloldás útját a gyökértől a hiteles szerverig:
dig +trace sajatdomain.huOnline eszközökkel#
A „DNS propagation checker” típusú online oldalak a világ több pontjáról kérdezik le a rekordot. Hasznosak az állapot áttekintéséhez, de csak tájékoztató jellegűek: egy feloldó eredménye nem jelenti, hogy az összes többi is azt látja.
A saját gépén#
Ha a változás már életbe lépett, de Ön még a régit látja:
- Nyisson privát ablakot, vagy próbálja másik böngészőből / telefonról mobilnetről (más feloldó).
- Ürítse a gép DNS-gyorsítótárát: macOS-en
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder, Windowsonipconfig /flushdns. - Chrome-ban:
chrome://net-internals/#dns→ Clear host cache (a böngésző belső oldalai verziónként változhatnak). - Ellenőrizze, hogy a
hostsfájlban nincs-e régi bejegyzés.
Teendők, hogy ne legyen leállás#
- Csökkentse a TTL-t a módosítás előtt 1–2 nappal.
- Készítse elő az új helyet, mielőtt a DNS-t átírja (a weboldal, a postafiókok már működjenek az új helyen).
- Módosítson, majd ellenőrizze a hiteles szerveren, hogy az új érték látszik-e.
- Tartsa meg a régi szolgáltatást, amíg a régi cím forgalma el nem apad (legalább a régi TTL többszörösét kivárva, névszerver-váltásnál 48–72 órát).
- Levelezés: az MX-módosítás után a küldő szerverek egy része még a régi helyre küldhet. Mindkét helyen legyen postafiók, vagy kérje a régi szerveren a levelek továbbítását.
Gyakori kérdések#
Mennyi idő, amíg egy DNS-változás érvényesül?#
Rekordmódosításnál a régi rekord TTL-je a mérvadó (általában percektől néhány óráig). Névszerver-váltásnál tipikusan néhány órától két napig, ritkán tovább. Pontos időt nem lehet garantálni, mert a feloldókat nem Ön vezérli.
Miért látom én az új oldalt, a barátom meg a régit?#
Mert más feloldót és más gyorsítótárat használnak. Mindkét válasz „igaz”, csak egyikük gyorsítótára még nem járt le.
Siethetem a folyamatot?#
A TTL előzetes csökkentésén kívül nem sokat. Saját gépén a gyorsítótár ürítése segít, másokén nem. Ezért a költözést érdemes úgy tervezni, hogy a régi és az új hely is működjön az átmeneti idő alatt.
Források#
Ez az útmutató általános tájékoztatás. Ha hostio-szolgáltatással kapcsolatban kérdése van, a lépésenkénti leírásokat az ügyfélportál tudásbázisában találja, vagy írjon nekünk: nbartus21@gmail.com.