November 2010 (1)
August 2010 (1)
July 2010 (1)
June 2010 (3)
July 2009 (3)
June 2009 (1)
May 2009 (1)
February 2009 (1)
January 2009 (1)
November 2008 (3)
October 2008 (4)
September 2008 (9)
August 2008 (6)
July 2008 (3)
June 2008 (3)
January 2008 (1)
November 2007 (2)
October 2007 (6)
September 2007 (5)
August 2007 (22)
July 2007 (6)
June 2007 (1)
May 2007 (3)
April 2007 (27)
March 2007 (8)
February 2007 (6)
September 2006 (2)
August 2006 (4)
July 2006 (9)
June 2006 (17)
May 2006 (20)
April 2006 (12)
March 2006 (9)
February 2006 (4)
January 2006 (3)
December 2005 (2)
November 2005 (4)
October 2005 (5)
September 2005 (37)
August 2005 (83)
July 2005 (6)

Active Directory / LDAP (0)
ASP.Net (19)
Blackberry Development (4)
c# (34)
c++ (3)
Code Camp (1)
Excel (1)
Exchange (3)
Front Page 2003 (6)
FTP User Editor (4)
HTML / CSS / DHTML (8)
IIS (146)
IIS - Log Parser (7)
IIS / FTP (12)
IIS / Tools / Administration (42)
IIS / Tools / Authentication (6)
IIS / Tools / Compression (8)
IIS / Tools / Crash & Hang (12)
IIS / Tools / ISAPI Filters (17)
IIS / Tools / Log Files (17)
IIS / Tools / Scripts (28)
IIS / Tools / Security (9)
IIS / Tools / SSL (6)
IIS 7 (3)
Internet Information Server (1)
Me (Chris Crowe) (6)
MIME Types (1)
Misc (72)
Oulook Express (2)
Silverlight (1)
SQL Server (27)
SQL Server CTE (1)
Vista (15)
Vista Gadgets (8)
Visual Studio (11)
Voice over BroadBand (1)
Windows (33)
Windows Powershell (3)
Windows Sharepoint Services (0)
Windows Sharepoint Services (15)
Windows Vista (14)
Wine Cellar (1)
WMI (8)

Archive

January 2006 (3)

Microsoft SMTPDiag

SMTPDiag issues DNS queries using both User Datagram Protocol (UDP) and Transmission Control Protocol (TCP) to validate that the queries will succeed. Versions of Windows before Microsoft® Windows® Server™ 2003 and Microsoft Windows® XP did not support UDP queries. If TCP queries fail, mail will not be delivered successfully.

The first thing that SMTPDiag does after verifying syntax is to check the Start of Authority (SOA) record for the remote address domain. The next step is to validate that the local domain MX/A records are resolvable. This test verifies that the sender domain is valid and any bounces can return to the originating server. This test could fail if the domain is not resolvable from inside the firewall. The remote domain MX/A records are then checked also. If this step fails, mail will not route because of issues with DNS. At this point, the network DNS infrastructure must be investigated.

When all the DNS records have been successfully queried, the tool will try to connect to all the MX (mail exchange) records that were published for the remote domain on port 25 and try to do an EHLO, mail from, rcpt to, and quit command.

If you use the verbose (/v) option when you run the tool, more information will be provided about what each test is doing, as well as detailed results of each test step.

Usage

SMTPDIAG "sender address" "recipient address" [-d target DNS] [/v]

 

Argument Function
sender address Required. Address of a local mailbox. Used to verify SMTP submission and check inbound DNS.
recipient address Required. E-mail address of remote mailbox you are trying to send mail to. Used to verify DNS, and remote mailbox availability.
-d target DNS Optional. IP address of target DNS server to use to look up remote MX (mail exchange) records for testing. This is often configured as an external DNS server in Exchange. The external DNS setting is not available for Internet Information Services (IIS) SMTP.
/v Optional. Displays additional information about each test.
/? Displays Help

Diagnostics

Results are displayed in four colors, as follows:

  • White text indicates action being taken. (in the sample below it is Bold Purple)
  • Gray indicates informational results (in the sample below it is Black).
  • Green indicates a successful test result.
  • Red indicates a failed test result.

Example

Searching for Exchange external DNS settings.
Computer name is CHRIS.

Checking SOA for domain.com.
Checking external DNS servers.
Checking internal DNS servers.

Checking TCP/UDP SOA serial number using DNS server [192.168.2.2].
TCP test succeeded.
UDP test succeeded.
Serial number: 2005120602

Checking TCP/UDP SOA serial number using DNS server [200.97.33.1].
TCP test succeeded.
UDP test succeeded.
Serial number: 2005120602

Checking TCP/UDP SOA serial number using DNS server [200.96.152.4].
TCP test succeeded.
UDP test succeeded.
Serial number: 2005120602

Checking TCP/UDP SOA serial number using DNS server [200.96.152.12].
TCP test succeeded.
UDP test succeeded.
Serial number: 2005120602
SOA serial number match: Passed.

Checking local domain records.
Starting TCP and UDP DNS queries for the local domain. This test will try to validate that DNS is set up correctly for inbound mail. This test can fail for 3 reasons.

Local domain is not set up in DNS. Inbound mail cannot be routed to local mailboxes.

Firewall blocks TCP/UDP DNS queries. This will not affect inbound mail, but will affect outbound mail.

Internal DNS is unaware of external DNS settings. This is a valid configuration for certain topologies.

