Vous devez suivre la syntaxe définie dans la spécification SPF pour que votre SPF record fonctionne correctement. Si vous ne suivez pas ces règles de syntaxe, votre SPF record échouera au contrôle de l'authentification.
Erreurs de syntaxe courantes
Voici quelques erreurs de syntaxe courantes dans le SPF record :
- Vérifiez qu'il n'y a pas d'espaces supplémentaires avant le début de la chaîne (v=spf1).
- Vérifiez qu'il n'y a pas d'espaces supplémentaires après la fin de la chaîne (~all).
- Vérifiez l'orthographe des mécanismes tels que « include », « ip4 », etc.
- Vérifiez l'orthographe de tous les domaines référencés.
- Supprimez les majuscules des mécanismes ip4 et ip6. (Il est recommandé de supprimer toutes les majuscules.)
- Supprimez les tirets supplémentaires avant le mécanisme d'échec total. Par exemple, remplacez --all par –all.
- Vérifiez qu'il n'y a aucune virgule et qu'il n'y a qu'une seule espace entre chaque mécanisme.
- Vérifiez que votre chaîne commence par le type de TXT record qui la définit. Par exemple, assurez-vous qu'elle commence par v=spf1 au lieu de commencer par des mécanismes différents, tels que ip4.
Si votre SPF record ne contient aucune de ces erreurs mais que le problème persiste, essayez de faire un copier-coller de la syntaxe dans un éditeur de texte sans mise en forme, tel que Notepad. Il arrive que des problèmes de mise en forme non intentionnels se produisent lorsque la syntaxe est copiée et collée directement de l'email au DNS. Ceci permet de vérifier qu'il n'y a pas de mécanismes de mise en forme rares ou de caractères uniques qui ne sont pas reconnaissables par le serveur de l'opérateur de messagerie.
Exemples d'erreurs de syntaxe SPF courantes :
- Absence de type d'autorisation (ce que l'on appelle un qualificateur) avec le mécanisme all (~all, -all) : "v=spf1 a mx ip4:192.168.0.1 all"
- Type d'autorisation supplémentaire (ce que l'on appelle un qualificateur) avec le mécanisme all (~all, -all) : "v=spf1 a mx ip4:192.168.0.1 --all"
- Version incorrecte (spf1) : "v=spf a mx ip4:192.168.0.1 -all"
- Ajout d'une espace dans le mécanisme ip4 : "v=spf1 a mx ip 4:192.168.0.1 -all"
- Adresse IP incomplète : "v=spf1 a mx ip4:192.168.0. -all"
- Mécanisme d'inclusion mal orthographié : "v=spf1 a mx ip4:192.168.0.1 incude:example.com -all"
Exemple de SPF record
Voici un exemple de syntaxe correcte pour le SPF :
v=spf1 a mx ip4:192.168.0.1/16 include:example.com include:sendgrid.net ~all
Here’s a link to the SPF specification mentioned above: RFC7208.