When running jobs against a particular user, the thread assigned to the mailbox fails quickly. In the job report (when expanded for this user) will show the error: autodiscovery failed! (the autodiscover service couldn't be located.)
Autodiscover is a Microsoft developed protocol introduced with Exchange 2007. Its primary purpose was to help endpoints locate the mailbox they want to connect to without prior knowledge of the mail system (servers, URLs, etc.). It has since become the defacto method for connecting to mailboxes and as such Netmail also uses it in its jobs. If you receive this error, chances are autodiscover is not functioning properly from the servers' point-of-view. Perhaps it is due to DNS misconfiguration or an incorrect primary SMTP on the mailbox. There are many resources on the web to help administrators troubleshoot autodiscover issues in their environment.
In a nutshell, autodiscover will follow this (very simplified) process:
- Use the domain portion from the primary SMTP of the mailbox, eg. firstname.lastname@example.org --> domain.com
- Prepend 'autodiscover' to it (autodiscover.domain.com) and perform a DNS lookup on this address. This should resolve to the IP of a server which can respond to autodisover queries.
- Connect to that server and request the URL for accessing the mailbox, eg. email@example.com.
- The remote server will respond with a bunch of URLs, depending on how you want to connect to that mailbox (OWA/EWS/ECP/etc)
- Select the entry for EWS (eg. https://mail.domain.com/ews/exchange.asmx) and connect to that.
Autodiscover often fails because there is not a DNS entry or route to the URLs on steps 2 and 5.
Since Netmail admins are typically also familiar with the mail system, it may be possible to cheat the autodiscover process using 'host' file entries. This may be desirable in cases where autodiscover was intentionally left disabled, where split-DNS is not available, when shortcutting load-balancers, etc...