MDaemon: Configuring ReverseDNS

Most ISP’s now perform reverse DNS (rDNS) lookups on mail servers connecting to them in order to check the authenticity of the mail server. If the rDNS lookup is not successful, they typically will not accept mail that mail server.

How rDNS checks are performed

A rDNS check would typically take the following steps:

1. Your MDaemon server will establish a SMTP connection with a remote mailserver in order to deliver an email to them.

2. The remote mail server will process the connection and perform a reverse DNS lookup on your public IP address to see if it resolves to a hostname.

3. The remote mail server will perform a lookup on that hostname to confirm it resolves back to the IP address that is connecting to it.

In many cases, if the checks in steps 2 and/or 3 fail the remote mail server will refuse to accept the email you are attempting to deliver to it.

Typically, if this happens you will see the remote mailserver indicating the reason for the rejection in the \MDaemon\Logs\MDaemon-YYYYMMDD-SMTP(out).log like the example below:

Mon 2020-07-17 11:44:52: <– 550-Connection from 82.69.248.134 rejected
Mon 2020-07-17 11:44:52: <– 550-Sending server has no reverse DNS (PTR record)

The receiving mailserver may also reject the email with this error if you have a generic rDNS entry. In these cases your public IP address will resolve to a generic hostname assigned by your ISP (For example: 134-248-69-82-no-dns-yet.isp.co.uk).

Here the receiving mailserver will reject the message as it assumes the IP address you have been assigned by your ISP is “dynamic” (one that changes each time you logoff and then log back onto your Internet connection) and not “static” (one that remains the same regardless of whether you logoff and then log back onto your Internet connection).

I’m not sure what my Public IP address is – how can I check?

In a browser on the MDaemon machine visit a website like https://www.whatismyip.org/ 

The IP address listed on this site will be your Public IP address.

Checking your rDNS entry

You can check the status of your rDNS entry in the following way via a Windows command prompt as follows:

As shown in this example, the response indicates that IP address has no valid rDNS record.

How to add / change your rDNS entry

If the rDNS check you perform returns a response lie the above or a generic rDNS entry then you should firstly contact the ISP who hosts your domain name and ask them to add an A record which points to your Public IP address like the example below:

mail.domain.com IN A 82.69.248.134

You should then ask the ISP who provides your Internet connection to add/amend the rDNS entry associated with your Public IP address so that it points to the hostname you have just created like the example below (rDNS entries list your IP address backwards):

134.248.69.82.in-addr.arpa IN PTR mail.domain.com

Once both these entries have been added and have propagated around the Internet you will have valid rDNS in place for your mailserver.

I have multiple domains setup in MDaemon. Which should I use for my rDNS entry?

You should only setup one rDNS entry per public IP address. If you have multiple domains configured in MDaemon we would suggest it is setup referencing the Default Domain in Setup -> Domain Manager.

This won’t mean receiving mailservers performing rDNS checks will reject mail from your secondary domains as they are making checks against the Public IP address, not a domain name.