Keith's answer I think could be helpful to some but I dug a little deeper and found out some additional details that helped me understand that my current SPF setup is okay and that changing to -all
shouldn't affect my Amazon SES and Drip emails. Details...
DMARC report helpfully shows passing SPF
I have setup some DMARC reporting through a service called mailercheck.com that takes my DMARC xml reports and summarizes them in an easy-to-understand web report that shows which sending IPs have passing SPF and DKIM.
The top level report shows that sending IPs for my drip.herobullion.com CNAME and my *.us-west-2.amazonses.com CNAMES have all passing SPF:
And the drill down on one of the Amazon SES sending IPS gives more detail:
And the drill down on the Drip sending IP gives similar detail:
So it appears that the SPF is passing due to the fact that my CNAME records have some SPF record associated...
CNAME DNS entries make it clearer
So above it is established that for my Drip provider the CNAME points to SendGrid's host, u19706134.wl135.sendgrid.net, so when I run dig txt u19706134.wl135.sendgrid.net
to inspect TXT records for that domain I get this result:
v=spf1 ip4:167.89.40.107 ip4:167.89.40.148 ip4:167.89.79.110 ip4:167.89.79.139 ip4:167.89.93.30 ip4:168.245.74.76 ip4:168.245.95.128 ip4:168.245.99.76 -all
So, indeed these emails from my Drip provider are passing SPF because they are being sent from one of these IPS. Same story on the Amazon SES side.
But why isn't my primary domain's SPF being used by these providers?
The email's smtp.mailfrom
tag is used to determine which domain name to check SPF
When I inspect one of my Amazon SES email's headers I see that the smtp.mailfrom
tag specifies the sender like this
smtp.mailfrom=01010188da94f0b8-5f5e5be2-0842-4c4e-89ab-8600a4bfbc5b-000000@us-west-2.amazonses.com
and furthermore, a header says
spf=pass (google.com: domain of 01010188da94f0b8-5f5e5be2-0842-4c4e-89ab-8600a4bfbc5b-000000@us-west-2.amazonses.com designates 54.240.27.22 as permitted sender)
Similarly, my drip emails have an smtp.mailfrom="bounces+19706134-e9bb-shaun+test3=herobullion.com@drip.herobullion.com"
So even though the email has other headers such as From: Our Company <[email protected]>
, the email provider will use the smtp.mailfrom
tag to determine which domain to check SPF against This article explains this in a bit more detail https://www.valimail.com/blog/understanding-email-authentication-headers
With that I am relatively certain that changing my main domain's SPF from ~all
to -all
will not impact emails coming from these other providers.