After some searching I've come up totally empty handed on if there is any standard (or non-standard for that matter) specification or best practice for specifying the IMAP server for a domain name. I.e. if I have an account such as "[email protected]", and I wish to read my mail via IMAP, is there any DNS record which would indicate to my mail client which mail server it should be contacting? I've never seen anything like this, and virtually all email setup instructions I've seen include an exact host name for IMAP, e.g. "mail.example.com" or "imap.example.com". I guess the assumption is that the employees or other users of example.com can find out what server to use from their administrator. However if example.com were to have thousands of accounts, this would become burdensome. It would seem very useful to just enter your email address "[email protected]" and have it look up the IMAP server name in DNS based on the email's domain name (not dissimilar to how an MX record works for SMTP).
Anyone heard of anything like this?
From a DNS perspective you have SRV DNS records which allow the use of DNS for publishing services and service discovery. Their main use is to allow services to run easily on non-standard ports and to reduce the configuration burden when setting up clients.
A SRV record has the following form:
and one for IMAP is defined in RFC 6186 and would look like:
or
Most email clients don't specifically look for an IMAP server first though, but use auto discovery to derive email client settings from the email address a user enters.
If a user enters [email protected], depending on the client those typically involve either
_autodiscover._tcp.example.com.
SRV record such as used by MS Exchange and Outlookautoconfig.example.com.
A pretty good write up is found here : https://web.archive.org/web/20210402044628/https://developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/Autoconfiguration
Not aware of any standard per-se, but in DNS terms, you'd generally just register the "well-known name" imap.example.com and perhaps also imaps.example.com
SRV records are for much later / more complex things. Eg. finding Active Directory servers for a domain, or used as part of DNS Service Discovery.
History is littered with various service advertisement / discovery mechanisms.