DNS-resolver

Protokoll och standarder
En server som tar emot DNS-frågor från klienter och hämtar svar genom att fråga auktoritativa servrar.
← Tillbaka till Ordlistan

Vad är en DNS-resolver?

En DNS-resolver (även kallad rekursiv resolver eller rekursiv DNS-server) är en server som tar emot DNS-frågor från klientenheter och tar reda på IP-adressen för ett domännamn. Resolvern fungerar som mellanhand mellan klienterna och DNS-hierarkin och hanterar rekursion genom rotservrar, TLD-servrar och auktoritativa namnservrar.

Så fungerar DNS-resolvers

Upplösningsprocessen

När du skriver "example.com" i webbläsaren:

1. Client → Resolver: "What's the IP for example.com?"

2. Resolver checks cache

→ Cache hit: Return cached result

→ Cache miss: Begin recursion

3. Resolver → Root Server: "Where's .com?"

Root → Resolver: "Ask these .com nameservers"

4. Resolver → .com TLD: "Where's example.com?"

.com → Resolver: "Ask these nameservers"

5. Resolver → Authoritative NS: "What's example.com's IP?"

Auth NS → Resolver: "203.0.113.50"

6. Resolver → Client: "203.0.113.50"

(Also caches result based on TTL)

Rekursiva och iterativa frågor

Rekursiv fråga (klient → resolver):
Client: "Give me the final answer for example.com"

Resolver: "Here's the IP: 203.0.113.50"

(Resolver does all the work)

Iterativ fråga (resolver → namnservrar):
Resolver: "What's example.com?"

Root: "I don't know, ask .com servers"

Resolver: "What's example.com?"

.com: "I don't know, ask ns1.example.com"

Resolver: "What's example.com?"

ns1: "203.0.113.50"

Typer av resolvers

Stub-resolver

Inbyggd i operativsystem och applikationer:

Exempel: Operativsystemets DNS-klient och applikationers DNS-bibliotek

Rekursiv resolver

Fullständiga servrar som utför hela DNS-upplösningen:

Exempel: ISP:ers DNS, Google (8.8.8.8) och Cloudflare (1.1.1.1)

Vidarebefordrande resolver

Vidarebefordrar frågor till en annan resolver i stället för att utföra rekursion:

Client → Corporate Resolver (forwarding) → ISP Resolver (recursive) → Internet

Populära offentliga resolvers

LeverantörIPv4IPv6Funktioner
Cloudflare1.1.1.1, 1.0.0.12606:4700:4700::1111Snabb, integritetsfokuserad, loggar inte
Google8.8.8.8, 8.8.4.42001:4860:4860::8888Tillförlitlig, global anycast
Quad99.9.9.92620:fe::feSäkerhetsfiltrering, blockerar hot
OpenDNS208.67.222.2222620:119:35::35Innehållsfiltrering, nätfiskeskydd

Byta resolver

Windows:
Control Panel → Network → Adapter Settings

→ Properties → IPv4 → Use these DNS servers:

Preferred: 1.1.1.1

Alternate: 8.8.8.8

macOS:
System Preferences → Network → Advanced → DNS

→ Add: 1.1.1.1, 8.8.8.8

Linux (/etc/resolv.conf):
nameserver 1.1.1.1

nameserver 8.8.8.8

Resolverfunktioner

Cachelagring

Resolvers cachelagrar DNS-svar utifrån TTL:

First query: example.com

→ Full recursion (50ms)

→ Cached for 300s (TTL)

Subsequent queries: example.com

→ Cache hit (1ms)

→ Served until TTL expires

Cache-statistik visar ofta träffgrader över 80-90 %.

Negativ cachelagring

Resolvers cachelagrar även negativa svar (NXDOMAIN):

Query: nonexistent.example.com

Response: NXDOMAIN

Cached: Based on SOA minimum TTL

Det förhindrar upprepade frågor om domäner som inte finns.

Frågeminimering

Moderna resolvers minimerar informationsläckage:

Traditionellt:
Query to .com: "What's www.blog.example.com?"

→ Exposes full subdomain structure

Frågeminimering (RFC 7816):
Query to .com: "What's example.com?"

Query to example.com NS: "What's blog.example.com?"

Query to blog.example.com NS: "What's www.blog.example.com?"

→ Reveals only necessary information at each level

DNSSEC-validering

Säkerhetsmedvetna resolvers validerar DNSSEC-signaturer:

Query: example.com (DNSSEC-signed)

→ Resolver validates signatures

→ Returns AD (Authentic Data) flag if valid

→ Returns SERVFAIL if signatures invalid

Resolverns säkerhetsfunktioner

DNS over HTTPS (DoH), krypterad DNS

Krypterar DNS-frågor över HTTPS:

Traditional DNS:

Client → Resolver (UDP port 53, plaintext)

DNS over HTTPS:

Client → Resolver (TCP port 443, encrypted)

