TECH REF: Email Server

See Also

 

OmniRush has a very advanced email system that can help reduce the number of 'bounced' emails.  When running in Internal SMTP mode, OmniRush can detect a large portion (%60-%85 in most cases) of emails that would bounce downstream and take two actions in these cases:

 

a) Fail the job in the CRM/SQL database (where you can report on it, clean up your data, or even get an alarm to call a customer to ask for the correct email address)

b) Not forward the message, so there will be no bounce.

 

Summary: In Internal SMTP mode, OmniRush will dramatically cut the number of bounces, and make your database of email addresses easy to maintain and clean.  Z-Firm recommends running in internal SMTP mode in nearly all cases.

 

Details:

 

The OmniRush email module can run in two modes:

 

External SMTP Relay Server:  In this mode, you configure OmniRush with the name or IP address of your SMTP Relay server.  This might be a sendmail or Microsoft Exchange system running the SMTP server component.  It can be any kind of SMTP software, running on your premises or at an ISP.  In this configuration, OmniRush hands outbound email to this SMTP relay computer, and delivery is done by this SMTP system.  OmniRush does not know what happens to the email downstream.  OmniRush just hands the message off, and completes the job as successful in the CRM/SQL database.  OmniRush does not validate the address (except to check that it is formatted as an email address).  Bad addresses will be bounced by the SMTP relay server.  OmniRush will report close to %100 success rate, and bad email address will cause the emails to bounce.

 

Internal, integrated SMTP Relay:  In this mode, OmniRush does a lot more work.  The benefits are that OmniRush handles the email all the way to the recipient MX server, which in many cases is the final destination.  This allows OmniRush to know a lot more about what happens to the email message.  So instead of handing the email off to another computer for SMTP relaying (as OmniRush does in External SMTP mode), in Internal mode, OmniRush acts as an SMTP relay server itself.  This means that OmniRush does significant and deep validation of the email address and the actual mail delivery process.  If any of these stages fail, OmniRush will fail the email job.  When OmniRush fails the job, the email job record in the CRM/SQL system will fail (just like a failed fax job), and there will be no subsequent 'bounce' email to deal with.

 

The nitty gritty of OmniRush in internal mode (for the technically inclined):

 

a) OmniRush looks up the DNS record for the domain portion of the address (the part after the '@' in the address).

b) OmniRush asks the DNS server for the name of the MX server (Mail Exchanger) for the domain.

c) OmniRush connects to the MX server.

d) (optional)  OmniRush asks the MX server if the email address is valid

e) OmniRush passes the message to the MX server.

 

These steps are tried more than once (so if the DNS or MX server is being rebooted, it will not cause the message to fail).  By default, OmniRush makes 3 attempts, 10 minutes apart.  This can be modified in the Advanced Settings area of the Module.

 

If any step fails, OmniRush notes the job as a fail in the CRM/SQL database.

 

Step 'd' is only taken if 'Validate Recipient Address' is set in the Advanced tab of the email module.  This is off by default, because the process is not %100 reliable.  Some small percentage of emails will fail because the MX server returns 'rejected' even though it is valid.  Another small percentage of emails will succeed and later bounce.  The reason for this is that the email address checking feature on mail servers is often disabled to prevent spammers from probing MX servers for common names in order to build lists of email addresses to spam to.

 

Now at step 'e' OmniRush is handing over the email message.  In many cases it is being handed to the final destination (e.g. the actual computer where the recipient mailbox resides).  Any failures at this step will cause the email to fail.  At this point, it is often discovered that there is no recipient mailbox, and this will cause the job to fail, and OmniRush will fail the job in the CRM/SQL database.

 

Now comes the interesting part:  In some cases, the MX server is not the location of the recipient mailbox.  For example, at large ISP's (like AOL, etc.), the MX server is actually an intermediate relay system that then forwards the email to computer that hosts the actual mailbox.  In such a case, the message deliver to MX will succeed (and OmniRush will complete the job as a success), but downstream the message will fail and bounce.  No outbound mail system can detect that this email will eventually bounce.  These cases will lead to OmniRush successful jobs that will ultimately bounce.

 

The Bottom Line:

Internet Access Requirements

In External SMTP Relay mode, OmniRush needs to be able to connect to that relay server on port 25. If there is a firewall or other security device between OmniRush and the SMTP server, it needs to allow this traffic to pass. Also, the SMTP relay must accept mail traffic for relay from the OmniRush Server. Many SMTP relays are configured to only relay for mail from specific IP addresses. In such a case, the IP address of the OmniRush Server must be added to the SMTP relay server 'allowed' list.

 

An excellent test for an external SMTP relay is to configure an email program like Outlook or GoldMine to use the desired SMTP relay for sending email. Do this on the OmniRush Server PC itself. If the mail application can send, OmniRush probably can to. If the mail application cannot send, focus on resolving that (as OmniRush certainly will not be able to use that relay until a mail application can).

 

In Internal SMTP mode, OmniRush needs to be able to access the entire internet on port 25. No inbound connectivity is needed, but OmniRush must be able to access the internet. If there is a firewall or other security device between OmniRush and the internet, it needs to allow this traffic to pass.

 

Some ISP's and other network security devices block outbound port 25 traffic. Be sure your environment allows this traffic to pass.

 

OmniRush needs access to a DNS server as well.

 

It is advisable that the 'public' internet interface have reverse DNS configured. For example, if OmniRush is behind a NAT firewall, and the NAT firewall has an external IP of 22.22.22.22, then best results will be had if your ISP (whoever owns the 22.22.22.22 address) configures reverse DNS to this address. If possible, the host name should match your OmniRush Server PC name. An ideal configuration would have this address resolve to <OmniRush PC Name>.<your domain>.com, e.g. OmniRush.acmeroof.com

However, it is not required that the host name or domain name be real. In all events, it is strongly advised that reverse DNS be configured, to any host or domain name, for the OmniRush server, as this will help identify the email as legitimate to spam blockers.