[ DNS & domains ]

Forward-confirmed reverse DNS: verify both lookup directions

Perform both halves of a reverse-DNS check and report matches, mismatches and lookup failures accurately.

By the EmailAuth research team

[ Key points ]

  • Compare normalized IP values across the full forward address set.
  • Keep timeout, absence and mismatch as different outcomes.
  • DNS consistency does not establish sender authorization or safety.
On this page

A reverse lookup returns a claimed hostname for an IP address. Forward-confirmed reverse DNS then checks whether that hostname resolves back to the original address. The second step catches a common inconsistency, but a match does not establish that the sender is trustworthy or authorized to use a message's From domain.

Define the comparison

References: RFC 1912 §2.1, RFC 3596 §2.1, RFC 4291 §2.2.

Take the observed SMTP source address as the starting value. Query its PTR record. For each returned hostname, query the appropriate forward address type: A for an IPv4 source and AAAA for an IPv6 source. Compare the address values, using an IP parser for IPv6 so equivalent textual forms are treated alike.

For this guide's diagnostic, confirmation means that at least one returned hostname's forward address set contains the original IP. Preserve per-host results as well as that summary. This is an explicitly defined diagnostic rule, not a promise that every receiver implements the same selection policy or checks every PTR result.

Keep failures distinct

References: RFC 1035 §4.1.1, RFC 2181 §10.2.

No PTR answer, a hostname with no matching address, a DNS timeout and a validation failure are different findings. A timeout cannot prove the record is absent. An IPv4 A match does not establish confirmation for an IPv6 source. Retain response codes and timing rather than collapsing all outcomes into a single red badge.

Do not stop at the first address returned for a hostname. A host can have several addresses, and the original address may be later in the set. Nor should a dashboard silently discard multiple PTR names. The underlying results are needed to explain exactly what matched.

Calculate a synthetic test set

Case A starts at 192.0.2.25. PTR returns smtp.example.com; that name's A set is 192.0.2.24, 192.0.2.25. Expected result is confirmed, because the original address is a member of the set. Equality with the entire set is not required.

Case B uses the same PTR but the A set contains only 192.0.2.24. Expected result is mismatch. Case C receives a timeout on the forward lookup. Expected result is unresolved, not mismatch. Case D starts at 2001:db8::25 and the target's AAAA answer is 2001:0db8:0000:0000:0000:0000:0000:0025. Expected result is confirmed after normalizing both as IPv6 addresses.

Reproduce these cases with a fixture resolver or isolated zones. For each case, store source IP, PTR response, forward response, query type and the computed membership result. A simple implementation parses each address and evaluates whether the source is in the returned set, while handling DNS errors before that membership step. These expected results do not claim that any production receiver has been tested.

Repair the owner’s side of the mismatch

References: RFC 1035 §3.5, RFC 8767 §4.

If the PTR is wrong, work with the reverse-zone operator. If the forward address is wrong, work with the hostname's authoritative DNS operator. If both are correct at authority but not at a resolver, investigate caching or differing views. Keep evidence for both directions at the same time so a sequential change is not misdiagnosed as a persistent inconsistency.

Finally, test the actual SMTP route and retain any receiver response. Forward confirmation is a consistency property of DNS data. Attackers can operate matching forward and reverse records, and a legitimate provider can still have a broken configuration. Use the finding alongside, not in place of, authentication and abuse controls.

Keep the evidence scope explicit

The four synthetic cases can be checked by address membership and normalization alone: confirmed, mismatch, unresolved and confirmed. The local calculation does not perform PTR or forward lookups, exercise a receiver or measure reputation.

[ Takeaway ]

Compare normalized IP values across the full forward address set. Keep timeout, absence and mismatch as different outcomes. DNS consistency does not establish sender authorization or safety.

[ By role ]

What this means for you

Choose your role for practical next steps.

IT / Mail Admin

Compute address membership carefully

The full returned address set and normalized IP values determine the stated diagnostic result.

Next steps

  1. Evaluate all returned addresses.
  2. Normalize IP values before comparison.
  3. Keep errors separate from mismatches.

CISO / SecOps

Avoid reputation conclusions

Consistent forward and reverse data can exist for abusive infrastructure too.

Next steps

  1. Treat confirmation as a limited consistency signal.
  2. Review evidence for both lookup directions.
  3. Check authentication independently.

Founder / Non-technical

Resolve ownership on both sides

A reverse and forward mismatch can require coordination between two service owners.

Next steps

  1. Assign both DNS owners to unresolved cases.
  2. Require a clear result definition.
  3. Avoid safety claims based on one check.

[ FAQs ]

Frequently asked questions

Is PTR alone forward confirmation?

No. You must resolve the returned hostname and compare addresses.

RFC 1912 §2.1

Must the forward answer contain only one address?

No. The original source needs to be present in the relevant address set under this diagnostic.

What if the first returned address differs?

Check the full set; answer order is not proof of mismatch.

Does a timeout mean the hostname fails to match?

It means the check is unresolved. Do not replace missing evidence with a mismatch.

Can an A result confirm an IPv6 source?

No. Use the relevant AAAA addresses for that IPv6 source.

RFC 3596 §2.1

Do differently compressed IPv6 strings always differ?

No. Parse and normalize them before comparison.

RFC 4291 §2.2

Does confirmation prove a sender is safe?

No. It establishes DNS consistency, not benign intent or domain authorization.

Who fixes a mismatch?

The PTR operator or forward-zone operator, depending on which record is wrong.

[ Sources ]

Sources

  1. RFC 1035

    Sections §3.5 · §4.1.1

  2. RFC 1912

    Sections §2.1

  3. RFC 2181

    Sections §10.2

  4. RFC 3596

    Sections §2.1

  5. RFC 8767

    Sections §4

  6. RFC 4291

    Sections §2.2

[ Glossary ]

Glossary

Forward confirmation
In this guide, at least one PTR target has a relevant forward address set containing the original source IP. This is a defined diagnostic, not a universal receiver rule.
Normalized IP value
A parsed address value that treats equivalent IPv6 textual forms as the same address.

RFC 4291 §2.2

Enterprise provenance

Why top financial institutions and governments retired their email security dashboards.

Traditional email authentication platforms sell you a dashboard and ask your engineers to do the labour. In high-stakes environments, manual oversight means delayed enforcement, configuration drift and unmonitored shadow domains.

EmailAuth is the agentic email provenance platform. Our agents enforce p=reject, keep third-party senders aligned and move your domains to full RFC 9989 compliance, the new DMARC standard,, with human-in-the-loop auditability.

Governments Large enterprises Tier-1 financial institutions

SaaS · Dedicated tenancy · Air-gapped on-prem · BYOK encryption

Knowledge Base