Leverantörer: Cloudflare (https://cloudflare-dns.com/dns-query) och Google

DNS over TLS (DoT), krypterad transport

Krypterar DNS-frågor över TLS:

Client → Resolver (TCP port 853, encrypted)
Fördel: Internetleverantörer kan inte se eller ändra DNS-frågorna

Filtrering av skadlig kod och nätfiske

Vissa resolvers blockerar kända skadliga domäner:

Quad9 (9.9.9.9): Blockerar domäner som förknippas med skadlig kod och nätfiske Cloudflare for Families: Blockerar skadlig kod (1.1.1.2) eller skadlig kod och vuxeninnehåll (1.1.1.3)

Hastighetsbegränsning

Skyddar mot DNS-förstärkningsattacker:

If source IP sends > threshold queries/second:

→ Temporarily rate limit or block

Kontrollera din aktuella resolver

Windows:
ipconfig /all | findstr "DNS Servers"
macOS/Linux:
cat /etc/resolv.conf
Onlineverktyg: browserleaks.com/dns visar vilken resolver webbläsaren använder Testa upplösningen:
dig example.com

# Look at "SERVER:" in output

Resolverprestanda

Latens spelar roll

Resolverns svarstid påverkar webbprestandan:

ResolverGenomsnittlig latensPåverkan
Lokal ISP10-30msSnabb, men varierar
Cloudflare10-20msKonsekvent snabb (anycast)
Google20-40msTillförlitlig, global
Långsam resolver100-200msMärkbar fördröjning vid sidladdning

Anycast-routning

Stora resolvers använder anycast för låg latens:

1.1.1.1 anycast IP

→ Routed to nearest Cloudflare datacenter

→ New York query → New York datacenter

→ London query → London datacenter

→ Result: Global low-latency resolution

Mäta resolverprestanda

Med Namebench (automatiserad testning):
# Tests multiple resolvers with your actual query patterns

namebench

Manuell testning:
# Test Cloudflare

time dig @1.1.1.1 example.com

# Test Google

time dig @8.8.8.8 example.com

# Test ISP (current)

time dig example.com

Vanliga resolverproblem

DNS-förgiftning

Angripare matar in falska poster i resolverns cache:

Åtgärder:

Kapad resolver

Internetleverantörer eller skadlig kod omdirigerar DNS-frågor:

Symtom: Sökningar visar ISP-annonser eller oväntade omdirigeringar Lösning:

Föråldrad cache

Resolverns cache innehåller föråldrade poster:

Symtom: DNS-ändringar syns inte Lösning:

Blockerad resolver

Vissa nätverk blockerar externa resolvers:

Symtom: Det går inte att nå 8.8.8.8 eller 1.1.1.1 Lösning:

Konfigurera en lokal resolver

Använda Unbound

# Install Unbound (Linux)

sudo apt install unbound

# Basic config (/etc/unbound/unbound.conf)

server:

interface: 127.0.0.1

do-ip4: yes

do-udp: yes

do-tcp: yes

# Enable DNSSEC

auto-trust-anchor-file: "/var/lib/unbound/root.key"

# Privacy (query minimization)

qname-minimisation: yes

# Start service

sudo systemctl start unbound

sudo systemctl enable unbound

Använda Pi-hole

Nätverksomfattande DNS-resolver med annonsblockering:

# Install Pi-hole

curl -sSL https://install.pi-hole.net | bash

# Configure devices to use Pi-hole as resolver

# Set router DHCP to provide Pi-hole IP as DNS

Bästa praxis

1. Använd välrenommerade offentliga resolvers: Cloudflare, Google eller Quad9 för tillförlitlighet

2. Aktivera DoH eller DoT: Kryptera frågor för integritet och säkerhet

3. Överväg resolverns funktioner: Välj utifrån behov av integritet, hastighet eller säkerhet

4. Övervaka resolverprestanda: Testa latensen regelbundet

5. Ha reservresolvers: Konfigurera sekundär DNS för redundans

6. Använd DNSSEC-validerande resolvers: Skydda mot cacheförgiftning

7. Förstå resolverns policyer: Vissa filtrerar innehåll och andra loggar frågor

8. Testa efter ändringar: Kontrollera att DNS-upplösningen fungerar korrekt

9. Dokumentera valet av resolver: Notera varför en viss resolver valdes

10. Uppdatera resolv.conf försiktigt: Felaktig konfiguration slår ut DNS helt

Resolver jämfört med auktoritativ namnserver

FunktionResolverAuktoritativ NS
RollBesvarar klientfrågorInnehåller de faktiska DNS-posterna
RekursionJa, frågar andra servrarNej, svarar bara för egna zoner
CachelagringJa, cachelagrar svarNej (auktoritativa data)
Används avKlienter och slutanvändareResolvers under rekursion
Exempel8.8.8.8, 1.1.1.1ns1.example.com

DNS-resolvers är arbetshästarna i DNS-systemet. Att välja en snabb, säker resolver som respekterar integriteten påverkar i hög grad webbupplevelsen och säkerheten på nätet.

Använd Denna Kunskap

Använd DomScans API för att kontrollera domäntillgänglighet, hälsa och mer.