SMTPDiag는 IIS/SMTP, Exchange Server가 설치되어 있는 SMTP 사용 가능한 Windows Server에서 사용할 수 있는 문제 분석 도구입니다. 메일 전송 실패 등의 장애 발생 시 SMTP 및 DNS와 관련된 구성 및 연결 문제를 진단하기 위해 이 툴을 사용할 수 있습니다.
이 툴을 사용하여 테스트 하였을 때, 성공한 사례와 실패한 경우에 대해서 아래와 같이 정리하였습니다.
[사용방법]
"/?" 옵션으로 도움말을 보는 센스가 필요합니다.
[환경]
Exchange Server 2003
[실행결과]
1. 정상적으로 설정되어 있는 경우
Exchange 외부 DNS 설정을 검색하고 있습니다.
컴퓨터 이름이 LAIGO01입니다.
VSI 1에 다음 외부 DNS 서버가 있습니다.
외부 DNS 서버가 구성되어 있지 않습니다.
t*******.co.kr의 SOA를 확인하고 있습니다.
외부 DNS 서버를 확인하고 있습니다.
내부 DNS 서버를 확인하고 있습니다.
DNS 서버 [192.168.0.228]을(를) 사용하여 TCP/UDP SOA 일련 번호를 확인하고 있습니다.
TCP 테스트에 성공했습니다.
UDP 테스트에 성공했습니다.
일련 번호: 287
DNS 서버 [192.168.0.229]을(를) 사용하여 TCP/UDP SOA 일련 번호를 확인하고 있습니다.
TCP 테스트에 성공했습니다.
UDP 테스트에 성공했습니다.
일련 번호: 287
SOA 일련 번호가 일치합니다. 통과되었습니다.
로컬 도메인 레코드를 확인하고 있습니다.
로컬 도메인의 TCP 및 UDP DNS 쿼리를 시작합니다. 이 테스트는 인바운드 메일의 DNS가 제대로 설정되어 있는지를 확인합니다.
이 테스트는 다음과 같은 세 가지 원인으로 인해 실패할 수 있습니다.
1) 로컬 도메인이 DNS에 설정되어 있지 않습니다. 인바운드 메일을 로컬 사서함으로 라우팅할 수 없습니다.
2) 방화벽이 TCP/UDP DNS 쿼리를 차단합니다. 인바운드 메일에는 영향을 주지 않지만 아웃바운드 메일에는 영향을 줍니다.
3) 내부 DNS가 외부 DNS 설정을 인식하지 못합니다. 특정 토폴로지에 유효한 구성입니다.
TCP를 사용하여 MX 레코드를 확인하고 있습니다. mail.laigo.kr.
MX: mail.laigo.kr (20)
A: mail.laigo.kr [*.*.*.*]
UDP를 사용하여 MX 레코드를 확인하고 있습니다. mail.laigo.kr.
MX: mail.laigo.kr (20)
A: mail.laigo.kr [*.*.*.*]
TCP 및 UDP 쿼리가 모두 성공했습니다. 로컬 DNS 테스트를 통과했습니다.
원격 도메인 레코드를 확인하고 있습니다.
원격 도메인의 TCP 및 UDP DNS 쿼리를 시작합니다. 이 테스트는 아웃바운드 메일의 DNS가 제대로 설정되어 있는지를 확인합니다.
이 테스트는 다음과 같은 세 가지 원인으로 인해 실패할 수 있습니다.
1) 아웃바운드 메일을 차단할 TCP/UDP 쿼리를 방화벽이 차단합니다. Windows 2000/NT Server의 경우 TCP DNS 쿼리가 필요합니다.
Windows Server 2003은 먼저 UDP 쿼리를 사용한 다음 다시 TCP 쿼리로 변경합니다.
2) 내부 DNS가 외부 도메인 쿼리 방법을 모릅니다. 외부 DNS 서버를 사용하거나 DNS 서버를 구성하여 외부 도메인을 쿼리해야 합니다.
3) 원격 도메인이 없습니다. 오류가 발생할 수 있습니다.
TCP를 사용하여 MX 레코드를 확인하고 있습니다. t*******.co.kr.
MX: mail.t*******.co.kr (100)
A: mail.t*******.co.kr [*.*.*.*]
UDP를 사용하여 MX 레코드를 확인하고 있습니다. t*******.co.kr.
MX: mail.t*******.co.kr (100)
TCP 및 UDP 쿼리가 모두 성공했습니다. 원격 DNS 테스트를 통과했습니다.
ray@t*******.co.kr의 나열된 MX 서버를 확인하고 있습니다.
포트 25의 mail.t*******.co.kr[*.*.*.*]에 연결하고 있습니다.
받음:
220 mail.t*******.co.kr Microsoft ESMTP MAIL Service ready at Wed, 14 Jan 2009 12:58:13 +0900
보냄:
ehlo mail.laigo.kr
받음:
250-mail.t*******.co.kr Hello [*.*.*.*]
250-SIZE
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-STARTTLS
250-X-ANONYMOUSTLS
250-AUTH NTLM
250-X-EXPS GSSAPI NTLM
250-8BITMIME
250-BINARYMIME
250-CHUNKING
250-XEXCH50
250 XRDST
보냄:
mail from: <laigo@mail.laigo.kr>
받음:
250 2.1.0 Sender OK
보냄:
rcpt to: <ray@t*******.co.kr>
받음:
250 2.1.5 Recipient OK
보냄:
quit
받음:
221 2.0.0 Service closing transmission channel
mail.t*******.co.kr에 연결했습니다.
2. DNS 테스트는 성공하였으나 25 Port를 통해 서버 연결이 실패한 경우 아래와 같은 오류가 발생합니다.
ray@t*******.co.kr의 나열된 MX 서버를 확인하고 있습니다.
포트 25의 mail.t*******.co.kr[*.*.*.*]에 연결하고 있습니다.
서버에 연결하지 못했습니다. 오류: 10060
mail.t*******.co.kr에 메일을 전송하지 못했습니다.
[참고자료]
Microsoft Exchange Server SMTPDiag Tool
http://www.microsoft.com/downloads/details.aspx?familyid=bc1881c7-925d-4a29-bd42-71e8563c80a9&displaylang=en
작성자 : Lai Go / 작성일자 : 2009.01.14