<分区>
我正在尝试将 SMTP 与我用 C++ 编写的应用程序之一集成。我的目标是无需身份验证即可将电子邮件直接发送到与电子邮件地址关联的 SMTP 服务器。换句话说,我希望我的应用程序充当 SMTP 服务器并与其他 SMTP 服务器进行通信。例如,电子邮件从 yahoo.com 发送到 gmail.com。
标签 c++ networking smtp
<分区>
我正在尝试将 SMTP 与我用 C++ 编写的应用程序之一集成。我的目标是无需身份验证即可将电子邮件直接发送到与电子邮件地址关联的 SMTP 服务器。换句话说,我希望我的应用程序充当 SMTP 服务器并与其他 SMTP 服务器进行通信。例如,电子邮件从 yahoo.com 发送到 gmail.com。
最佳答案
要回答您的问题,您需要对收件人电子邮件地址的域部分(即“user@gmail.com”的“gmail.com”)执行 DNS 查找,以获取其 MX 记录。这将为您提供该域的 SMTP 主机列表。然后,您可以按优先顺序遍历该列表,尝试连接到每个主机,直到一个成功,然后您可以继续正常的 SMTP conversation。并向它发送命令,例如 HELO
/EHLO
、MAIL FROM
、RCPT TO
和 DATA
发送邮件。
关于c++ - SMTP 服务器到服务器的通信无需身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12167579/