Cos'è un Risolvente DNS?
Un risolutore DNS (chiamato anche un risolutore ricorsivo o un server DNS ricorsivo) è un server che riceve query DNS dai dispositivi client ed esegue il lavoro di tracciamento dell'indirizzo IP per un nome di dominio. I solventi agiscono come intermediari tra i client e la gerarchia DNS, trattando la ricorsione attraverso root, TLD e autorevoli nameserver.
Come funzionano i Risolventi DNS
Il processo di risoluzione
Quando digiti "example.com" nel tuo browser:
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)
Recursive vs Iterative Query
Recursive Query (Client → Resolver):Client: "Give me the final answer for example.com"
Resolver: "Here's the IP: 203.0.113.50"
(Resolver does all the work)
Query letteraria (Risolver → Nameservers):
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"
Tipi di Risolventi
Risolvere Stub
Costruito in sistemi operativi e applicazioni:
- inoltra le domande ai server DNS configurati
- logica minimale
- Non esibisce ricorsi
Risolvente ricorsivo
Server completi che eseguono una risoluzione DNS completa:
- Risultati delle cache
- Segui i rinvii
- Attuazione delle caratteristiche di sicurezza
Resolver di inoltro
inoltra le domande a un altro risolutore invece di eseguire la ricorsione:
- Comune nelle reti aziendali
- Applicazione delle politiche centrali
- Riduzione delle domande esterne
Client → Corporate Resolver (forwarding) → ISP Resolver (recursive) → Internet
Risoluti pubblici popolari
| Fornitore | IPv4 | IPv6 | Caratteristiche |
|---|---|---|---|
| Cloudflare | 1.1.1.1, 1.0.0.1 | 2606:4700:4700::1111 | Veloce, protetto dalla privacy, senza registrazione |
| Google Google | 8.8.8.8, 8.8.4.4 | 2001:4860:4860::8888 | Affidabile, qualsiasicast globale |
| Quadi | 9.9.9.9 | 2620:fe::fe | Filtro di sicurezza, blocco delle minacce |
| OpenDNS | 208.67.222.222 | 2620:119:35: | Filtro dei contenuti, protezione phishing |
Cambiare il Resolver
WindowsControl Panel → Network → Adapter Settings
→ Properties → IPv4 → Use these DNS servers:
Preferred: 1.1.1.1
Alternate: 8.8.8.8
- Cosa?
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
Caratteristiche del solvente
Caching
Risolvere la cache risposte DNS basate su TTL:
First query: example.com
→ Full recursion (50ms)
→ Cached for 300s (TTL)
Subsequent queries: example.com
→ Cache hit (1ms)
→ Served until TTL expires
Statistiche dei tassi mostrano tassi di successo spesso superano l'80-90%.
Caching negativo
Risolve anche le risposte negative cache (NXDOMAIN):
Query: nonexistent.example.com
Response: NXDOMAIN
Cached: Based on SOA minimum TTL
Questo impedisce ripetute domande per domini non esistenti.
Minimizzazione delle query
I moderni risolutori minimizzano la divulgazione delle informazioni:
Traduzione:
Query to .com: "What's www.blog.example.com?"
→ Exposes full subdomain structure
Minimizzazione della regina (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
Convalida DNSSEC
I risolutori di sicurezza convalidano le firme DNSSEC:
Query: example.com (DNSSEC-signed)
→ Resolver validates signatures
→ Returns AD (Authentic Data) flag if valid
→ Returns SERVFAIL if signatures invalid
Caratteristiche di sicurezza del solvente
DNS su HTTPS (DoH)
Crittografa le query DNS su HTTPS:
Traditional DNS:
Client → Resolver (UDP port 53, plaintext)
DNS over HTTPS:
Client → Resolver (TCP port 443, encrypted)
Providers: Cloudflare (https://cloudflare-dns.com/dns-query), Google
DNS su TLS (DoT)
Crittografa le query DNS su TLS:
Client → Resolver (TCP port 853, encrypted)
Benefit: Gli ISP non possono vedere o modificare query DNS
Filtro di malware/fissaggio
Alcuni risolutori bloccano noti domini maligni:
Quad9 (9.9.9.9) Blocchi domini associati a malware, phishing Cloudflare for Families: Blocks malware (1.1.1.2) o malware + contenuti per adulti (1.1.1.3)Limitamento del tasso
Protegge dagli attacchi di amplificazione DNS:
If source IP sends > threshold queries/second:
→ Temporarily rate limit or block
Controllare il tuo attuale solvente
Windowsipconfig /all | findstr "DNS Servers"
macOS/Linux
cat /etc/resolv.conf
Strumenti online: browserleaks.com/dns mostra quale risolve il tuo browser utilizza
Proposta di risoluzione
dig example.com
# Look at "SERVER:" in output
Resolvere le prestazioni
Materassini di sicurezza
Risolvere il tempo di risposta impatti prestazioni web:
| Risolvere | Lattice medio | Impatto |
|---|---|---|
| ISP locale | 10-30ms | Veloce, ma varia |
| Cloudflare | 10-20ms | Consistently fast (anycast) |
| Google Google | 20-40ms | Affidabile, globale |
| Risolvere lentamente | 100-200ms | Ritardo di carico pagina visibile |
Routing Anycast
I principali risolutori usano qualsiasicast per bassa latenza:
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
Misurare le prestazioni del solvente
Utilizzando Namebench (test automatizzato):# Tests multiple resolvers with your actual query patterns
namebench
Prove pratiche
# 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
Questioni comuni del risolutore
Avvelenamento DNS
Gli aggressori iniettano falsi record nella cache del risolutore:
Mitigazione.
- Utilizzare i risolutori con la convalida DNSSEC
- Abilitare la randomizzazione della porta sorgente
- Utilizzare DoH/DoT per prevenire gli attacchi uomo-in-il-middle
Resolver Hijacking
ISP o malware reindirizzano query DNS:
Symptom: Le ricerche mostrano annunci ISP, reindirizzamenti inaspettati# Solution #
- Cambiamento del risolutore pubblico (1.1.1.1, 8.8.8.8)
- Utilizzare DoH/DoT per evitare interferenze ISP
- Controllare il malware
Cache di Stale
Resolver cache record obsoleti:
Symptom: Cambiamenti DNS non riflettenti# Solution #
- Attendere che TTL scada
- Utilizzare temporaneamente diversi risolutori
- Flush cache locale
Bloccaggio del solvente
Alcune reti bloccano i risolutori esterni:
Sintomo: Non può raggiungere 8.8.8.8, 1.1.1.1# Solution #
- Utilizzare DNS su HTTPS (più difficile da bloccare)
- Utilizzare il punto finale DoH del risolutore
Configurare un Risolvente Locale
Utilizzo di 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
Utilizzo di Pi-hole
Risolvetore DNS ad blocco di rete:
# 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
Migliori Pratiche
1.
Utilizzare risolutori pubblici rispettabili: Cloudflare, Google o Quad9 per affidabilità2. #Enable DoH/DoT # Crittografia domande per privacy e sicurezza
3.
Consider risolutore caratteristiche**: Scegliere in base alle esigenze di privacy, velocità o sicurezza4. *Monitor risolutore prestazioni * Test di latenza periodicamente
5. Ho dei risolutori di backup. Configurare DNS secondario per ridondanza
6. Utilizzare i risolutori DNSSEC-validating: Proteggere dall'avvelenamento della cache
7. # Sostenere le politiche del tuo risolutore # Alcuni contenuti filtranti, alcune query di log
8. Test dopo i cambiamenti Verificare che la risoluzione DNS funzioni correttamente
9. Scelta del risolutore del documento Nota perché hai scelto un determinato risolutore
10. Update risolv.conf accuratamente La configurazione non corretta rompe completamente DNS
Resolver vs Nameserver Authoritative
| Caratteristica | Risolvere | NS autorevole |
|---|---|---|
| Role | Risposte richieste dei clienti | Contiene record DNS effettivi |
| Recursione | Sì, query altri server | No, solo risposte per le proprie zone |
| Caching | Sì, risposte cache | No (dati autorevoli) |
| Usato da | Clienti, utenti finali | Risolvere durante la ricorsione |
| Esempi | 8.8.8.8, 1.1.1.1 | ns1.example.com |
I risolutori DNS sono i cava di lavoro del sistema DNS: la scelta di un risolutore rapido, sicuro e che rispetta la privacy influisce significativamente sulla tua esperienza di navigazione e sulla sicurezza online.