如何发送电子邮件?

bog*_*gha 1 domain-name-system email smtp domain

当用户发送电子邮件时.. 正在发生的程序是什么?我的意思是服务器如何区分 @gmail.com 和http://gmail.com 例如?在DNS服务器中是否必须进行特殊配置?

谢谢你。

Sim*_*Sim 11

有称为MX 记录的特殊DNS条目,邮件服务器或邮件传输代理使用它们来确定将邮件投递到何处的域。

以 gmail.com 为例:

gmail.com       MX preference = 5, mail exchanger = gmail-smtp-in.l.google.com
gmail.com       MX preference = 10, mail exchanger = alt1.gmail-smtp-in.l.google.com
gmail.com       MX preference = 20, mail exchanger = alt2.gmail-smtp-in.l.google.com
gmail.com       MX preference = 30, mail exchanger = alt3.gmail-smtp-in.l.google.com
gmail.com       MX preference = 40, mail exchanger = alt4.gmail-smtp-in.l.google.com
Run Code Online (Sandbox Code Playgroud)

MX 记录首选项确定将按从低到高的顺序首先尝试的服务器。所以在这种情况下,邮件服务器会在尝试 alt1.gmail-smtp-in.l.google.com 等之前尝试将邮件发送到 gmail-smtp-in.l.google.com。

如果 MX 首选项编号相同,则邮件服务器应在它们之间随机分发邮件。

对于邮件本身,使用的协议是简单邮件传输协议或 SMTP。

通过HTTP连接到网络服务器使用 DNS A 记录(或有时指向 A 记录的CNAME):

gmail.com       internet address = 74.125.127.83
gmail.com       internet address = 209.85.225.83
gmail.com       internet address = 74.125.79.83
Run Code Online (Sandbox Code Playgroud)

  • 另请注意,在没有任何 MX 记录的情况下,域的 A 记录将被视为“MX 0”记录。 (2认同)