Polite usage:
tips for getting along with
mail server administrators

When you use SMTP validation, you make connections to other people's mail systems. The administrators of these systems have to deal with the growing problem of spam and are often sensitive to unusual activity on their servers.

If a mail server admin feels that you are abusing his system, he could:

  • Block your access to his mail servers
  • Submit your IP address to a spam blacklist
  • Complain to your ISP, which, depending on the circumstances, could suspend your account

You shouldn't have to worry about such conflicts, however, if you take the following steps:

What to do

  1. Identify yourself
    The HexValidEmail Connection class includes two properties that help you identify yourself to mail servers. Identifying yourself properly will reduce administrators' suspicion of your activity, give them a way to contact you, and ensure maximum compatibility with the wide range of mail server software out there.

    The FromDomain property sets the string that will be passed to mail servers as part of the HELO command. You should set this property to the domain the server will see when it does a reverse lookup on your IP address. Ideally, a forward lookup on this domain should return the same IP address. We strongly recommend that you set up reverse mapping for your IP address if you haven't already.

    The FromEmail property specifies the email address that will be passed as the parameter of the MAIL FROM command. You should set this to a working address that matches FromDomain and reaches the person responsible for email address validation. You may want to set up a special email alias for this purpose.
  1. Don't use VRFY and EXPN
    The VRFY and EXPN commands make mail administrators suspicious, rarely work anyway, and never affect HexValidEmail's validation results. HexValidEmail includes an option for sending these commands simply so you can see the results in the SmtpSession property for diagnostic purposes. This option is off by default, and we recommend you leave it off.
  1. Limit the rate of checks against any single domain
    If you are validating a large set of email addresses and many come from a single domain, place a delay between each validation so you will not pepper that domain's mail server with a rapid series of sessions. Pounding a mail server will probably get the attention of the administrator and possibly get you blocked.
  1. Skip SMTP for servers that don't return errors
    When validating a large number of addresses, you might try caching domains at which the mail servers do not return errors for bad addresses. (You can test for this behavior by validating an obviously invalid address at each domain.) By skipping SMTP validation for domains in the cache, you can save significant validation time and avoid unnecessary burden on the domains' mail servers.
  1. Don't intentionally abuse mail servers
    This should go without saying: you are likely to run afoul of mail server administrators if you intentionally abuse their systems. Abusive behavior includes:
  • Harvesting email addresses by using HexValidEmail to validate username guesses
  • Tying up servers with excessive traffic
  • Sending spam (unsolicited commercial/bulk email)

The license agreement forbids using HexValidEmail for such abuses.

Show site map

contact us    privacy policy    legal information