New messageInbox
Envelope with a blue seal: Alice's messageSmall envelope: a question (DNS or IMAP)Amber card: a DNS answerBlue card in the drawer: the message stored in Bob's mailboxOne email from alice@example.org to bob@example.com. Alice's mail app submits it to mail.example.org on port 587 (RFC 6409) after STARTTLS and a login. That server looks up the MX record of example.com (mx.example.com, 203.0.113.25) and relays the message over SMTP on port 25 (RFC 5321); the envelope (MAIL FROM, RCPT TO) is separate from the From:/To: headers people see. Bob's server checks SPF (RFC 7208), DKIM (RFC 6376) and DMARC (RFC 7489) for example.org, accepts with 250, and stores the message; Bob reads it with IMAP on port 993 (RFC 9051), or POP3. Submission can also use port 465 with TLS from the first byte (RFC 8314). Port 25 is only for server-to-server relay; many home networks block it outgoing. Here one machine, mx.example.com, both receives mail and serves IMAP; big providers usually split these roles across many servers. Domains are RFC 2606 examples; 198.51.100.25, 198.51.100.53 and 203.0.113.25 are RFC 5737 documentation addresses and 192.168.1.10, 192.168.50.20 are private RFC 1918 addresses. Client ports, the date, the DKIM selector and the message size are illustrative.

Sending

  1. Alice writes to bob@example.com in her mail app. Her app builds the message: header lines such as From:, To: and Subject:, a blank line, then the text. The part after @, example.com, says where it must go.

Finding the way

Checking the sender

Delivery and reading

The messages, step by step

;; step 1/11 · compose
;; at: alice
From: Alice <alice@example.org>
To: Bob <bob@example.com>
Subject: Hello
Date: Fri, 23 Oct 2026 09:30:00 +0000

Hi Bob, …

(RFC 5322 format: headers, one blank line, then the body)

SPF checks the envelope MAIL FROM domain, DKIM the signing domain, and DMARC ties either one to the visible From: domain. None of them encrypts the mail. STARTTLS between servers is opportunistic: if the receiver does not offer it the mail may still be sent unencrypted. MTA-STS (RFC 8461) and DANE (RFC 7672) let a domain insist on TLS.