Visual RFC.
ALL RFCs / RFC 7504
Read the RFC ↗
RFC 7504 / SMTP NO-MAIL REPLIES

Say that this host never accepts mail

01

SMTP means Simple Mail Transfer Protocol. Its client sends mail to a server. A dummy SMTP server can open a connection solely to say that this host never accepts mail.

RFC 7504 · § 3EXAMPLE
4 / 4
Say that this host never accepts mailSeparate selective-policy example uses554rather than misrepresenting host-wide no-mail status.Separate selective-policy comparisonSMTP clientMail server554 policy rejection; chosen exampleServer accepts some mail521 SHOULD NOT label selective rejectionNot a host-wide no-mail declaration521: host never accepts mail; not a per-recipient policy verdict
04
Exclude a selective rejection

Separate policy comparison: a server accepts some mail but rejects this source. Do not label that situation with 521; 554 is more appropriate for most such conditions.

Source for this drawing: RFC 7504 · Read RFC section 3 ↗

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
New to this? Start hereA quick picture + helpful background

A message needs an address.

Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.

Helpful first, if these ideas are unfamiliar

These pictures are analogies to help you learn. The linked RFC explains the actual rules.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

What changed
RFC 1846 experimentRFC 7504 §§3 and 5.2

RFC 7504 standardizes 521 and ends the experiment. Its formal relationship is Updates, not Obsoletes; broader RFC 1846 deployment strategies remain outside this document.

Read the updated RFC section ↗
KEY POINT

521 is reserved for connection-opening time to indicate that the host never accepts mail, rather than the usual 220 greeting.

  • 521 is reserved for connection-opening time to indicate that the host never accepts mail, rather than the usual 220 greeting.
  • A dummy server with that sole purpose SHOULD use 521. Other situations with the same never-accepts-mail intent MAY use it.
  • 521 SHOULD NOT express rejection of selected hosts, addresses or destinations. A server that sometimes accepts mail is outside this no-service meaning; 554 is more appropriate for most such policy rejections.
  • A timeout does not prove a host never accepts mail. Without an explicit answer, the sender may queue and retry; no universal retry duration is specified here.
DETAILS

Fictional example.com and example.org names. Separate comparisons reset the scene; chosen reply text and timings are not protocol defaults. This is an educational model, not an SMTP implementation.

Read the RFC section ↗

All chapters in RFC 7504

Drawing view

Scroll the drawing to see every part. Playback controls stay above it.

RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