Microsoft MVP성태의 닷넷 이야기
오류 유형: 166. SmtpClient.Send 오류 - net_io_connectionclosed [링크 복사], [링크+제목 복사],
조회: 32622
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

SmtpClient.Send 오류 - net_io_connectionclosed

윈도우 서버에서 기본 제공되는 SMTP 서버를 이용하는 프로그램을 만들어서,

SmtpClient smtp = new SmtpClient();
smtp.Host = "127.0.0.1";
smtp.UseDefaultCredentials = true;

MailAddress from = new MailAddress("test@test.com");
MailAddress to = new MailAddress("...[받는 사람 이메일 주소]...");

MailMessage msg = new MailMessage(from, to);
msg.Body = "Test is good";
msg.Subject = "Test mail";

smtp.Send(msg);

실행시켰는데, 다음과 같은 오류가 발생했습니다.

C:\temp>ConsoleApplication1.exe

처리되지 않은 예외: System.Net.Mail.SmtpException: 메일을 보내지 못했습니다. ---> System.IO.IOException: 전송 연결 net_io_connectionclosed에서 데이터를 읽을 수 없습니다. 위치: System.Net.Mail.SmtpReplyReaderFactory.ProcessRead(Byte[] buffer, Int32 offset, Int32 read, Boolean readLine)
위치: System.Net.Mail.SmtpReplyReaderFactory.ReadLines(SmtpReplyReader caller, Boolean oneLine)
위치: System.Net.Mail.SmtpReplyReaderFactory.ReadLine(SmtpReplyReader caller)
위치: System.Net.Mail.SmtpConnection.GetConnection(String host, Int32 port)
위치: System.Net.Mail.SmtpTransport.GetConnection(String host, Int32 port)
위치: System.Net.Mail.SmtpClient.GetConnection()
위치: System.Net.Mail.SmtpClient.Send(MailMessage message)
--- 내부 예외 스택 추적의 끝 ---
위치: System.Net.Mail.SmtpClient.Send(MailMessage message)
위치: ConsoleApplication1.Program.Main(String[] args)


SmtpClient.Host 속성에 127.0.0.1 대신 실제 IP를 입력하니 정상적으로 이메일이 발송되었습니다. 이런 경우도 다 있군요. ^^

그래서, SMTP 서버 설정에 가보니... ^^;;; IP 주소를 지정한 체로 설정되어 있었던 것입니다.

smtp_send_error_1.png

위의 값을 "(지정하지 않은 모든 IP)" - "(All Unassigned)"로 바꿔주면 127.0.0.1 주소값으로 메일이 잘 보내집니다.

가끔은, 오류의 원인을 모를 때 기본부터 확인하는 것이 좋다는! ^^




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 1/14/2013]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 196  [197] 
NoWriterDateCnt.TitleFile(s)
17정성태7/17/200327485VC++: 6. Win32 API Hook - 소스는 "공개소스"에있습니다. [2]
16정성태7/17/200319812COM 개체 관련: 3. IE 툴밴드의 위치문제파일 다운로드1
15정성태7/17/200320824VC++: 5. 시행착오 - 클래스 포인터를 void * 로 대입후 delete 하는 경우.
14정성태7/17/200322352VC++: 4. MFC Message 처리 구조
13정성태7/17/200322107VC++: 3. template 활용의 최고 단계!
12정성태5/7/200619663VC++: 2. void func1( MYCLASS *&pBuildingElement ); 선언의 의미
10정성태7/17/200317994기타: 2. 데브피아 사이트의 클럽 서비스 내에 있는 Standard C++ Research
9정성태7/17/200323556기타: 1. Programming Applications for Microsoft Windows 4th Edition
8정성태7/17/200320948COM 개체 관련: 2. CWindowImpl 의 기본 윈도우 클래스 명을 바꾸려면?
7정성태7/17/200323530VS.NET IDE: 1. VC++ 프로파일링 사용법
4정성태7/17/200335910VC++: 1. C++ 클래스 멤버변수 초기화 [3]
3정성태7/17/200321865스크립트: 2. JScript에서의 Blocking 동작을 막아주는 COM 메서드
2정성태6/14/200640642COM 개체 관련: 1. IWebBrowser2와 IHTMLDocument2의 상호 변환 [2]
1정성태7/17/200324809스크립트: 1. IE 의 훌륭한 저장기능 - userData
... 196  [197]