Résolveur DNS

Protocoles et Normes
Un serveur qui reçoit les requêtes DNS des clients et récupère les réponses en interrogeant les serveurs faisant autorité.
← Retour au Glossaire

Qu'est-ce qu'un résolveur DNS ?

Un résolveur DNS (également appelé résolveur récursif ou serveur DNS récursif) est un serveur qui reçoit les requêtes DNS des appareils clients et effectue le travail de suivi de l'adresse IP d'un nom de domaine. Les résolveurs agissent comme intermédiaires entre les clients et la hiérarchie DNS, en gérant la récursion à travers les serveurs racine, TLD et faisant autorité.

Comment fonctionnent les résolveurs DNS

Le processus de résolution

Lorsque vous tapez « example.com » dans votre navigateur :

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)

Requêtes récursives vs itératives

Requête récursive (Client → Résolveur) :
Client: "Give me the final answer for example.com"

Resolver: "Here's the IP: 203.0.113.50"

(Resolver does all the work)

Requête itérative (Résolveur → Serveurs de noms) :
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"

Types de résolveurs

Résolveur stub

Intégré dans les systèmes d'exploitation et les applications :

Exemples : Client DNS du système d'exploitation, bibliothèques DNS d'applications

Résolveur récursif

Serveurs à fonctionnalités complètes qui effectuent la résolution DNS complète :

Exemples : DNS ISP, Google (8.8.8.8), Cloudflare (1.1.1.1)

Résolveur de transfert

Transmet les requêtes à un autre résolveur au lieu d'effectuer la récursion :

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

Résolveurs publics populaires

FournisseurIPv4IPv6Caractéristiques
Cloudflare1.1.1.1, 1.0.0.12606:4700:4700::1111Rapide, respectueux de la vie privée, pas d'enregistrement
Google8.8.8.8, 8.8.4.42001:4860:4860::8888Fiable, anycast global
Quad99.9.9.92620:fe::feFiltrage de sécurité, blocage des menaces
OpenDNS208.67.222.2222620:119:35::35Filtrage de contenu, protection contre le phishing

Changer votre résolveur

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

Fonctionnalités du résolveur

Mise en cache

Les résolveurs mettent en cache les réponses DNS basées sur TTL :

First query: example.com

→ Full recursion (50ms)

→ Cached for 300s (TTL)

Subsequent queries: example.com

→ Cache hit (1ms)

→ Served until TTL expires

Les statistiques de cache montrent que les taux de succès dépassent souvent 80-90%.

Mise en cache négatif

Les résolveurs mettent également en cache les réponses négatives (NXDOMAIN) :

Query: nonexistent.example.com

Response: NXDOMAIN

Cached: Based on SOA minimum TTL

Cela empêche les requêtes répétées pour les domaines inexistants.

Minimisation des requêtes

Les résolveurs modernes minimisent la divulgation d'informations :

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

→ Exposes full subdomain structure

