Отправка электронной почты через VPN SmtpException net_io_connectionclosed - PullRequest
0 голосов
/ 15 апреля 2010

Я отправляю письмо из приложения WPF. При отправке в качестве пользователя домена в сети, электронные письма отправляются как ожидалось. Однако, когда я пытаюсь отправить электронную почту через VPN-соединение, я получаю следующее исключение:

Исключение:

System.Net.Mail.SmtpException: сбой отправки почты. ---> System.IO.IOException: невозможно прочитать данные из транспортного соединения: net_io_connectionclosed. в System.Net.Mail.SmtpReplyReaderFactory.ProcessRead (буфер Byte [], смещение Int32, чтение Int32, логическая строка чтения) в System.Net.Mail.SmtpReplyReaderFactory.ReadLines (вызывающий SmtpReplyReader, Boolean oneLine) в System.Net.Mail.SmtpReplyReaderFactory.ReadLine (вызывающий SmtpReplyReader) в System.Net.Mail.SmtpConnection.GetConnection (строковый хост, порт Int32) в System.Net.Mail.SmtpTransport.GetConnection (строковый хост, порт Int32) в System.Net.Mail.SmtpClient.GetConnection () в System.Net.Mail.SmtpClient.Send (сообщение MailMessage)

Я попытался использовать олицетворение, а также установить учетные данные на SmtpClient. Ни один из них не работает:

using (new ImpersonateUser("myUser", "MYDOMAIN", "myPass"))
               {
                   var client = new SmtpClient("myhost.com");
                   client.UseDefaultCredentials = true;
                   client.Credentials = new NetworkCredential("myUser", "myPass", "MYDOMAIN");
                   client.Send(mailMessage);
               }

Я также пытался использовать Wireshark для просмотра сообщения по сети, но я не знаю достаточно о SMTP, чтобы знать, что я ищу.

Еще одна переменная заключается в том, что машина, которую я использую в VPN, - это Vista Business, а машина в сети - Win7. Я не думаю, что это связано, но тогда я бы не стал спрашивать, знаю ли я проблему! :)

Есть идеи?

1 Ответ

0 голосов
/ 16 апреля 2010

Я решил эту проблему, подключив Outlook на машине с VPN к серверу Exchange. IP-адрес автоматически разрешается на имя сервера, отличное от того, которое я пробовал. Очевидно, сервер обмена был доступен только через VPN через другой URL.

...