SMTP服务器与服务器通信无需身份验

时间:2012-08-28 21:09:39

标签: c++ networking smtp

我正在尝试将SMTP与我用C ++编写的一个应用程序集成。我的目标是能够直接向与电子邮件地址关联的SMTP服务器发送电子邮件,而无需身份验证。换句话说,我希望我的应用程序充当SMTP服务器并与其他SMTP服务器通信。例如,电子邮件从yahoo.com发送到gmail.com。

2 个答案:

答案 0 :(得分:1)

要回答您的问题,您需要对收件人电子邮件地址的域部分(即“gmail.com”为“user@gmail.com”)执行DNS查询,询问其MX记录。这将为您提供该域的SMTP主机的列表。然后,您可以按优先级顺序遍历该列表,尝试连接到每个主机,直到成功,然后您可以继续正常SMTP conversation并发送命令,如HELO / EHLOMAIL FROMRCPT TODATA发送电子邮件。

答案 1 :(得分:0)

您所说的是设置开放邮件中继smtp服务器。虽然这些曾经是互联网上的常态,但由于大量垃圾邮件发送者滥用它们,他们通常不赞成。

如果您要在私有子网内部设置开放式中继,并且只有子网内的人可以通过它发送电子邮件,那么这仍然是可以接受的做法。但是,如果您允许从外部访问,这是最终结束互联网电子邮件黑名单的好方法。

了解更多信息:http://en.wikipedia.org/wiki/Open_mail_relay