DNS: messaggi udp tcp dnssec ddns

📋 Obiettivi di apprendimento
Spiegare quando il DNS utilizza UDP e quando TCP sulla porta 53, motivando la scelta
Descrivere il meccanismo di trasferimento di zona e il flag TC (Truncated)
Spiegare cos’è il DNSSEC e come impatta sull’uso di TCP
Illustrare il funzionamento del DNS dinamico (DDNS) e un caso d’uso pratico con IP pubblico variabile
📄
Slides
slide complete con diagrammi

Messaggi DNS — UDP o TCP?

Il protocollo DNS utilizza un meccanismo di richiesta (query) e risposta (response) e può operare sia su UDP che su TCP, entrambi sulla porta 53. La scelta tra i due dipende dal tipo di operazione.

DNS su UDP — porta 53

Il caso più comune. UDP è un protocollo senza connessione, più veloce e con minore overhead: ideale per risposte rapide.

Usato per:
  • Risoluzione di record A, AAAA, MX, NS
  • Query frequenti e risposte di dimensioni ridotte
  • Interrogazioni quotidiane del browser
📌 Esempio

Il browser risolve www.example.com → richiesta DNS su UDP/53 → risposta con l’IP in pochi millisecondi.

DNS su TCP — porta 53

Usato in casi specifici che richiedono affidabilità o quando la risposta è troppo grande per UDP.

Usato per:
  • Trasferimento di zona (AXFR / IXFR)
  • Risposte DNS > 512 byte (flag TC impostato)
  • Query DNSSEC con firme crittografiche
📌 Esempio

Server DNS secondario che si sincronizza con il primario (AXFR) — dati voluminosi → TCP/53.

Il flag TC (Truncated)

Se una risposta DNS supera la dimensione massima consentita da UDP — tradizionalmente 512 byte, estendibili con EDNS0 fino a ~4096 byte — il server imposta il flag TC (Truncated) nella risposta, segnalando al client di ripetere la stessa query usando TCP.

Sequenza con risposta troncata:
1. Client → Server: query DNS (UDP/53)
2. Server → Client: risposta con flag TC=1 (troppo grande per UDP)
3. Client → Server: stessa query (TCP/53)
4. Server → Client: risposta completa via TCP ✓

Trasferimento di zona (AXFR / IXFR)

Il trasferimento di zona DNS avviene quando un server DNS secondario deve sincronizzarsi con il server primario, replicando l’intero contenuto della zona DNS. Questa operazione coinvolge grandi quantità di dati e richiede affidabilità e controllo degli errori — per questo usa TCP/53.

AXFR — Full Zone Transfer

Trasferisce l’intera zona DNS dal server primario al secondario. Usato per la prima sincronizzazione o dopo modifiche significative.

IXFR — Incremental Zone Transfer

Trasferisce solo le modifiche avvenute dalla precedente sincronizzazione. Più efficiente di AXFR per aggiornamenti frequenti.

⚠️ Sicurezza — attenzione

Il trasferimento di zona espone l’intero contenuto del DNS di un dominio. Va limitato esclusivamente agli IP dei server secondari autorizzati. Un AXFR aperto a chiunque è una grave vulnerabilità sfruttata nel footprinting e nel ricognizione OSINT.

DNSSEC

Con l’introduzione di DNSSEC (DNS Security Extensions), le risposte DNS includono firme digitali crittografiche che permettono al client di verificare l’autenticità e l’integrità dei dati ricevuti. Questo protegge da attacchi come il DNS cache poisoning.

Poiché le firme DNSSEC aumentano considerevolmente la dimensione delle risposte, il passaggio da UDP a TCP/53 diventa molto più frequente. DNSSEC non cifra il traffico DNS (per quello esiste DNS over HTTPS — DoH), ma garantisce che i dati non siano stati alterati.

DNS Dinamico (DDNS)

Il DNS dinamico (DDNS) è un meccanismo che aggiorna automaticamente i record DNS quando l’indirizzo IP pubblico cambia. È indispensabile nelle connessioni domestiche e SOHO, dove il provider assegna IP dinamici che variano periodicamente.

Caso d’uso tipico

📌 Scenario — accesso remoto a dispositivi IoT domestici
1

Vuoi accedere dall’esterno a una telecamera IP o a un NAS domestico

2

Il tuo provider Internet cambia periodicamente il tuo IP pubblico — l’accesso diretto diventa impossibile

3

Un client DDNS installato sul router rileva automaticamente il cambio di IP

4

Il client aggiorna il record DNS associato al nome scelto: miarete.ddns.net

5

Tu accedi sempre con lo stesso nome — indipendentemente dall’IP corrente ✓

Provider DDNS più utilizzati

No-IP
noip.com — piano gratuito disponibile, molto diffuso
DuckDNS
duckdns.org — gratuito, open source, integrato in molti router
Router integrato
Molti router moderni includono client DDNS nel firmware
📌 Riepilogo — Punti chiave
  • DNS usa UDP/53 per le query standard (veloce, leggero); usa TCP/53 per trasferimenti di zona e risposte grandi
  • Il flag TC (Truncated) segnala che la risposta è stata troncata e va ripetuta via TCP
  • DNSSEC aggiunge firme digitali per autenticare le risposte DNS, aumentandone la dimensione → più uso di TCP
  • DDNS aggiorna automaticamente il record DNS quando l’IP pubblico cambia — fondamentale per accedere a reti domestiche dall’esterno

Lascia un commento