Perché validare la sintassi SPF prima di pubblicare?
Un record SPF (Sender Policy Framework) malformato può avere conseguenze immediate: email rifiutate, autenticazione disabilitata o, peggio ancora, una falsa sensazione di sicurezza. La validazione sintattica rileva questi problemi prima che impattino la tua deliverability.
Tre casi d'uso principali:
- Nuovo SPF -> Valida la struttura prima della prima pubblicazione
- Modifica SPF -> Verifica che le modifiche non introducano errori
- Diagnosi deliverability -> Conferma che la sintassi non causa i rifiuti
Come usare il validatore in 3 passaggi
Passaggio 1: Copiare il record SPF
Recupera il tuo record da:
- La tua interfaccia DNS (Aruba, Cloudflare, Route 53, ecc.)
- Uno strumento di lookup DNS
- Direttamente dal tuo editor di testo se lo stai scrivendo
Formato atteso:
v=spf1 ip4:203.0.113.0/24 include:_spf.google.com -all
Passaggio 2: Incollare nel validatore
Incolla il record completo nel modulo sopra. Lo strumento analizza automaticamente:
- ✅ Struttura base (v=spf1)
- ✅ Meccanismi (ip4, ip6, mx, a, include, exists, ptr)
- ✅ Modificatori (redirect, exp)
- ✅ Qualificatori (+, -, ~, ?)
- ✅ Direttiva finale (all)
Passaggio 3: Correggere e pubblicare
Il report mostra:
- Errori (rosso): Problemi bloccanti da correggere
- Avvisi (arancione): Rischi di sicurezza o best practice
- Informazioni (blu): Dettagli sulla struttura analizzata
Correggi gli errori, poi pubblica nel tuo DNS.
Cos'è la sintassi SPF?
Un record SPF è una stringa di caratteri pubblicata in un record DNS TXT. La sua sintassi segue una struttura precisa definita dalla RFC 7208:
v=spf1 [qualificatore]meccanismo [modificatore] ... direttiva_finale
Componenti:
| Elemento | Esempi | Ruolo |
|---|---|---|
| Versione | v=spf1 | Obbligatorio, sempre primo |
| Qualificatore | +, -, ~, ? | Determina l'azione (pass, fail, softfail, neutral) |
| Meccanismo | ip4:, mx, include:, a: | Definisce i mittenti autorizzati |
| Modificatore | redirect=, exp= | Opzioni aggiuntive |
| Direttiva finale | -all, ~all, ?all | Azione predefinita per le non corrispondenze |
Cosa analizza esattamente il validatore?
Errori di sintassi
| Codice errore | Descrizione | Impatto |
|---|---|---|
missing_version | Mancante v=spf1 | SPF ignorato (permerror) |
unknown_mechanism | Meccanismo non riconosciuto | SPF non valido |
mechanism_missing_value | include: senza dominio | SPF non valido |
mechanism_invalid_value | IP o CIDR malformato | SPF non valido |
duplicate_modifier | Due redirect= | SPF non valido |
multiple_all | Multiple direttive all | SPF non valido |
Avvisi di sicurezza
| Codice | Descrizione | Rischio |
|---|---|---|
weak_qualifier | ?all (neutral) | Nessuna protezione |
permissive_all | +all | Autorizza tutti |
softfail_all | ~all senza transizione a -all | Protezione parziale |
Limiti DNS
| Codice | Descrizione | Limite RFC |
|---|---|---|
lookup_limit_exceeded | Più di 10 lookup DNS | 10 max |
void_lookup_limit_exceeded | Troppe risposte vuote | 2 max |
lookup_cycle | Ciclo di riferimento | Vietato |
Casi d'uso concreti
Caso 1: Nuovo dominio, primo SPF
Situazione: Stai configurando l'email per captaindns.com con Google Workspace.
Azione: Valida prima di pubblicare:
v=spf1 include:_spf.google.com -all
Risultato atteso:
- ✅ Sintassi valida
- ✅ 1 lookup DNS (sotto il limite di 10)
- ✅ Direttiva finale rigorosa (-all)
Caso 2: Aggiungere un nuovo servizio di marketing
Situazione: Stai aggiungendo Mailchimp al tuo SPF esistente.
SPF attuale:
v=spf1 include:_spf.google.com -all
SPF modificato:
v=spf1 include:_spf.google.com include:servers.mcsv.net -all
Validazione: Conferma che l'aggiunta non superi 10 lookup e che la sintassi rimanga valida.
Caso 3: "permerror" in produzione
Sintomo: Le tue email falliscono con SPF permerror.
Diagnosi: Incolla il record nel validatore.
Errore rilevato:
v=spf1 ip4:192.168.1.1 include: -all
Errore: mechanism_missing_value - include: senza dominio.
Correzione:
v=spf1 ip4:192.168.1.1 include:_spf.captaindns.com -all
Caso 4: Troppi lookup DNS
Sintomo: Il validatore mostra lookup_limit_exceeded.
Diagnosi: Il tuo SPF ha troppi include:
v=spf1 include:_spf.google.com include:spf.protection.outlook.com include:amazonses.com include:_spf.salesforce.com include:sendgrid.net include:mailchimp.com -all
Soluzioni:
- Sostituisci alcuni include con ip4/ip6 diretti
- Usa un sottodominio dedicato (es:
marketing.captaindns.com) - Rimuovi i servizi non utilizzati
- Usa il nostro SPF Flattener per risolvere automaticamente gli include in IP
FAQ - Domande frequenti
D: Cos'è un record SPF?
R: SPF (Sender Policy Framework) è un record DNS TXT che elenca i server autorizzati a inviare email per il tuo dominio. Formato: v=spf1 seguito da meccanismi (ip4, mx, include) e una direttiva finale (-all, ~all).
D: Perché validare la sintassi SPF prima di pubblicare?
R: Un record SPF malformato genera un errore permanente (permerror) che può rifiutare tutte le tue email o disabilitare completamente la verifica SPF. Validare prima della pubblicazione previene interruzioni del servizio.
D: Qual è il limite di lookup DNS per SPF?
R: La RFC 7208 limita la valutazione SPF a 10 lookup DNS. Ogni include, a, mx, ptr ed exists conta. Superare questo limite genera un permerror e può far fallire l'autenticazione.
D: Cosa significa il qualificatore -all vs ~all?
R:
-all(hard fail): Rifiuta le email non autorizzate~all(soft fail): Le marca come sospette ma le accetta
Inizia con ~all per i test, poi passa a -all in produzione per la massima protezione.
D: Come correggo l'errore "too many DNS lookups"?
R:
- Sostituisci gli include con
ip4/ip6diretti - Rimuovi i meccanismi non utilizzati
- Usa sottodomini con il proprio SPF
- Evita
ptr(deprecato e costoso in lookup)
D: Posso avere più record SPF?
R: No. La RFC richiede un singolo record SPF per dominio. Più record generano un permerror. Unisci le tue policy in un unico TXT che inizi con v=spf1.
D: Lo strumento valida i domini degli include?
R: Il validatore verifica la sintassi dei domini referenziati da include e redirect. Per un'analisi completa con risoluzione DNS e conteggio ricorsivo dei lookup, usa l'Ispettore SPF.
Strumenti complementari
| Strumento | Utilità |
|---|---|
| Ispettore SPF | Analizzare un SPF pubblicato con risoluzione DNS completa |
| SPF Flattener | Appiattire il tuo SPF per rispettare il limite di 10 DNS lookup |
| Ispettore DKIM | Validare la tua firma DKIM |
| Ispettore DMARC | Configurare e testare la tua policy DMARC |
| Analizzatore intestazioni email | Diagnosticare SPF/DKIM/DMARC su un'email ricevuta |
Risorse utili
- RFC 7208 - Sender Policy Framework (specifica ufficiale SPF)
- Google - Configurare SPF (guida Google Workspace)
- Microsoft - SPF per Microsoft 365 (guida Outlook/M365)