Infrastruttura

Il MINIMUM del SOA non è il TTL dei record

Il 23 ottobre 2026 RFC 2308 lascia al MINIMUM del SOA il TTL delle risposte negative, non il TTL dei record esistenti. Il valore in risposta è il minimo tra MINIMUM e TTL del SOA. Il default dei record senza TTL è $TTL.

5 min di lettura

Il MINIMUM del SOA non è il TTL dei record
In questa guida (5)
  1. 1Tre significati, uno solo resta
  2. 2Che cosa entra in cache
  3. 3NXDOMAIN e NODATA non usano la stessa chiave
  4. 4Errori da evitare
  5. 5In sintesi

Il 23 ottobre 2026 il campo MINIMUM del record SOA non è il TTL dei record che esistono. RFC 2308, «Negative Caching of DNS Queries (DNS NCACHE)», marzo 1998, Standards Track, gli toglie quel significato e gliene lascia un altro: quanto a lungo si può tenere in cache una risposta negativa. Non è un CNAME sull’apice e non è Happy Eyeballs. Non ho interrogato una zona viva per misurare un numero.

In breve: la sezione 4 elenca tre usi storici del MINIMUM. Il primo, TTL minimo di tutti i record della zona, è deprecato. Il secondo, TTL di default per i record senza TTL esplicito, non deve più uscire da quel campo: in zona si usa la direttiva $TTL. Il terzo, TTL delle risposte negative, è il significato che la RFC definisce. Il valore effettivo, sezioni 3 e 5, è il minimo tra il campo MINIMUM e il TTL del SOA stesso.

Tre significati, uno solo resta

La sezione 4 dice che il campo MINIMUM del SOA è stato sovraccaricato di tre sensi: il TTL minimo di tutti gli RR della zona, il TTL di default degli RR che nel file di zona non avevano un TTL, e il TTL delle risposte negative. Il primo, scrive la RFC, era il significato originale definito, ma «has never in practice been used» ed è deprecato. Non è una licenza per abbassare a mano ogni record al numero scritto nel MINIMUM.

Il secondo vale solo sul server primario, prima che un trasferimento di zona renda esplicito ogni TTL. Dopo il trasferimento non si distingue più un TTL scritto a mano da uno ereditato. Se un server accetta record senza TTL, la RFC chiede un meccanismo che non sia il MINIMUM. Il formato del master file, esteso in quella sezione, è la direttiva $TTL <TTL>. I record che vengono dopo, e che non hanno un TTL proprio, prendono quel valore. I SIG senza TTL esplicito sono un caso a parte, rinviato a RFC 2065 sezione 4.5: non li ho riletti oggi e non ne faccio una regola nuova.

Il senso che resta, «the new defined meaning of the SOA minimum field», è il TTL da usare per le risposte negative.

Che cosa entra in cache

DomandaCosa dice RFC 2308, marzo 1998
Il MINIMUM è il pavimento di ogni record?No. Quel senso è deprecato in sezione 4.
Il MINIMUM riempie i record senza TTL?Non più. Per quello c’è $TTL. Il MINIMUM non è quel meccanismo.
Chi mette il SOA nella risposta negativa?Il server autorevole per la zona. Sezione 3: deve metterlo nella authority sia per NXDOMAIN sia quando il nome c’è ma il tipo no.
Quale TTL ha quel SOA in risposta?Il minimo tra il campo MINIMUM e il TTL del SOA. Sezioni 3 e 5.
Quando la cache negativa scade?Il TTL scende come per una risposta normale. A zero, sezione 5, la risposta negativa in cache non si usa più.
E se il SOA non c’è?Sezione 5: una risposta negativa senza SOA non dovrebbe essere messa in cache. Manca il modo di impedire un loop.

La sezione 3 aggiunge un vincolo che oggi non approfondisco: se la zona è firmata secondo RFC 2065, al SOA vanno aggiunti i NXT e i SIG appropriati. È DNSSEC del 1996, non la forma attuale. Non ho aperto RFC 4034 e non descrivo una catena di fiducia.

