Visual RFC.
ALL RFCs / RFC 7505
Read the RFC ↗

RFC 7505 / START HERE

Null MX, before the details

Null MX means no mail exchanger. MX is the DNS mail exchanger record; DNS means Domain Name System.

A domain can publish a special MX record to announce that it accepts no email. Sending mail software can stop promptly instead of trying the domain’s web address as a mail server.

The idea in one picture

  1. Ask for the mail route

  2. Read the no-service record

  3. Stop the mail attempt

A simplified picture of the idea; the chapters explain the actual mechanisms.

Why it exists

Without any MX records, SMTP can fall back to the domain’s address records. A website that receives no mail needs an explicit no-service signal to avoid futile attempts and delayed failures.

A familiar example

A website-only domain publishes MX 0 . while keeping its web address. A mistyped email destination then fails promptly; the signal does not authenticate a sender or replace SMTP’s empty return path.

Helpful background

You can start here without reading another RFC. If these ideas are unfamiliar, these short introductions may help.

What you’ll learn next

Begin with chapter one, or choose a topic.

  1. Distinguish no MX from no mailA web address does not announce a mail service. Omitting MX records alone can still make senders try the domain’s address.
  2. Read the null MX recordOne ordinary MX record uses preference 0 and the root label as its exchange name.
  3. Reject an undeliverable recipient promptlyA submission or relay server can detect null MX while processing a recipient and report permanent failure without a target connection.
  4. Keep sender policy and empty return paths separateNull MX concerns receiving mail, so using such a domain as a sender can make replies and delivery-error notifications fail.
  5. Keep DNS integrity and service scope distinctNull MX is ordinary DNS data. It can receive DNSSEC protection, but it is not a firewall or a guarantee about unrelated services.
Start with chapter one →

This introduction explains RFC 7505 (2015). Read the original RFC ↗