[ Headers & delivery errors ]

SMTP connection timeouts and unavailable MX hosts

Separate name resolution, TCP connection, SMTP greeting and later command timeouts before deciding that an MX host is unavailable.

By the EmailAuth research team · 3 min read

[ Key points ]

  • Separate name resolution, TCP connection, SMTP greeting and later command timeouts before deciding that an MX host is unavailable.
  • A missing final DATA reply can leave acceptance unknown; a failed TCP connection only proves that no message crossed that connection.
On this page

“SMTP timed out” can describe several different events. A DNS query may have timed out, a TCP connection may not have completed, or an established connection may have waited too long for a greeting or final message response. These stages have different evidence and different duplicate-delivery risks. Identify the stage before choosing a repair.

Resolve the destination before testing it

Record the recipient domain and the MX answer actually used, including preference values and lookup time. RFC 5321 describes MX selection and address resolution, including implicit MX behavior when no MX records exist. When the domain exists but has no MX records, implicit MX handling uses the domain itself with the applicable address records; NXDOMAIN and temporary DNS errors are different results. That is different from an explicit null MX declaration, which signals that a domain does not accept email under RFC 7505. Do not convert every unusual DNS result into a guessed destination. RFC 5321 section 5.

For each selected host, preserve relevant address-family results and the connection outcome. A successful IPv4 test does not establish that the failing sender's IPv6 path works. Likewise, a working public resolver result does not prove what a particular sending system saw earlier. Record DNS errors separately from successful answers pointing to unreachable hosts.

Distinguish refusal from silence

A connection refusal usually indicates an explicit rejection of the attempted TCP connection. A timeout means the expected event was not observed within the allowed interval. Neither observation alone identifies the responsible firewall, service owner or route. Filtering, network faults, listener availability and other conditions can produce similar user-visible symptoms.

After TCP succeeds, note whether the server sent its SMTP greeting. Then identify the exact command awaiting a response. RFC 5321 specifies distinct timeout guidance for several SMTP stages. An operator's short diagnostic timeout is a testing choice, not evidence that a production MTA violates or satisfies those requirements. Do not apply one aggressive timeout to every stage and call the result definitive.

Preserve uncertainty after message transfer

A timeout after the final message data is more delicate than failure to connect. The receiver might have accepted responsibility while its final response was lost. Repeating the transaction can therefore produce a duplicate. Keep the final response status as unknown unless sending and receiving evidence resolves it; do not automatically label the message “never received.” RFC 5321 sections 4.5.3.2 and 6.1.

For connection failures before any SMTP exchange, no message has been transferred on that connection. That narrower conclusion still does not describe previous attempts in the same queue. Correlate all attempts before deciding whether a business transaction needs another submission.

Compare three hypothetical timeout records

Case A never establishes TCP to the selected MX. Keep the diagnosis at the connection stage; no SMTP message crossed that connection. Case B establishes TCP but records no 220 greeting before the diagnostic tool's chosen deadline. Investigate listener behavior and the relevant greeting timeout, rather than calling it the same failure as A.

Case C transmits message data and its terminator but loses the final response. Acceptance is unknown, so check the sender queue and receiver evidence before adding another copy. These invented cases contain no executed socket tests, measured recovery or provider timing claim. A short diagnostic timeout is not a production recommendation.

For a real unavailable-MX incident, retain the resolved hosts and preferences, every attempted address family, failed stage and queue decision. A lower-priority MX working in a standalone test does not prove the affected sender used it; verify the actual attempt history.

Repair and confirm the affected path

Assign DNS, network and mail-service evidence to their respective owners. Retest the same approved destination and address family after one relevant correction, and preserve a comparison from another authorized network only when useful. Confirm queue recovery and aging messages before declaring success. Do not weaken mail authentication because a TCP session could not be established.

Choose the failed-stage owner

  • DNS failure: retain the actual resolver result and time.
  • TCP failure: record destination, address family and path evidence.
  • Greeting or command wait: name the missing reply and configured timeout.
  • Final DATA reply missing: reconcile acceptance before manual resubmission.
  • Recovery: account for aging and expired queue items, not merely one successful connection.

[ Takeaway ]

Separate name resolution, TCP connection, SMTP greeting and later command timeouts before deciding that an MX host is unavailable.

[ By role ]

What this means for you

Choose your role for practical next steps.

IT / Mail Admin

Locate the failed stage

A single error label omits the decisive event.

Next steps

  1. Record MX and address family.
  2. Capture command-specific timing.
  3. Compare queue outcomes after repair.

CISO / SecOps

Keep the network conclusion bounded

One failed connection does not prove malicious filtering.

Next steps

  1. Require corroborating network evidence.
  2. Protect diagnostic logs.
  3. Preserve authentication controls.

Founder / Non-technical

Separate outage from uncertain delivery

A timeout can leave business completion unclear.

Next steps

  1. Identify critical queued messages.
  2. Avoid duplicate submissions.
  3. Assign the correct service owner.

[ FAQs ]

Frequently asked questions

Does every SMTP timeout happen after connection?

No. Separate DNS, TCP, greeting, command and final-response stages.

Is connection refused the same as timed out?

No. Preserve the actual observed error rather than combining them.

Does working IPv4 prove IPv6 works?

No. Test and record the address family used by the failing sender.

What if there are no MX records?

Apply the SMTP resolution rules; distinguish absence of MX from an explicit null MX declaration.

Can a final-response timeout create duplicate risk?

Yes. The receiver may have accepted the message even if the sender did not see the response.

Was an external MX tested here?

No. All three cases are hypothetical failed-stage comparisons, not local or external network tests.

Should diagnostic tools use one tiny timeout everywhere?

No. Their chosen timeout must be distinguished from SMTP’s stage-specific guidance.

What verifies recovery?

The actual affected route reconnects and its queue records show the disposition of pending messages.

[ Sources ]

Sources

  1. RFC 5321 SMTP

    Sections §3.3 · §4.1.1.1 · §4.2 · §4.5.3.2 · §4.5.4.1 · §5 · §6.1

  2. RFC 7505 Null MX

    Sections §3 · §4

[ Glossary ]

Glossary

MX preference
The value used to order mail exchanger selection, with lower values preferred.
Connection refusal
An explicit failure to establish the attempted TCP connection.
Final-response uncertainty
A state where the sender cannot confirm whether a receiver accepted the completed message.

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