Vad är rekursiv DNS?
Rekursiv DNS är en DNS-upplösningsmetod där en rekursiv resolver hanterar hela uppslagsprocessen på klientens uppdrag, följer DNS-hierarkin från rotservrarna till de auktoritativa namnservrarna och returnerar det slutliga svaret.Så fungerar rekursiv DNS
Client Query: "What is the IP for www.example.com?"
Step 1: Client → Recursive Resolver
"Please resolve www.example.com"
Step 2: Resolver → Root Server (.)
"Who handles .com?"
← Response: "Try a.gtld-servers.net"
Step 3: Resolver → TLD Server (.com)
"Who handles example.com?"
← Response: "Try ns1.example.com at 192.0.2.1"
Step 4: Resolver → Authoritative Server (example.com)
"What is the A record for www.example.com?"
← Response: "192.0.2.10"
Step 5: Resolver → Client
"www.example.com is at 192.0.2.10"
(Resolver caches result for future queries)
Rekursiv och iterativ DNS
| Funktion | Rekursiv | Iterativ |
|---|---|---|
| Arbete med frågan | Resolvern utför allt arbete | Klienten följer hänvisningar |
| Klientens komplexitet | Enkel | Komplex |
| Vanlig användning | Slutanvändares resolvrar | Kommunikation mellan servrar |
| Typ av svar | Slutligt svar | Svar eller hänvisning |
DNS-upplösningens förlopp
DNS Hierarchy:
Root Servers (.)
│
┌────────┼────────┐
│ │ │
.com .org .net ← TLD Servers
│
example.com ← Authoritative Servers
│
┌───┴───┐
www mail ← Host Records
Offentliga rekursiva resolvrar
| Leverantör | Primär | Sekundär | Funktioner |
|---|---|---|---|
| 8.8.8.8 | 8.8.4.4 | Global anycast | |
| Cloudflare | 1.1.1.1 | 1.0.0.1 | Integritetsfokuserad |
| Quad9 | 9.9.9.9 | 149.112.112.112 | Säkerhetsfiltrering |
| OpenDNS | 208.67.222.222 | 208.67.220.220 | Innehållsfiltrering |
Cachning
| Cachens plats | TTL styrs av | Typisk varaktighet |
|---|---|---|
| Rekursiv resolver | Zonadministratören | Timmar till dagar |
| Webbläsare | HTTP-rubriker + DNS TTL | Minuter till timmar |
| Operativsystemets resolver | DNS TTL | Minuter till timmar |
Säkerhetsöverväganden
- Cacheförgiftning: Angripare injicerar falska poster i resolverns cache.
- DNS-förstärkning: Angripare använder öppna resolvrar för DDoS-attacker.
- Integritet: Resolvrar ser alla frågor från sina användare.
- Motåtgärder: DNSSEC-validering, hastighetsbegränsning och krypterad DNS (DoH/DoT).
Frågeflaggor
Recursion Desired (RD): Client requests recursive resolution
Recursion Available (RA): Server supports recursion
Query: dig example.com @8.8.8.8
;; flags: qr rd ra ← RD set by client, RA confirmed by server
Bästa praxis
1. Använd tillförlitliga resolvrar: Välj resolvrar med hög drifttid och god prestanda.
2. Aktivera DNSSEC-validering: Skydda mot förfalskningsattacker.
3. Ta hänsyn till integriteten: Använd krypterad DNS (DoH/DoT) för känsliga frågor.
4. Övervaka latensen: Resolverns placering påverkar uppslagningens hastighet.
5. Konfigurera reservservrar: Använd flera resolveradresser.
Rekursiv DNS förenklar upplösningen för slutanvändare genom att automatiskt hantera komplexiteten i DNS-hierarkin.