If you are planning to set up your own email servers on Microsoft Windows servers, I recommend a choice of two products that have a free version:
While installation on a windows server is not overly difficult, unfortunately there are other issues unrelated to technology and more related to politics. If you are using a virtual server created in Microsoft Windows Azure or certain other providers, you will find that your IP Address may be "blacklisted" simply because it exists within a certain range of IP addresses that are easily abused be email spammers. Microsoft states that it is not possible to implement classic email servers on its Azure virtual machines (see Azure Compute services do not support sending emails to external domains), but there are some workarounds that are possible, including the use of SMTP relays and Smarthosts. You can find more information at http://office365support.ca/smtp-relay-with-office-365/ and http://office365support.ca/smtp-relay-with-office-365/.
DNS (Domain Name) Servers may be created in a number of ways. DNS Servers resolve (point) domain names to IP addresses. You can create DNS Servers on Windows Azure, or Office 365, or a service such as Cloudflare will allow you to create them. These are low-cost options for most organizations. You can also purchase a VPS (Virtual Private Server) on the internet or use a Windows Azure VPS to create a DNS Server in the same way you would do so on a physical computer in an on-premises computer network. Using the new windows azure portal, use the following screens:
If using Office 365, you add a domain and after you verify your ownership with your domain registrar, you have the option to add DNS Server records for your domain:
“If you know your enemy, and you know yourself, you can fight a hundred battles, and never be defeated.”
― Sun Tzu,