La plupart des vérificateurs SPF ne regardent que le qualificatif final (-all). Celui-ci compte aussi les lookups DNS réels déclenchés par l'enregistrement, pour détecter le dépassement de la limite de 10 (RFC 7208) — la cause la plus fréquente et la plus silencieuse d'échec SPF total.
include:.include: et redirect= de manière récursive, comme le ferait un vrai serveur mail au moment de la vérification.Un enregistrement SPF n'est pas juste une liste statique d'adresses IP autorisées : chaque mécanisme include:, a, mx, ptr, exists et redirect= déclenche une requête DNS au moment où un serveur mail vérifie un email entrant. La RFC 7208 plafonne ce total à 10 lookups — au-delà, l'enregistrement entier devient un permerror. La plupart des serveurs mail traitent alors le domaine comme s'il n'avait aucun SPF, silencieusement, sans qu'aucune alerte n'apparaisse dans la console d'administration du domaine.
Une entreprise ajoute au fil des années Google Workspace (include:_spf.google.com, qui lui-même inclut plusieurs sous-domaines), un outil d'emailing marketing, un CRM, un service de facturation, un outil de support client — chacun demandant d'ajouter son propre include:. Individuellement, chaque ajout semble anodin. Collectivement, le total dépasse 10 sans qu'aucune étape ne l'ait signalé, et la protection SPF s'effondre en silence.
Remplacer les include: par des ip4:/ip6: directs quand les plages IP du fournisseur sont documentées et stables, retirer les fournisseurs d'emails qui ne sont plus utilisés, et envisager l'aplatissement SPF (SPF flattening) si le nombre de fournisseurs légitimes reste structurellement élevé.
Parce que le dépassement rend l'enregistrement SPF entier invalide (permerror selon la RFC 7208), et beaucoup de serveurs mail traitent alors le domaine comme s'il n'avait aucune protection SPF du tout, silencieusement — sans erreur visible dans une interface de gestion habituelle.
include, a, mx, ptr, exists et redirect comptent chacun pour un lookup DNS (et davantage si un include imbriqué en ajoute d'autres). ip4, ip6 et all ne comptent pas : ce sont des valeurs statiques, pas des lookups.
Remplacer les include: par des ip4:/ip6: directs quand les IP sont stables, supprimer les fournisseurs d'emails inutilisés de l'enregistrement, et utiliser l'aplatissement SPF (SPF flattening) proposé par certains services DNS si le nombre de fournisseurs légitimes reste élevé.