Diagnosing SMTP Service Connection Issues

Initial SMTP Service Connection Troubleshooting Steps

If you are having problems connecting to smtp.socketlabs.com there are some basic tests that can be performed to try and diagnose the issue that is occurring. It is important to understand smtp.socketlabs.com is designed as a highly available system. Since the implementation of our highly available design we have achieved completely uninterrupted access to smtp.socketlabs.com.   Even with perfect up time we often get support requests reporting that a connection could not be established. First, always check for any status alerts about any possible service interruptions at http://status.socketlabs.com.  If there are no alerts on our status page then check some of the most common causes of connection issues:

1) Anti-virus software

2) Firewalls

3) ISP Restrictions or Blocks

Anti-virus software often affects SMTP connectivity because virus and malware components are known for generating SPAM messages.  If you are having trouble connecting to smtp.socketlabs.com the first troubleshooting step is to disable anti-virus software and try again to connect.  Firewalls are another leading cause of SMTP connection issues.  Firewalls can be software or hardware based and commonly block SMTP traffic by default.  Be sure to check any firewall, both software based and hardware based, that may exist between you and your connection to your ISP.

Once you can confirm that your machine is able to reach outside of your local network on any of the SocketLabs supported ports (25, 2525, or 587), the last hurdle is ensuring that your Internet Service Provider allows for SMTP transmissions on the port you are utilizing in the settings your application.  ISPs have been known to block port 25, this includes even large scale providers like Comcast, so be sure to try alternate ports 2525, or 587.

If you think you should have a clear path to open connections to smtp.socketlabs.com but you are still having issues, the root cause may be compatibility with your application.  Double check your settings to make sure that smtp.socketlabs.com is set as the SMTP server.  In order to test smtp connection and the true capability of your machine being able to establish a connection to smtp.socketlabs.com we have to eliminate the application from the equation and utilize an operating system level tool such as Telnet.

.

Advanced SMTP Relay Connectivity Diagnostics

Telnet is a simple, text-based program that allows you to connect to another computer by using the Internet.  It is available on most machines in some fashion.  Below we will cover using Telnet on both Windows, and Mac OSX.  We will assume administrators of Linux/Unix machines will already be familiar with Telnet.

Windows

Telnet may or may not be installed by default on your machine.  Telnet is installed automatically on Windows XP, for newer versions including Windows Vista, Windows 7 and Windows 8 you may need to install Telnet. Microsoft provides detailed instructions on installing Telnet on Windows.  The guide linked here provides installation steps for Windows Vista but this also works for Windows 7 users.  Windows 8 users can also follow the guide once they have launched the Control Panel window.

1) Once Telnet is installed launch the program and get it running.  From the start menu search box or a command prompt typing “Telnet” should launch the application and bring you to this screen:

Launching Telnet

 2) Type “open” and press enter to initiate a new connection:

Telnet - Open Command

3) Now you will be prompted with a “( to )” prompt.  You need to specify where you want to connect.  You will enter “smtp.socketlabs.com 25”.  This instructs Telnet to connect to smtp.socketlabs.com, on port 25.

Specifying a connection destination

4) You may see a connecting dialog appear as in the screenshot below:

Telnet is attempting to connect

5) If there is a failure to connect the below error message will be displayed.  See step 7 if you received a different response.

Telnet Connection Failure

6) Retry a Telnet connection by repeating steps 2 and 3, using alternate SocketLabs supported ports of 2525, and 587.  “smtp.socketlabs 2525” and “smtp.socketlabs.com 587” would be entered during step 3.

Alternate Port Connection Failures

7) If any of your connection attempts are successful you will see a response from the SocketLabs MTA welcoming your connection.  The MTA you were directed to by our load balancer will tell you its name.  To maintain our high availability SocketLabs has many different machines behind the smtp.socketlabs.com address.  As long as your response contains the text “220 _____________ Hurricane Server ESMTP service ready” you have successfully connected.   Note the port you were successfully able to connect on to plug into your application settings going forward.

Successful Telnet Connection

Windows – SMTP Console

If you have having trouble finding, installing, or using Telnet and are on a Windows based machine you can run diagnostic tests with the free SocketLabs Diagnostic SMTP Console.

1) Go to the link above and download the SocketLabs Diagnostic SMTP Console.  Once it has downloaded double-click the icon to get started.  You should see the below screen:

Launch the SocketLabs SMTP Console

2) In the upper left hand corner is an “Actions” menu item, and the first option is the “Connect…” which when selected will allow you to set connection options.

"Connect" is under the Actions menu item

3) Under Server, enter smtp.socketlabs.com .  Under Port select one of the SocketLabs support ports: 25, 2525 or 587.  Leave the other 2 settings defaulted and click the Connect button.

Enter the SMTP server details

4) A connection error may bring up one of many different error alert boxes, such as the screenshot below.  Please retry connections on alternate support ports to see if a connection can be successfully established.

SMTP Server Connection Failure

5) If any of your connection attempts are successful you will see a response from the SocketLabs MTA welcoming your connection.  The MTA you were directed to by our load balancer will tell you its name.  To maintain our high availability SocketLabs has many different machines behind the smtp.socketlabs.com address.  As long as your response contains the text “220 _____________ Hurricane Server ESMTP service ready” you have successfully connected.   Note the port you were successfully able to connect on to plug into your application settings going forward.

Successul SMTP Server Connection

Mac OSX

1) All versions of Mac OS X have a built in “Terminal” application which is capable of managing Telnet sessions.  To find Terminal, search for it in Spotlight.  You may need Administrator permissions to access the application.

Find Terminal in Spotlight on MacOSX

2) Once launched you are greeted with a simple command line interface.

Launch Terminal

3) To initiate a Telnet session in the Terminal application type “telnet” and press enter.

Starting Telnet within Terminal

4) This will initiate a new instance of the Telnet client.  Once you have the telnet> prompt, type “open” and press enter.

Setting Telnet Connection Location

5) Now you will be prompted with a “( to )” prompt.  You need to specify where to open the connection.  You will enter “smtp.socketlabs.com 25”.  This instructs Telnet to connect to smtp.socketlabs.com, on port 25

Connecting to smtp.socketlabs.com on port 25

6) If there is a failure to connect the below error message will be displayed.  See step 7 if you received a Connected response.

Telnet Connection in Terminal Fails

7)  Retry a Telnet connection by repeating steps 4 and 5, using alternate SocketLabs support ports of 2525 and 587.  “smtp.socketlabs 2525” and “smtp.socketlabs.com 587” would be entered during step 5.

8) If any of your connection attempts are successful you will see a response from the SocketLabs MTA welcoming your connection.  The MTA you were directed to by our load balancer will tell you its name.  To maintain our high availability SocketLabs has many different machines behind the smtp.socketlabs.com address.  As long as your response contains the text “220 _____________ Hurricane Server ESMTP service ready” you have successfully connected.  Note the port you were successfully able to connect on to plug into your application settings going forward.

Successful Connection over Telnet to smtp.socketlabs.com

Analyze The Results

If at any point you were able to successfully connect to smtp.socketlabs.com then any application should be able to utilize our SMTP relay service with the properly specified port.  Continued errors at the application level are not likely to be connection related if you can verify a successful connection over a more basic communication tool like Telnet.  Please contact our Support department and provide as much information as possible to help us fully diagnose the issue.

If you were unsuccessful in your connection attempts then there is something that is preventing the connection from being established.  Recheck for anti-virus, firewall, or ISP port blocks as possible issues preventing the connection.

In future articles we will outline and discus diagnosing SMTP protocol errors including authentication and other more technical topics.