2010-09-27 2 views
5

Мне интересно писать почтовый сервер SMTP, который просто отправляет электронные письма? Я бы написал это на C# в качестве самостоятельного приложения. Поэтому, если кто-то может указать мне в правильном направлении или объяснить, как SMTP на самом деле отправляет электронные письма, это было бы здорово.Как построить SMTP-сервер?

ответ

4

Читайте также: RFC821 и RFC1870. Лучшим выбором для внедрения будет просмотр примеров SMTP-трафика. Загрузите Wireshark или используйте любое другое программное обеспечение для захвата пакетов, отправьте электронные письма по SMTP и изучите, что было захвачено. SMTP - это текстовый протокол и довольно прямолинейный.

Пожалуйста, подчиняйтесь своим RFC-приложениям. Есть так много сломанных SMTP и других связанных с почтой приложений там, которые усложняют ситуацию. Возможно, вам будет лучше с помощью SmtpClient Class built into .NET. По крайней мере, это то, что я буду использовать. Нет смысла повторно изобретать колесо, да?

+0

Спасибо за некоторые хорошие идеи и да, это было бы заново изобретать колесо, но это определенно было бы интересно, так как кажется, что письмо не является чем-то, что, по-видимому, четко определено для Simple Mail Transfer Protocol. –

2

В этом проекте с открытым исходным кодом, есть все, что вам нужно в том числе под управлением Windows услуги, что делает именно то, что вы описали:

http://mailsystem.codeplex.com

+0

Позволит ли я отправлять массовые/неограниченные электронные письма в день? – CodeIt

Смежные вопросы