Убедитесь, что на машине, с которой вы отправляете электронные письма, есть разрешения на использование этого почтового сервера в качестве ретранслятора. Это не столько проблема программирования, сколько проблема с сервером, поэтому на Serverfault лучше ответить.
Вот хорошее место для начала: http://support.microsoft.com/kb/895853
Редактировать - добавлено.
Я нашел список ниже на другом сайте.
Это 4 наиболее вероятных причины проблемы.
- На указанном вами IP-адресе не работает ни одна служба.
- в пути есть брандмауэр (на клиенте или сервере)
- в пути есть антивирусный сканер (на клиенте или сервере)
- Вашему почтовому серверу не нравится исходный IP-адрес, поэтому он разрывает соединение.
Мой ответ выше касался пункта № 4, поскольку большинство почтовых серверов позволяют блокировать сквозные функции и открывать его для определенных IP-адресов.
Таким образом, SMTP-сервер должен быть настроен так, чтобы IP-адрес компьютера, который вы используете, использовался в качестве сквозного SMTP-сервера, что вы и делаете при использовании пространства имен System.Net.Mail. и указание почтового сервера, отличного от локального хоста.
Как правило, когда у меня возникла проблема # 4, я мог отправить с помощью Outlook. В этой ситуации должно быть верно следующее:
- Почтовый сервер должен использовать Exchange
- Outlook подключается с использованием MAPI (по умолчанию при подключении к серверу Exchange).
В этом случае Exchange работает, поскольку IMAP не блокируется, НО System.Net.Mail использует SMTP, а SMTP может быть заблокирован, если MAPI нет.