Ping'ing an email address

Posted on 2002-06-25
Last Modified: 2007-12-19
  How do I programmatically 'ping' an email address in an efficient way to check if it exists? Is there a pre-made component somewhere that will do this?

Question by:aztec

Expert Comment

ID: 7109708
you can't really. some servers will tell you if the addy is good or not and there's standards for getting that info, buy experience shows that many (if not most) email servers simply don't enable the option.

About the only way to do so is to send the account mail requesting the user to manually verify the mail's transit.

LVL 14

Expert Comment

ID: 7109741
The problem is, an SMTP server usually cannot tell you directly whether there is an account associtated with a certain address. This is because of several reasons:

* SMTP is a relaying protocol. Usually you send the mail to an SMTP server, which then sends it to the next one etc. Therefore, the first server in the queue (the one you could ask about the address) will usually not know whether the mail can be delivered or not.

* In SMTP, there is a VRFY command which shall query an SMTP server for a specific user. However, many server administrators have chosen to disable VRFY because it would allow spammers to discover existing email addresses on any SMTP server using a brute-force approach. Therefore, even if you know what the final destination SMTP server is, you usually still don't get any answer about the validity of the email address.

* A mailbox may be locked or exceeding its quota, in which case the SMTP server probably still would accept the message, but then generate an NDR (Non-Delivery Report). Therefore, this would not really be useful at all to know whther the address really is valid.

The only way to pretty safely check an email address is to send a message with a specially tagged return path, so that in case of an NDR from the SMTP server you know that something failed, and depending on the code in it you may also decide whether you want to retry later (temporary error, like quota exceeded), or if the address is to be considered invalid. Unfortunately, when the address is valid, the email would not bounce and therefore be delivered to the user - so that this mechanism is not really useful for checking addresses but rather to do list maintenance after sending a bulk message.

Accepted Solution

lopem earned 50 total points
ID: 7111997
Hi Aztec,

I used the Piette's ping component and it works for some known sites (i.e. yahoo)... Maybe Aztec, you should try it... Check Piette's component at

I dont know why you want to ping an email address... but maybe this component can help you.

best regards
Manuel Lopez (lopem)
Active Directory Webinar

We all know we need to protect and secure our privileges, but where to start? Join Experts Exchange and ManageEngine on Tuesday, April 11, 2017 10:00 AM PDT to learn how to track and secure privileged users in Active Directory.


Expert Comment

ID: 7116995
You cannot ping an email address. You can only ping other computers - either by name or by IP address. You 'might' be able to ping the domain part of the email address, but only if the zone file for the domain is setup with an A or CNAME record for the domain - technically not correct.

As AvonWyss noted, you can try using SMTP and the VRFY command, but with many servers, the use of that command is disabled or restricted since it can be used by spammers to try and determine available email addresses for a domain.

Expert Comment

ID: 7117032
thanks for regurgitating our comments clstone. It's nice to have another voice tell you you're right, but did you need to submitt it as an answer? I can't help but think that aztec prob. isn't terribly impressed either.


Expert Comment

ID: 7160190
just my 2 pence but ive seen this question waiting to be eval`ed for a while now, why do people not give the points they deserve....


Author Comment

ID: 7161251
I wish to select Lopem's comment as the answer.

Expert Comment

ID: 7669387

best wishes
manuel Lopez (lopem)

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
Hello everybody This Article will show you how to validate number with TEdit control, What's the TEdit control? TEdit is a standard Windows edit control on a form, it allows to user to write, read and copy/paste single line of text. Usua…
In an interesting question ( here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…

821 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question