Minimisation des requêtes (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

Validation DNSSEC

Les résolveurs conscients de la sécurité valident les signatures DNSSEC :

Query: example.com (DNSSEC-signed)

→ Resolver validates signatures

→ Returns AD (Authentic Data) flag if valid

→ Returns SERVFAIL if signatures invalid

Fonctionnalités de sécurité du résolveur

DNS via HTTPS (DoH)

Chiffre les requêtes DNS via HTTPS :

Traditional DNS:

Client → Resolver (UDP port 53, plaintext)

DNS over HTTPS:

Client → Resolver (TCP port 443, encrypted)

Fournisseurs : Cloudflare (https://cloudflare-dns.com/dns-query), Google

DNS via TLS (DoT)

Chiffre les requêtes DNS via TLS :

Client → Resolver (TCP port 853, encrypted)
Bénéfice : Les FAI ne peuvent pas voir ou modifier les requêtes DNS

Filtrage malveillance/hameçonnage

Certains résolveurs bloquent les domaines malveillants connus :

Quad9 (9.9.9.9) : Bloque les domaines associés aux malveillances, hameçonnage Cloudflare for Families : Bloque les malveillances (1.1.1.2) ou malveillances+contenu pour adultes (1.1.1.3)

Limitation de débit

Protège contre les attaques par amplification DNS :

If source IP sends > threshold queries/second:

→ Temporarily rate limit or block

Vérification de votre résolveur actuel

Windows :
ipconfig /all | findstr "DNS Servers"
macOS/Linux :
cat /etc/resolv.conf
Outils en ligne : browserleaks.com/dns affiche quel résolveur votre navigateur utilise Test de résolution :
dig example.com

# Look at "SERVER:" in output

Performance du résolveur

La latence compte

Le temps de réponse du résolveur impacte les performances web :

RésolveurLatence moyenneImpact
FAI local10-30msRapide, mais varie
Cloudflare10-20msConsistemment rapide (anycast)
Google20-40msFiable, global
Résolveur lent100-200msDélai de chargement de page notable

Routage anycast

Les résolveurs majeurs utilisent anycast pour une latence faible :

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

Mesure des performances du résolveur

Utiliser Namebench (test automatisé) :
# Tests multiple resolvers with your actual query patterns

namebench

Test manuel :
# 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

Problèmes courants du résolveur

Empoisonnement DNS

Les attaquants injectent de faux registres dans le cache du résolveur :

Atténuation :

Détournement du résolveur

Les FAI ou les malveillances redirigent les requêtes DNS :

Symptôme : Les recherches affichent les publicités FAI, redirections inattendues Solution :

Cache périmé

Le cache du résolveur contient des registres obsolètes :

Symptôme : Les changements DNS ne se reflètent pas Solution :

Blocage du résolveur

Certains réseaux bloquent les résolveurs externes :

Symptôme : Impossible d'atteindre 8.8.8.8, 1.1.1.1 Solution :

Configuration d'un résolveur local

Utiliser 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

Utiliser Pi-hole

Résolveur DNS ad-blocking au niveau du réseau :

# 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

Meilleures pratiques

1. Utiliser des résolveurs publics réputés : Cloudflare, Google ou Quad9 pour la fiabilité

2. Activer DoH/DoT : Chiffrer les requêtes pour la vie privée et la sécurité

3. Considérer les fonctionnalités du résolveur : Choisir en fonction de la vie privée, la vitesse ou les besoins de sécurité

4. Surveiller les performances du résolveur : Tester la latence périodiquement

5. Avoir des résolveurs de sauvegarde : Configurer les DNS secondaires pour la redondance

6. Utiliser les résolveurs validant DNSSEC : Protéger contre l'empoisonnement du cache

7. Comprendre les politiques de votre résolveur : Certains filtrent le contenu, certains enregistrent les requêtes

8. Tester après les changements : Vérifier que la résolution DNS fonctionne correctement

9. Documenter le choix du résolveur : Noter pourquoi vous avez choisi un résolveur particulier

10. Mettre à jour resolv.conf avec soin : Une configuration incorrecte casse complètement DNS

Résolveur vs serveur de noms faisant autorité

FonctionnalitéRésolveurNS faisant autorité
RôleRépond aux requêtes des clientsContient les registres DNS réels
RécursionOui, interroge les autres serveursNon, répond uniquement pour ses propres zones
Mise en cacheOui, met en cache les réponsesNon (données faisant autorité)
Utilisé parClients, utilisateurs finauxRésolveurs pendant la récursion
Exemples8.8.8.8, 1.1.1.1ns1.example.com

Les résolveurs DNS sont les chevaux de labour du système DNS. Choisir un résolveur rapide, sécurisé et respectueux de la vie privée améliore significativement votre expérience de navigation et votre sécurité en ligne.

Mettez Vos Connaissances en Pratique

Utilisez l'API de DomScan pour vérifier la disponibilité des domaines, la santé et bien d'autres choses.