L’enregistrement SPF (Sender Policy Framework) est un mécanisme essentiel pour la délivrabilité email. Il permet aux serveurs de réception de vérifier si un expéditeur est autorisé à envoyer des emails pour un domaine donné. Cependant, mal configuré, il peut poser de sérieux problèmes. C’est là qu’intervient le SPF Flattening, une technique méconnue mais redoutablement efficace.
Qu’est-ce qu’un enregistrement SPF classique ?
Un enregistrement SPF est une entrée DNS de type TXT qui liste les serveurs (IP ou noms de domaine) autorisés à envoyer des emails pour un domaine. Par exemple :
v=spf1 include:_spf.google.com include:mail.zendesk.com ~all
Chaque include appelle à son tour un autre enregistrement DNS, pouvant lui-même contenir plusieurs IP ou d'autres includes. Cela augmente le nombre de requêtes DNS nécessaires lors de la vérification SPF.
Le RFC de SPF impose une limite de 10 requêtes DNS pour éviter les abus. Si cette limite est dépassée, la vérification SPF échoue, ce qui peut entraîner des rejets d’emails ou des livraisons en spam.
Qu’est-ce que le SPF Flattening ?
Le SPF Flattening, ou “aplatissage SPF”, consiste à remplacer tous les include: et les noms de domaines par les IP correspondantes. Cela permet de :
Réduire le nombre de requêtes DNS (souvent à 0).
Garder un contrôle total sur la structure SPF.
Éviter les échecs SPF dus au dépassement de la limite de 10 requêtes.

Exemple avant/après
Avant Flattening :
v=spf1 include:_spf.google.com include:mail.zendesk.com ~all
Après Flattening :
v=spf1 ip4:64.233.160.0/19 ip4:172.217.0.0/16 ip4:192.0.2.0/24 ~all
⚠️ Attention : les IP des services peuvent changer. Un enregistrement aplati doit donc être mis à jour régulièrement.
Avantages du SPF Flattening
✅ Aucun risque de dépassement de la limite de 10 requêtes DNS
✅ Plus rapide à résoudre pour les serveurs de réception
✅ Plus fiable pour les configurations complexes
✅ Indispensable si plusieurs services tiers (Sendinblue, Mailchimp, Google, etc.) sont utilisés
Inconvénients et précautions
❌ Nécessite une mise à jour manuelle ou automatique régulière (les IP changent)
❌ Allonge parfois l’enregistrement SPF, risquant de dépasser la limite de 255 caractères par chaîne DNS TXT
Comment faire du SPF Flattening ?
Manuellement : Résoudre chaque include avec dig ou nslookup, puis extraire les IP.
Automatiquement : Utiliser un outil comme :
SPF-Record.com
Dmarcian SPF Flattening Tool
Outils en ligne de commande (spf-tools, postfix-policyd-spf-python)
Le SPF Flattening est une pratique simple et puissante pour améliorer la délivrabilité de vos emails. Si vous utilisez plusieurs services d’emailing, c’est presque indispensable.

