The receiver’s name did not resolve. Usually this is a timeout: either the local resolver did not respond, or it did not get a response from others itself.
🔑 And the engine deliberately does not bounce the message on such a failure. That is the whole point. No answer is not the same as the answer “the domain does not exist”: in the first case we learned nothing, in the second we learned that the domain does not exist.
The vendor’s decision is right and worth copying. Bouncing a message when we could not ask means punishing the recipient for a problem on our side or in the network.
A practical sign: such failures come in batches and across many domains at once — there is one resolver for the whole node. A failure for one domain while the others work means something else.
⚠️ But it would be worth distinguishing: this is the only one of the five failures that speaks about our node, not about the receiver. The sign is recognizable — a burst of failures across many domains on one node at once, while neighboring nodes have none.
The resolver requirement is written in the node preparation: it must be reachable and recursive (prepare-host). The Hub’s preflight checks do not include this check.
How to tell the resolver is the problem:
| Observation | Conclusion |
|---|---|
| failures across many domains on one node at once | the resolver |
| neighboring nodes have none | this particular node’s resolver |
| a failure for one domain, the rest go through | not the resolver, but the domain itself |
Messages are not lost meanwhile — the engine does not bounce them, and after the resolver recovers they will go out.
Check the resolver with a query from the node itself, not by the presence of a line in the settings: a configured but non-recursive resolver looks set up and does not work.
# check the resolver, not the receiver pmta resolve gmail.com MXdig +short @127.0.0.1 gmail.com MX
3 relations
Name cacheThe node’s name cache: its state decides whether a query reaches external servers. § 5.3
Resolve a name and connectA neighboring catalog entry. inference
3 articles
◇What the node tells about itself and through which channelsSeven observation surfaces: the web monitor, the console in four formats, the log, accounting, accounting search, metrics and export to external analytics.◇The watchdog that restarts the engineKeeps an eye on the engine and brings it back up after a crash by itself, sending a crash report to the postmaster address.◇What makes a virtual machine riskyRunning on a virtual machine is possible, but the manual does not recommend it without sufficient hardware and properly tuned hypervisor settings: under load the node may stop responding.