Qu'est-ce qu'un enregistrement SPF ?
Un enregistrement SPF est une chaîne de texte qui liste les serveurs autorisés à envoyer des e-mails au nom de votre domaine. Il commence toujours par "v=spf1" et est composé de divers mécanismes (ex: "a", "mx", "ip4", "include") qui définissent les sources d'e-mail valides. Chaque mécanisme peut être préfixé par un qualificatif (+, -, ~, ?) pour indiquer comment les e-mails provenant de sources non autorisées doivent être traités.
Signification des qualificatifs :
- + : Pass - signifie que l'adresse IP du serveur émetteur est autorisée s'il y a correspondance avec le mécanisme SPF.
- - : Fail - l'adresse IP du serveur émetteur n'est pas autorisée.
- ~ : Softfail - L'adresse IP n'est pas autorisée, mais l'e-mail ne doit pas être rejeté.
- ? : Neutral - L'adresse IP n'est pas autorisée, mais la politique n'est pas définie.
- (Aucun) : Si aucun qualificatif n'est spécifié, on considère qu'on a "+ : Pass" .
Nombre de lookups SPF :
Explication de la limite de 10 lookups DNS :
Chaque fois qu'une directive "include:", "a:", "mx:", ou "exists:" nécessite une résolution DNS, cela compte comme un lookup.
La spécification SPF (RFC 7208) limite le nombre de "lookups DNS" à 10 pour empêcher les enregistrements SPF de causer des problèmes de performance en forçant les serveurs de messagerie à effectuer de nombreuses requêtes DNS. Dépasser cette limite peut entraîner l'échec de la vérification SPF, même si les adresses IP sont autorisées.
Exemple concret :
Supposons que le domaine exemple.com
ait l'enregistrement SPF suivant :
v=spf1 include:domaine1.com include:domaine2.com -all
Et que :
domaine1.com
ait un enregistrement SPF qui ne nécessite aucun lookup supplémentaire.domaine2.com
ait l'enregistrement SPF suivant :v=spf1 include:domaine3.com -all
.domaine3.com
ait un enregistrement SPF qui ne nécessite aucun lookup supplémentaire.
exemple.com
nécessitera 3 lookups DNS :
exemple.com
.domaine1.com
.domaine2.com
(qui à son tour déclenche un lookup pour domaine3.com
).include:
imbriqués.