SPF record sintassi avanzata (qualifiers, mechanism)

Introduzione

Il record SPF (Sender Policy Framework) protegge un dominio dallo spoofing email autorizzando IP specifici a inviare in suo nome. In questa guida approfondiamo sintassi avanzata, qualifier e mechanism.

Anatomia di un record SPF

Un SPF è un record TXT che inizia con v=spf1:

v=spf1 ip4:1.2.3.4 include:_spf.google.com -all

Si compone di mechanism e qualifier.

Qualifier

SimboloSignificatoComportamento
+PassEmail accettata (default se omesso)
-FailEmail rifiutata
~SoftFailEmail accettata ma marcata sospetta
?NeutralNessuna politica espressa

Mechanism principali

all

Match tutto. Usato come ultima regola: -all blocca, ~all softfail, +all accetta tutto (rischioso).

ip4 / ip6

v=spf1 ip4:192.168.1.0/24 ip6:2001:db8::/32 -all

Autorizza intervalli IP specifici.

a

Autorizza l'IP del record A del dominio:

v=spf1 a -all
v=spf1 a:mail.esempio.it -all

mx

Autorizza gli IP dei record MX:

v=spf1 mx -all
v=spf1 mx:mail.esempio.it -all

include

Inserisce SPF di un'altro dominio (es. Google, Microsoft 365):

v=spf1 include:_spf.google.com -all

exists

Check esistenza record A. Utile per macro:

v=spf1 exists:%{ir}.spf.dominio.it -all

ptr

Sconsigliato (deprecato per performance): autorizza in base al PTR del mittente.

Macro

SPF supporta macro che vengono espanse al volo:

  • %{i}: IP del mittente.
  • %{s}: indirizzo mittente.
  • %{d}: dominio mittente.
  • %{h}: hostname HELO.
  • %{ir}: IP invertito.

Limite 10 lookup DNS

SPF ha un limite di 10 lookup DNS totali (include, a, mx, ptr, exists). Superarlo causa PermError. Tieni il record breve e usa flatten se necessario.

Esempi avanzati

Multi-include

v=spf1 include:_spf.google.com include:spf.protection.outlook.com ip4:185.220.100.0/24 -all

SoftFail durante migrazione

v=spf1 include:_spf.google.com ~all

Permette osservazione senza bloccare email mentre si testano i flussi.

Sub-domain delegate

Per delegare SPF di un sotto-dominio:

marketing.esempio.it. IN TXT "v=spf1 redirect=_spf.tools.com"

Best practice

  • Inizia con ~all per testing, passa a -all dopo verifica.
  • Monitora con report DMARC.
  • Riduci include innecessari per stare sotto 10 lookup.
  • Aggiorna quando cambi mail provider.

Hai bisogno di aiuto?

Se vuoi gestione DNS affidata a G Tech Group, scrivici tramite il modulo di contatto.

Hai trovato utile quest'articolo?