Forestil dig dette. Du har lige skiftet hostingudbyder og opdateret din A-post, så den peger på den nye server. Du genindlæser din side, og intet er ændret. Den gamle side indlæses stadig. Du tjekker dit DNS-panel, og den nye post er gemt. Hvad sker der så?
Svaret er TTL. Når du sætter en DNS-post, sætter du også en TTL-værdi, der fortæller alle DNS-servere på internettet, hvor længe de må gemme en kopi af den post. Indtil den timer løber ud, bliver serverne ved med at levere de gamle oplysninger, også efter du har lavet en ændring. At forstå hvordan DNS virker starter med at forstå TTL, fordi det styrer hastigheden på hver DNS-ændring, du laver.
Hvad står TTL for?
TTL står for time to live. I DNS er det et tal knyttet til hver DNS-post, der fortæller servere, hvor mange sekunder de må gemme posten, før de skal tjekke for en ny kopi.
Hver DNS-post, du opretter, har en TTL-værdi. Alle dine DNS-posttyper bruger den. A-poster, CNAME-poster, MX-poster, TXT-poster. Hver har sin egen TTL-indstilling, og hver kan sættes til en forskellig værdi, alt efter hvor ofte du venter, at posten ændres.
Hvordan virker TTL i almindeligt sprog?
Når nogen skriver dit domæne i en browser, spørger deres enhed en DNS-server om din hjemmesides IP-adresse. Den DNS-server slår din A-post op og får svaret. Men den læser også den TTL-værdi, der hænger på posten.
Er din TTL sat til 3600, gemmer DNS-serveren svaret i 3.600 sekunder (en time). I den næste time får alle, der spørger samme DNS-server om dit domæne, det gemte svar. Serveren tjekker ikke igen, før timeren er udløbet.
Når TTL løber ud, udløser den næste forespørgsel et nyt opslag. DNS-serveren går tilbage til kilden, henter den aktuelle post, læser den nye TTL-værdi og starter nedtællingen forfra.
Tænk på en gul seddel på køleskabet. Nogen skriver pizzeriaets telefonnummer ned og sætter sedlen på køleskabet. Alle i huset bruger det nummer, indtil sedlen udløber (bliver smidt ud). Så skal nogen slå nummeret op igen. Har pizzeriaet i mellemtiden skiftet nummer, bliver det nye nummer først fundet, når den gamle seddel er væk.
Hvordan måles TTL?
TTL måles altid i sekunder. Her er de mest almindelige værdier og hvad de svarer til i virkelig tid.
- 300 svarer til 5 minutter
- 600 svarer til 10 minutter
- 1800 svarer til 30 minutter
- 3600 svarer til 1 time
- 14400 svarer til 4 timer
- 43200 svarer til 12 timer
- 86400 svarer til 24 timer
De fleste DNS-paneler viser TTL-feltet, når du opretter eller redigerer en post. Nogle bruger en rulleliste med faste valg som "1 time" eller "automatisk". Andre lader dig skrive det præcise antal sekunder.
Hvad sker der, når TTL er høj?
En høj TTL betyder, at DNS-servere gemmer din post i lang tid. Er din TTL 86400 (24 timer), holder hver DNS-server, der slår din post op, fast i det svar i et helt døgn, før den tjekker igen.
Fordelen er færre DNS-opslag. Når tusindvis af besøgende indlæser din side, har deres DNS-resolvere allerede svaret gemt. Det giver lidt hurtigere sideindlæsning og mindre belastning af DNS-infrastrukturen.
Ulempen er, at ændringer tager længere tid at sprede sig. Opdaterer du din A-post med en TTL på 24 timer, kan nogle besøgende stadig se den gamle side i op til 24 timer. Du bytter hurtige ændringer for effektive opslag.
Hvad sker der, når TTL er lav?
En lav TTL betyder, at DNS-servere opdaterer din post oftere. Er din TTL 300 (fem minutter), smider serverne det gemte svar ud hvert femte minut og slår det op igen.
Fordelen er, at ændringer spreder sig hurtigt. Opdaterer du en post med en TTL på fem minutter, ser det meste af internettet den nye værdi inden for få minutter.
Ulempen er flere DNS-forespørgsler. Hver gang cachen udløber, skal serveren lave et nyt opslag. For en side med meget trafik betyder det mere belastning af dine autoritative DNS-servere. For de fleste små og mellemstore brands er forskellen ikke til at mærke. Men det er unødvendigt at have en fast lav TTL, når du ikke laver ændringer.
Hvad er en god standard-TTL?
For de fleste DNS-poster er 3600 (en time) en solid standard. Den finder balancen mellem to ting.
- Ændringer propagerer inden for en time, hvilket er hurtigt nok til almindelige opdateringer
- DNS-servere skal ikke slå din post op hvert par minutter, når intet er ændret
Ændres dine DNS-poster sjældent (og det gør de ikke for de fleste brands), kan du roligt bruge 3600 eller endda 14400 (fire timer). Du har kun brug for en lavere TTL, når du ved, at en ændring er på vej.
Hvornår skal du sænke din TTL?
Sænk din TTL, før du laver en større DNS-ændring. Her er de situationer, hvor en lav TTL sparer dig tid og besvær.
- Skift af hostingudbyder og opdatering af din A-post
- Flytning af din hjemmeside til en ny platform
- Skift af e-mailudbyder og opdatering af MX-poster
- At pege et domæne på en hjemmeside for første gang
- Opsætning af et system til skift ved nedbrud eller til belastningsfordeling
I hvert af de tilfælde vil du have, at ændringen slår igennem så hurtigt som muligt. En lav TTL får det til at ske.
Sådan sænker du TTL før en flytning
Der er en enkel strategi, som erfarne DNS-administratorer bruger før enhver serverflytning. Den har tre trin.
- 24 til 48 timer før ændringen sænker du din TTL til 300 (fem minutter). Det giver den gamle høje TTL tid til at udløbe på alle DNS-servere i verden. Når du er klar til at lave selve ændringen, tjekker de fleste servere hvert femte minut
- Lav DNS-ændringen. Opdater A-posten (eller den post, du ændrer) til den nye værdi. Fordi TTL allerede er lav, opfanger DNS-servere rundt om i verden den nye værdi inden for få minutter
- Når ændringen er bekræftet og virker, sætter du TTL op igen til 3600 eller din foretrukne standard. Det stopper de konstante opslag, nu hvor ændringen er færdig, og den nye post er stabil
At springe trin ét over er den hyppigste fejl. Er din TTL stadig sat til 86400, når du laver ændringen, vil nogle DNS-servere levere den gamle post i op til 24 timer, fordi deres cache ikke er udløbet endnu. At sænke TTL i forvejen forhindrer det.
Hvordan hænger TTL og DNS-propagering sammen?
DNS-propagering er processen, hvor dine opdaterede DNS-poster spreder sig til alle DNS-servere rundt om i verden. TTL er den vigtigste faktor, der styrer, hvor lang tid den proces tager.
Når folk siger "DNS-propagering kan tage op til 48 timer", betyder det, at nogle DNS-servere kan have gemt din gamle post med en høj TTL, og de servere tjekker ikke for opdateringer, før deres timer løber ud.
En lav TTL før en ændring betyder hurtigere propagering. En høj TTL betyder langsommere propagering. Så direkte er det. Tallet på 48 timer er et værste-tilfælde for poster med en TTL på 24 timer, fordi nogle servere kan have gemt posten lige før, du lavede ændringen, og stadig have næsten et helt døgn tilbage på deres timer.
Almindelige fejl med TTL
To fejl dukker op oftere end alle andre, når det gælder TTL.
At glemme at sænke TTL før en ændring. Det er den store. Du opdaterer din A-post, så den peger på en ny server, men din TTL var sat til 86400. Nu ser nogle besøgende den nye side og nogle den gamle, og du har intet valg andet end at vente. Sænk altid TTL 24 til 48 timer før DNS-ændringer.
At sætte TTL for lav permanent. En TTL på 60 sekunder betyder, at hver DNS-server tjekker for opdateringer hvert minut. Ændres dine poster ikke, skaber det bare unødvendig DNS-trafik. Det kan også gøre din side en smule langsommere for førstegangsbesøgende, hvis DNS-resolver skal lave et nyt opslag oftere. Brug en lav TTL midlertidigt, når der er planlagt ændringer, og sæt den derefter op igen.
Sådan håndterer WEMASY TTL
Når du forbinder et eget domæne til din WEMASY-hjemmeside, klarer platformen DNS-opsætningen som en del af processen. WEMASY sætter fornuftige standardværdier for TTL på de poster, du skal bruge, så du ikke skal gætte på, hvilke værdier du skal bruge.
Flytter du til WEMASY fra en anden udbyder, fører guiden til domæneopsætning dig gennem at sænke din TTL, før du skifter, så overgangen går roligt. WEMASY har hosting, SSL og domænestyring med i ét abonnement. Se, hvad der er med i hver plan, på siden WEMASY-priser.
Hvad kommer så
Nu hvor du forstår, hvad TTL er, og hvordan det styrer hastigheden på DNS-ændringer, handler næste kapitel om, hvordan DNS-propagering virker. Du lærer, hvad der sker i baggrunden, når en DNS-post opdateres, hvorfor propagering ikke er øjeblikkelig, og hvordan du tjekker, om dine ændringer har spredt sig. For det fulde billede af, hvordan domænenavnesystemet fungerer, kan du genlæse kapitlet om hvordan DNS virker.
Ofte stillede spørgsmål
Kan du sætte forskellig TTL for hver DNS-post?
Ja. Hver DNS-post har sit eget TTL-felt. Du kan sætte din A-post til 3600 (en time) og din MX-post til 14400 (fire timer), hvis det passer til dine behov. Poster, der ændres oftere, kan have en lavere TTL, mens stabile poster kan bruge en højere. Med WEMASYs hjemmesidebygger kan du sætte det op direkte på din hjemmeside.
Påvirker TTL, hvor hurtigt hjemmesiden indlæses?
Ikke direkte. TTL styrer, hvor ofte DNS-servere opdaterer deres gemte kopi af dine DNS-poster. Når en besøgendes enhed har slået dit domæne op til en IP-adresse, har TTL ingen betydning for, hvor hurtigt dine sider indlæses. Forskellen er kun, hvor hurtigt selve DNS-opslaget bliver færdigt, og det handler om millisekunder, ikke sekunder.
Hvilken TTL skal du bruge til e-mailposter?
Til MX-poster og TXT-poster om e-mail (som SPF og DKIM) er en TTL på 3600 (en time) en sikker standard. Er du ved at skifte e-mailudbyder, så sænk TTL til 300 en dag eller to før ændringen, og sæt den op igen, når den nye opsætning er bekræftet.
Kan du tvinge DNS-servere til at rydde deres cache, før TTL udløber?
Nej. Du kan ikke tvinge eksterne DNS-servere til at droppe deres gemte poster. Hver server følger sin egen cache-timer. Den eneste måde at gøre det hurtigere på er at have sat en lav TTL, før ændringen blev lavet. Nogle DNS-udbydere har et værktøj til at rydde cachen på deres egne servere, men det påvirker ikke alle servere på internettet.
Er der en mindsteværdi for TTL, du bør bruge?
Teknisk kan du sætte TTL helt ned til 1 sekund, men de fleste DNS-udbydere kræver et minimum på 60 eller 300 sekunder. At gå under 300 er sjældent nyttigt. Selv under flytninger giver en TTL på fem minutter hurtig propagering uden at overbelaste DNS-infrastrukturen.