[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

Re: [MacPerl] Verifying email addresses



'lo,

  This method is not reliable.  Just because an SMTP server responds to an
"RCPT TO" command with "250" doesn't mean that the address exists.  All
that it means is that the SMTP server will accept mail for that
address.  It may bounce that mail later if it discovers the address is
invalid.

  Possible legitimate reasons for not immediately verifying the address
are:

1) Verifying the address is a lot of work.  Once the SMTP server has
validated the address, it has done most of the work in delivering the
message.  When mail servers are busy they may just accept the message and
queue it for later processing.

2) If the SMTP system is a gateway of some sort, the SMTP server can't
verify users, only the destination system can.  So until the destination
system is available, the SMTP server just queues all messages until it can
pass them along to the destination system.

3) There are several reasons why a server may not want to confirm email
addresses in this manner.  Spammers could get lists of verified email
addresses simply by trying a list of common account names at all known
domains.  "Headhunters" could get lists of employee email addresses at
companies by the same method.  In fact I know of a company that does not
respond in any way to invalid addresses.  If you send an email to an
invalid address, it simply disappears.  No bounced message, no
notification, nothing.

  So while you can probably assume that any addresses that fail this check
are invalid, you can not assume that addresses that pass this check are
valid.

  Some useful links offering more information on this are:

http://www.freesoft.org/CIE/RFC/1123/92.htm
http://www.ornl.gov/its/archives/mailing-lists/qmail/1997/01/msg00507.html

Andy

On Fri, 4 Aug 2000, Keary Suska wrote:

> You can use Net::SMTP to do a manual check. A sample transcript would be:
> 
> 220 remote.domain.com ESMTP Service ready
> HELO my.domain.com
> 250 remote.domain.com hello my.domain.com
> MAIL FROM: <anybody@anyhost>
> 250 Sender OK
> RCPT TO: <nobody@remote.domain.com>
> 550 User nobody@remote.domain.com not known
> RCPT TO: <somebody@remote.domain.com>
> 250 User aksuska@ remote.domain.com known
> QUIT
> 221 remote.domain.com closing connection
> 
> You will get greater efficiency by checking all accounts for a particular
> domain at the same time as I show above.
> 
> -K
> 
> 
> > From: Joseph Erickson <jerickson@eyemg.com>
> > Date: Fri, 04 Aug 2000 16:03:08 -0400
> > To: MacPerl List <macperl@macperl.org>
> > Subject: [MacPerl] Verifying email addresses
> > 
> > Is there anyway to verify an email before sending a message out?  What I
> > would like to do is get an email, like firstclown@yahoo.com, then ask the
> > server yahoo.com if firstclown is a valid user name for email.
> > 
> > This would really help me in checking emails before sending out subscriber
> > lists.  You wouldn't believe how many people don't know their own email
> > address.  If anyone else has had this problem, let me know how you handled
> > it.
> > -------------------------------
> > J o s e p h   E r i c k s o n
> > P u z z l e S m i t h
> > 
> > 
> > # ===== Want to unsubscribe from this list?
> > # ===== Send mail with body "unsubscribe" to macperl-request@macperl.org
> > 
> 
> 
> # ===== Want to unsubscribe from this list?
> # ===== Send mail with body "unsubscribe" to macperl-request@macperl.org
> 

-- 
===========================================================================
Andy Berkvam          | "I know someday you'll have a beautiful life, 
                      |  I know you'll be a star in somebody else's sky.
Email:                |  Why, why, why, can't it be, can't it be mine?"
 aberkvam@coredcs.com |                        - Black by Pearl Jam
 aberkvam@voyager.net |-WWW Pages: <http://www.coredcs.com/~aberkvam/>
===========================================================================


# ===== Want to unsubscribe from this list?
# ===== Send mail with body "unsubscribe" to macperl-request@macperl.org