Checking MX records using TCP: domain.com.
      MX: mail.domain.com (5)
      MX: mx1.iserve.net.nz (10)
      A: mail.domain.com [200.79.73.229]
Checking MX records using UDP: domain.com.
      MX: mail.domain.com (5)
      MX: mx1.iserve.net.nz (10)
      A: mail.domain.com [200.79.73.229]
      A: mx1.iserve.net.nz [202.191.32.2]
      A: ns1.iserve.net.nz [202.191.32.1]
      A ns2.iserve.net.nz [202.191.33.1]

Both TCP and UDP queries succeeded. Local DNS test passed.

Checking remote domain records.
Starting TCP and UDP DNS queries for the remote domain. This test will try to validate that DNS is set up correctly for outbound mail. This test can fail for3 reasons.

Firewall blocks TCP/UDP queries which will block outbound mail. Windows 2000/NT Server requires TCP DNS queries. Windows Server 2003 will use UDP queries first, then fall back to TCP queries.

Internal DNS does not know how to query external domains. You must either use an external DNS server or configure DNS server to query external domains.

Remote domain does not exist. Failure is expected.

Checking MX records using TCP: domain.com.
      MX: mail.domain.com (5)
      MX: mx1.iserve.net.nz (10)
      A: mail.domain.com [200.79.73.229]
Checking MX records using UDP: domain.com.
      MX: mail.domain.com (5)
      MX: mx1.iserve.net.nz (10)
      A: mx1.iserve.net.nz [202.191.32.2]
Both TCP and UDP queries succeeded. Remote DNS test passed.

Checking MX servers listed for chris.crowe@domain.com.
Connecting to mail.domain.com [200.79.73.229] on port 25.
Received:
220 iisfaq.domain.net Microsoft ESMTP MAIL Service, Version: 6.0.3790.1830 ready at Thu, 19 Jan 2006 08:03:32 +1300

Sent:
ehlo domain.com
Received:
250-iisfaq.domain.net Hello [192.168.2.1]
250-TURN
250-SIZE
250-ETRN
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-8bitmime
250-BINARYMIME
250-CHUNKING
250-VRFY
250-X-EXPS GSSAPI NTLM LOGIN
250-X-EXPS=LOGIN
250-AUTH GSSAPI NTLM LOGIN
250-AUTH=LOGIN
250-X-LINK2STATE
250-XEXCH50
250 OK

Sent:
mail from: <chris@domain.com>

Received:
250 2.1.0 chris@domain.com....Sender OK

Sent:
rcpt to: <chris.crowe@domain.com>

Received:
250 2.1.5 chris.crowe@domain.com

Sent:
quit

Received:
221 2.0.0 iisfaq.domain.net Service closing transmission channel

Successfully connected to mail.domain.com.
Connecting to mx1.iserve.net.nz [202.191.32.2] on port 25.Received:
220 mx1-2.iserve.net.nz ESMTP

Sent:
ehlo domain.com

Received:
250-mx1-2.iserve.net.nz
250-PIPELINING
250-8BITMIME
250 SIZE 20971520

Sent:
mail from: <chris@domain.com>

Received:
250 ok

Sent:
rcpt to: <chris.crowe@domain.com>

Received:
250 ok

Sent:
quit

Received:
221 mx1-2.iserve.net.nz

Successfully connected to mx1.iserve.net.nz.


Microsoft IIS tools have been updated...

Microsoft has released the January 2006 IIS toolkit.

  • Fetch 1.4:  Remove the browser from scenario and make raw custom HTTP/S requests to your IIS Web Server
  • Debug Diagnostics 1.0:  Track down problems with IIS Crashes, Hangs, or Memory Leaks using this tool
  • Trace Diag:  This is a combined toolset aimed at helping users of Windows Server 2003 Service Pack 1’s tracing easier.  It includes IISREQMON, IISTRACE for the command-line and IIS Request Viewer (User Interface) and installs only on SP 1 and higher versions of Windows. 

This release also included some updates to SSLDiag to version 1.1.  This included support for the following:

  • Service Pack 1’s Host Header support for SSL
  • SelfSSL complete functionality on the command-line (ssldiag /selfssl)
  • Limit diagnostics with User Interface to single site (for use on large or specific diagnostic situations – ssldiag /s:<siteid>)

 **Important:  Log Parser 2.2, SMTPDiag 1.0, and AuthDiag 1.0 were unchanged in this release.

 

For details about each platform, please use the following URL:

 

  (x86) Landing: http://www.microsoft.com/downloads/details.aspx?FamilyID=9BFA49BC-376B-4A54-95AA-73C9156706E7&displaylang=en

  (x64) Landing: http://www.microsoft.com/downloads/details.aspx?FamilyID=7e42b310-b2d1-496b-8005-9d91782b9995&DisplayLang=en

  (ia64) Landing: http://www.microsoft.com/downloads/details.aspx?FamilyID=13c1c5e5-592c-45bc-b5bb-c486b43eb539&DisplayLang

 


URL Rewriting and Alternative Authentication Methods
  • Mod_Rewrite - URL Rewrite
    Opensource and FREE for private and commercial use
    Powered by regular expressions Mod Rewrite adds a flexible URL rewriting engine to your IIS.

    With Mod Rewrite you can:
    • Convert dynamic URLs to static.
    • Make your site's URLs user and search engine friendly 
    • And much more...


  • Mod Auth - IIS Authentication
    Opensource and FREE for private and commercial use

    Add the ability of authorization and authentication without using Windows accounts.
    Excelent for membership systems.