My domain( e.g. xyz.com) email is hosted on Gsuite. I am trying to set up DMARC for my domain. On the first day, I have received aggregate reports from multiple mail servers. in these reports, I found my domain using some other service(subscription, product rating).
These services sending mail to the customers with mail from my domain header with services domain(e.g. mail.service.com). so I have set up the dedicated domain for these services using SendGrid(CNAME). Also, I have created DKIM for my Gsuite domain and created the record in the domain panel.
Now is everything perfect but in the aggregate reports some records are failed to pass SPF validation but DKIM pass. Why DKIM passed or SPF failed?
Here are sample records
v=spf1 include:_spf.google.com ~all (main domain)
v=spf1 include:sendgrid.net ~all (email.xyz.com sendgrid)
v=spf1 ip4:149.72.201.23 ip4:149.72.27.244 *(multipal ip4 records)* -all (em1234.xyz.com sendgrid)
Below are the aggregate report's two records:
<record>
<row>
<source_ip>104.47.56.175</source_ip>
<count>1</count>
<policy_evaluated>
<disposition>none</disposition>
<dkim>pass</dkim>
<spf>fail</spf>
</policy_evaluated>
</row>
<identifiers>
<header_from>xyz.com</header_from>
</identifiers>
<auth_results>
<dkim>
<domain>xyz.com</domain>
<result>pass</result>
<selector>kl</selector>
</dkim>
<spf>
<domain>xyz.com</domain>
<result>softfail</result>
</spf>
</auth_results>
</record>
<record>
<row>
<source_ip>209.85.220.41</source_ip>
<count>1</count>
<policy_evaluated>
<disposition>none</disposition>
<dkim>pass</dkim>
<spf>fail</spf>
</policy_evaluated>
</row>
<identifiers>
<header_from>xyz.com</header_from>
</identifiers>
<auth_results>
<dkim>
<domain>xyz.com</domain>
<result>pass</result>
<selector>kl</selector>
</dkim>
<dkim>
<domain>sendgrid.info</domain>
<result>pass</result>
<selector>smtpapi</selector>
</dkim>
<spf>
<domain>gmail.com</domain>
<result>pass</result>
</spf>
</auth_results>
</record>