Le spf sert a indiquer si l'IP utilisée est autorisée a envoyer des messages pour ce domaine.
Le mx est utilisé dans l'autre sens pour savoir a qui relayer des messages destinés a ce domaine.
Les serveurs mx peuvent aussi être des serveurs d'envoi pour ce domaine mais ca n'a rien d'obligatoire et c'est pas forcement le cas.
Un SFP bien construit ne va indiquer que les serveurs qui sont vraiment autorisés et qui envoient vraiment des messages, et pas "potentiellement" ou "pour se simplifier la vie".
v=spf1 a mx ip6:2a01:6e00:10:410::2 -all
ca test dans l'ordre:
- les enregistrements 'A' donc pour "lafibre.info" -> 46.227.16.8
- les enregistrements 'mx' donc pour "lafibre.info" :
mxb.ovh.net -> 213.186.33.29
mx2.ovh.net -> 213.186.33.45
mx1.ovh.net -> 178.32.228.222
- l'ipv6 "2a01:6e00:10:410::2"
- tout autre IP (-all) serait marquée 'fail' et va être rejetée
Donc ce sfp va autoriser des messages "@lafibre.info" venant uniquement des sources suivantes:
46.227.16.8
213.186.33.29
213.186.33.45
178.32.228.222
2a01:6e00:10:410::2
Si certaines de ces IPs n'envoient jamais de messages pour ce domaine il est plus sur de ne pas les inclure (notamment les mx vu qu'ils sont partagés avec d'autres domaines, s'ils sont mal sécurisés un tiers pourrait les utiliser pour envoyer des messages venant de @lafibre.info. ).
par ailleurs le mécanisme 'a' implique aussi IPv6 (rfc7208,section 5 et
5.3).
When any mechanism fetches host addresses to compare with <ip>, when
<ip> is an IPv4, "A" records are fetched; when <ip> is an IPv6
address, "AAAA" records are fetched
Tu peux donc créer une entrée AAAA pour lafibre.info plutot que mettre l'ipv6 en 'dur' dans le spf: c'est plus pratique d'avoir l'ipv6 a un seul endroit dans le DNS: dans le champ AAAA.
Dans ce cas 'a' (dans le spf) va indiquer a la fois "46.227.16.8" et "2a01:6e00:10:410::2"
A l'usage par contre c'est plus simple et 'future proof' de créer des entrées DNS spécifiques pour le(s) serveur(s) d'envoi (avec champs A et optionnellement AAAA) et de ne mettre qu'eux dans le sfp.
par exemple:
v=spf1 a:mailers.lafibre.info -all
et 2 entrées DNS:
mailers.lafibre.info. A 46.227.16.8
mailers.lafibre.info. AAAA 2a01:6e00:10:410::2
apres tout ton serveur 'lafibre.info' n'est pas forcement pret en ipv6 (pour le web) et ne sera pas forcement toujours celui qui enverras des mails dans le future (principe d' "un role par entrée DNS")