NXDOMAIN e NODATA non usano la stessa chiave

NODATA, nel lessico della sezione 1, non è un RCODE vero. Indica che il nome esiste, per quella classe, ma non c’è il tipo chiesto. NXDOMAIN è il Name Error. La sezione 5 chiede di conservare un NXDOMAIN in modo da ripropporlo per la stessa coppia QNAME e QCLASS. Un NODATA si ripropone solo per la stessa tripla QNAME, QTYPE e QCLASS. Un «questo nome non esiste» non è un «questo nome non ha il MX». Metterli nello stesso cassetto è un errore di cache, non un dettaglio del MINIMUM.

La stessa sezione avverte che, senza un TTL che scende, due server che si puntano come forwarder possono rigirarsi la risposta negativa e riazzerarne la vita. Il conto alla rovescia serve a spezzare quel giro. Non è un failover di indirizzi IP: quello è un altro meccanismo, e Happy Eyeballs non legge il SOA.

Errori da evitare

  • Abbassare il MINIMUM per «far scadere prima il sito» e credere di aver cambiato il TTL degli A record. La RFC ha tolto al campo quel potere.

  • Omettere $TTL e aspettarsi che il MINIMUM riempia i record nuovi. La sezione 4 dice di non usare il MINIMUM per quello.

  • Cachare un NXDOMAIN arrivato senza SOA. La sezione 5 dice che non si dovrebbe.

  • Rispondere a una query MX con un NODATA salvato per una query A, o il contrario. La chiave include il QTYPE.

  • Confondere questo TTL con il ritardo di Happy Eyeballs o con il divieto di CNAME sull’apice. Sono altre due pagine, e altri due testi.

In sintesi

RFC 2308, marzo 1998, lascia al campo MINIMUM del SOA un solo significato definito: il TTL delle risposte negative, poi preso al minimo insieme al TTL del record SOA. Il vecchio ruolo di TTL minimo di zona è deprecato. Il TTL di default dei record senza durata sta nella direttiva $TTL, non in quel campo. NXDOMAIN si conserva per nome e classe, NODATA per nome, tipo e classe, e una negativa senza SOA non si dovrebbe cachare. Non ho misurato una zona di produzione. Il CNAME sull’apice e Happy Eyeballs restano altri problemi.

Foto di copertina: BalticServers.com, sala macchine, Wikimedia Commons, CC BY-SA 3.0. È una sala server, non un record SOA e non un campo MINIMUM.

Domande frequenti

No. RFC 2308, sezione 4, marzo 1998, depreca quel significato. Dice che in pratica non è stato usato.
Non si prende dal MINIMUM. La stessa sezione introduce la direttiva $TTL. Il MINIMUM non è quel meccanismo.
Il server autorevole mette il SOA nella authority. Il TTL di quel record è il minimo tra il campo MINIMUM e il TTL del SOA. A zero la cache negativa non si usa più.
No. Sezione 5: NXDOMAIN per la coppia QNAME e QCLASS. NODATA per QNAME, QTYPE e QCLASS. Un nome assente non è un tipo assente.
No. Sono altri due meccanismi, già trattati a parte. Qui non ho interrogato una zona viva.

Potrebbe interessarti anche...

Hai bisogno di scegliere una webagency per il tuo progetto?

Abbiamo la soluzione giusta

Parliamone
  • Consulenza specializzata
  • Soluzioni su misura
  • Risultati concreti

Tecnologialiberaper tutti

Hai bisogno d'aiuto?

Parla con noi. Il nostro supporto è attivo tutti i giorni dalle 9 alle 18

+390835239514 Chiamaci

Crea il tuo eCommerce

Creiamo eCommerce su misura senza farti spendere un patrimonio

info@roxxoitalia.com Scopri il nostro CMS

Crea il tuo sito web

Siti web già pronti per andare online. Vuoi saperne di più? Contattaci

info@roxxoitalia.com Scrivici