虽然searching for a way to send an email from Python code,我偶然发现了以下情况:
当我使用host -t mx gmail.com
命令(我从this answer“借用”)进行MX查找时,我得到以下内容:
gmail.com mail is handled by 5 gmail-smtp-in.l.google.com.
gmail.com mail is handled by 30 alt3.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 20 alt2.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 10 alt1.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 40 alt4.gmail-smtp-in.l.google.com.
在official gmail docs(那里有那些服务器:smtp-relay.gmail.com
,smtp.gmail.com
,aspmx.l.google.com
)中提到了这些服务器。我的理解是MX查找应该返回服务器的地址(或它们的列表),它负责处理域的邮件。
我的问题是:
在一些外行人的条件下:
1.邮件交换器记录(MX记录)指定负责代表域名接受电子邮件的邮件服务器。上述文档页面是关于使用G Suite发送电子邮件。
2.参见1,这些是接收发往gmail的电子邮件的Google服务器。
3.有时(或者甚至经常),相同的服务器既负责发送电子邮件,又负责接收域的电子邮件。电子邮件提供商越大,我猜这些角色分离的可能性就越大。因此,其他域的电子邮件服务器将使用MX查找返回的服务器向gmail发送电子邮件,但其中一个(作为gmail用户)无法使用它们向其他域发送电子邮件。
5.对于“是”部分,不需要身份验证(您不需要任何Gmail凭据即可向@gmail用户发送电子邮件)