Saltar al contenido

DNS-cache och hur det gör ditt internet bättre

7 de abril de 2023
what is a dns cache 817514 289185cfa826431e91eeef1295481625

En DNS-cache (kallas ibland DNS resolver cache) är en temporär databas, som underhålls av en dators operativsystem, som innehåller register över alla senaste besök och försök till webbplatser och andra internetdomäner. Med andra ord är en DNS-cache bara ett minne av senaste DNS-uppslagningar som din dator snabbt kan hänvisa till när den försöker ta reda på hur man laddar en webbplats.

Informationen i den här artikeln gäller hemanvändare som inte har ändrat sina DNS-inställningar.

Syftet med en DNS-cache

Internet är beroende av domännamnssystemet för att upprätthålla ett index över alla offentliga webbplatser och deras motsvarande IP-adresser. Du kan se det som en telefonbok. Med en telefonbok behöver vi inte memorera allas telefonnummer, vilket är det enda sättet telefoner kan kommunicera på: med ett nummer. På samma sätt används DNS så att vi kan undvika att behöva memorera varje webbplatss IP-adress, vilket är det enda sättet nätverksutrustning kan kommunicera med webbplatser. Detta är vad som händer bakom gardinen när du ber din webbläsare att ladda en webbplats. Du skriver in en URL som lifewire.com och din webbläsare frågar din router om IP-adressen. Routern har en DNS-serveradress lagrad, så den frågar DNS-servern om IP-adressen för det värdnamnet. DNS-servern hittar den IP-adress som hör till lifewire.com och sedan kan förstå vilken webbplats du efterfrågar, varefter din webbläsare sedan kan ladda rätt sida. Detta händer för varje webbplats du vill besöka. Varje gång du besöker en webbplats med dess värdnamn initierar webbläsaren en begäran ut till internet, men denna begäran kan inte slutföras förrän webbplatsens namn har «konverterats» till en IP-adress. Problemet är att även om det finns massor av offentliga DNS-servrar som ditt nätverk kan använda för att försöka påskynda konverterings-/upplösningsprocessen, är det fortfarande snabbare att ha en lokal kopia av «telefonboken», vilket är där DNS-cachar kommer in i spela. DNS-cachen försöker påskynda processen ännu mer genom att hantera namnupplösningen av nyligen besökta adresser innan förfrågan skickas ut till internet. Det finns faktiskt DNS-cache i varje hierarki i «uppslagningsprocessen» som i slutändan får din dator att laddas hemsidan. Datorn når din router, som kontaktar din internetleverantör, som kan träffa en annan internetleverantör innan den hamnar på vad som kallas «rot-DNS-servrarna». Var och en av dessa punkter i processen har en DNS-cache av samma anledning, vilket är att påskynda namnupplösningsprocessen.

Hur en DNS-cache fungerar

Innan en webbläsare skickar sina förfrågningar till det externa nätverket, avlyssnar datorn var och en och letar upp domännamnet i DNS-cachedatabasen. Databasen innehåller en lista över alla nyligen öppnade domännamn och de adresser som DNS beräknade för dem första gången en begäran gjordes. Innehållet i en lokal DNS-cache kan ses på Windows med kommandot ipconfig /displaydns, med resultat som liknar detta: docs.google.com
————————————
Rekordnamn . . . . . : docs.google.com
Inspelningstyp . . . . . : 1
Tid att leva . . . . : 21
Datalängd . . . . . : 4
Sektion . . . . . . . : Svara
En (värd) rekord . . . : 172.217.6.174

I DNS är «A»-posten den del av DNS-posten som innehåller IP-adressen för det givna värdnamnet. DNS-cacheminnet lagrar denna adress, det begärda webbplatsnamnet och flera andra parametrar från värd-DNS-posten.

Vad är DNS-cacheförgiftning?

En DNS-cache blir förgiftad eller förorenad när obehöriga domännamn eller IP-adresser infogas i den. Ibland kan en cache skadas på grund av tekniska fel eller administrativa olyckor, men DNS-cacheförgiftning är vanligtvis förknippad med datavirus eller andra nätverksattacker som infogar ogiltiga DNS-poster i cachen. Förgiftning gör att klientförfrågningar omdirigeras till fel destinationer, vanligtvis skadliga webbplatser eller sidor fulla av reklam. Till exempel, om docs.google.com rekord från ovan hade en annan «A»-post, än när du gick in docs.google.com i din webbläsare skulle du föras någon annanstans. Detta utgör ett enormt problem för populära webbplatser. Om en angripare omdirigerar din begäran om Gmail.comtill exempel till en webbplats som utseende som Gmail men inte är det, kan du hamna i en nätfiskeattack som valfångst.

DNS-spolning: vad det gör och hur man gör det

När du felsöker cacheförgiftning eller andra problem med internetanslutningen kan en datoradministratör vilja det spola (dvs. rensa, återställ eller radera) en DNS-cache. Eftersom rensning av DNS-cachen tar bort alla poster, raderar det även alla ogiltiga poster och tvingar din dator att fylla i dessa adresser igen nästa gång du försöker komma åt dessa webbplatser. Dessa nya adresser hämtas från den DNS-server som ditt nätverk är konfigurerat för att använda. Så, för att använda exemplet ovan, om Gmail.com posten förgiftades och omdirigerade dig till en konstig webbplats, att spola DNS är ett bra första steg för att få den vanligaGmail.com tillbaks igen. I Microsoft Windows kan du spola den lokala DNS-cachen med hjälp av ipconfig /flushdns kommandot i en kommandotolk. Du vet att det fungerar när du ser det Windows IP-konfiguration tömde DNS Resolver Cache eller DNS Resolver Cache har tömts meddelande. Via en kommandoterminal ska macOS-användare använda dscacheutil -flushcache men vet att det inte finns ett «lyckat» meddelande efter att det körts, så du får inte veta om det fungerade. I vissa fall måste Mac-användare också döda DNS-svaret (sudo killall -HUP mDNSResponder.) Linux-användare bör ange /etc/rc.d/init.d/nscd starta om kommando. Det exakta kommandot kommer dock att variera beroende på din Linux-distribution. En router kan också ha en DNS-cache, varför omstart av en router ofta är ett felsökningssteg. Av samma anledning som du kan tömma DNS-cachen på din dator kan du starta om din router för att rensa DNS-posterna som är lagrade i dess tillfälliga minne.