MDaemon supports the AutoDiscovery service, which allows users to configure their email clients to connect to their accounts by providing only their email address and password, rather than having to know other configuration details such as mail server names and ports. Most clients support the service, although a few have only limited support for it. The AutoDiscovery service is enabled by default, but you can manually enable or disable it from MDaemon's main application interface. Under Servers in the Stats pane, right-click AutoDiscovery Service, and click Enable/Disable AutoDiscovery Service.
Clients in which the AutoDiscovery service is fully supported will use the domain name in the user's email addresss to do a DNS service (SRV) record lookup for Service Type _autodiscover._tcp and connect to that server to get additional information. Therefore to support AutoDiscovery you must create DNS SRV records for AutoDiscovery and the services it supports. MDaemon's implementation of the AutoDiscovery service supports: ActiveSync (airsync), IMAP, POP, SMTP, DAV, and XMPP.
_autodiscover._tcp SRV 0 0 443 adsc.example.com.
_airsync._tcp SRV 0 0 443 eas.example.com.
_imap._tcp SRV 0 0 0 imap4.example.com.
_pop._tcp SRV 0 0 0 pop3.example.com.
_smtp._tcp SRV 0 0 0 msa.example.com.
_caldav._tcp SRV 0 0 0 dav.example.com.
_carddav._tcp SRV 0 0 0 dav.example.com.
_xmpp-client._tcp SRV 0 0 0 chat.example.com.
Note: a few clients will always look at autodiscover.{domain}.{tld} first. So having the AutoDiscovery service record point to a server named autodiscover.{domain}.{tld} could help in that regard. In the following example, however, the AutoDiscovery server is adsc.example.com.
Example:
Domain name: example.com
The admin should set up a _tcp service record for service type _autodiscover
_autodiscover._tcp SRV 0 0 443 adsc.example.com.
In this case, it points to adsc.example.com, which has an A record pointing to 192.168.0.101
The client will then connect to that server, and ask for connection point information for some specific protocols: ActiveSync, IMAP, XMPP, SMTP, DAV, etc...
The AutoDiscovery service then looks up the protocols requested and returns the proper server names for those protocols. i.e. For ActiveSync, it would return the server name defined in the _tcp service record _airsync, which in this example, would be eas.{domain}.{tld}
If Outlook were calling AutoDiscovery, it would return the IMAP and SMTP Servers, represented for the _tcp service records of _imap and _msa, resulting in the servers being returned as imap4.example.com and msa.example.com.
Here is an example of setting up Auto Discovery Services correctly. This assumes that you wish to use unique names for each protocol, but is easily adapted to use say a common name, such as mail.example.com.
;
; Database file example.com.dns for example.com zone.
;
@ IN SOA dns.mydnsprovider.org. hostmaster.mydnsprovider.org. (
4 ; serial number
900 ; refresh
600 ; retry
86400 ; expire
3600 ) ; default TTL
;
; Zone NS records
;
@ NS dns.mydnsprovider.org
;
; Zone records
;
@ A 192.168.0.100
adsc A 192.168.0.101
www A 192.168.0.102
imap4 A 192.168.0.103
pop3 A 192.168.0.104
msa A 192.168.0.105
eas A 192.168.0.106
api A 192.168.0.107
autodiscover A 192.168.0.108
dav A 192.168.0.109
chat A 192.168.0.110
inbound A 192.168.0.111
MX 10 inbound.example.com.
;
; Service records
;
_autodiscover._tcp SRV 0 0 443 adsc.example.com.
_airsync._tcp SRV 0 0 443 eas.example.com.
_imap._tcp SRV 0 0 0 imap4.example.com.
_pop._tcp SRV 0 0 0 pop3.example.com.
_smtp._tcp SRV 0 0 0 msa.example.com.
_caldav._tcp SRV 0 0 0 dav.example.com.
_carddav._tcp SRV 0 0 0 dav.example.com.
_xmpp-client._tcp SRV 0 0 0 chat.example.com.
See:
For more general information on AutoDiscover, see the Microsoft document: Autodiscover for Exchange.