What is DMARC?


DMARC, which stands for “Domain-based Message Authentication, Reporting & Conformance”, is an email authentication protocol. It builds on the widely deployed SPF and DKIM protocols, adding a reporting function that allows senders and receivers to improve and monitor protection of the domain from fraudulent email.

This means that senders will experience consistent authentication results for their messages at AOL, Gmail, Hotmail, Yahoo! and any other email receiver implementing DMARC.

If you utilize a form on your website which has visitors send an email using a 'FROM' field in which they input their email addresses, there is a chance that the email will fail due to authentication if DMARC is being used by the @domain.com address. As of this writing, this only affects @yahoo.com addresses, however this may change in the future.

Note: Emails which are rejected due to the DMARC policy will normally indicate as much within the error itself. An example of an email rejected by Gmail can be seen below:

** info@xxxxx.co.uk R=lookuphost T=remote_smtp H=aspmx.l.google.com [74.125.133.27] X=TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128: SMTP error from remote mail server after end of data: 550-5.7.1 Unauthenticated email from xxxxxx.co.uk is not accepted due to\n550-5.7.1 domain's DMARC policy. Please contact administrator of envyhardwoods.\n550-5.7.1 co.uk domain if this was a legitimate mail. Please visit\n550-5.7.1  https://support.google.com/mail/answer/2451690 to learn about DMARC\n550 5.7.1 initiative. u6si28759615wje.60 - gsmtp

How can I do to fix this!

I'll recommend you update the 'FROM' field within your form to use an email address of @yourdomain.com. Additionally, the 'REPLY-TO' setting can be used with any DMARC compliant address and will successfully send emails without rejection such as  @gmail.com, @hotmail.com, @yahoo.com,  or @aol.com.

An example can be seen in the following header:

$headers = 'From: user@yourdomain.com' . " " .
'Reply-To: user@gmail.com' . " " .
'X-Mailer: PHP/' . phpversion();

0 comments:

Post a Comment