How to check if an email address exists an is reachable

This is a common occurrence where you receive at least one rejection email with the following Message Delivery Status (or Subsystem), as a result of sending it to a problematic or non-existing address. 

 So to check if an address actually exists or  receives’ mail you could simply send an email to that address (with the ‘delivery notification’ flag active) and wait for delivery. 

But, how can you check it WITHOUT sending any email? 

 The Windows Telnet client comes to our assistance, let’s see how to do it: 

Step 1 

First of all we activate Telnet (deactivated by default), going to the control panel, programs and functionalities, Activation or deactivation of Windows functionalities (top left). 

In the window that will appear, simply enable the tick on ‘Telnet Client’ and confirm it with ok. 

Step 2 

Open a command prompt (on Windows 8.1 and 10, right-click on the start menu logo). 

Type in the following prompt the command 

nslookup -q=mx <domain to test> 

for an example, to verify a @gmail address: 

nslookup -q=mx gmail.com 

press Send 

In this way we will get a list of MX servers (Mail eXchanger) for that domain.
This data is provided by the DNS system (see the dedicated post to understand how it works) and it represents the machines used to exchange and manage mail. 

Copy the real name of the MX server into an external backup file, which you can then find after ‘mail exchanger’ (e.g. mx.gmail.com). 

Step 3  

Type the prompt WITHOUT any errors the following command (because by using Telnet you can’t delete it!)  

telnet <domain saved> 25 

example: 

telnet mx.google.com 25 

press enter to start the Telnet session. 

Step  4  

We are now ‘connected to the server’ and can interact with each other via Telnet. 

Let’s issue the following command: 

helo hi 

(helo can just be with one ‘l’) 

Followed by… 

mail from: <something@something.com> 

 and  

rcpt to: <addresstotest@providerwearetesting.com> 

press send.. 

For example, in accordance with the previous ones: 

mail from: fittizio@testing.com 
rcpt to: aldorossi@gmail.com 

Step 5 

The server will respond to this last request by telling us whether the address exists or not. 

If the MX server will respond “OK” or “Recipient OK”, it means that the verification of the email has been successful and therefore the indicated address exists.
Otherwise an error message will be returned (e.g. “sorry, no mailbox”). 

 Summary 

All the steps in a terminal (you can perform the same exact steps even from a linux or mac terminal)

  

 

Share on Social Media