我发了一封电子邮件给2个收件人,我检查了maillog:
tail -5000 maillog | grep "020EE4202065" Aug 7 17:31:24 mail postfix/smtpd[7478]: 020EE4202065: client=NodoOffice[118.70.28.223], sasl_method=PLAIN, sasl_username=ngadt@my_great_company.com Aug 7 17:31:24 mail postfix/cleanup[7485]: 020EE4202065: message-id=<6b36518e-14b1-6fac-dd27-c4c900aff87c@my_great_company.com> Aug 7 17:31:28 mail opendkim[1717]: 020EE4202065: DKIM-Signature field added (s=default, d=my_great_company.com) Aug 7 17:31:28 mail postfix/qmgr[2817]: 020EE4202065: from=<ngadt@my_great_company.com>, size=5481240, nrcpt=2 (queue active) Aug 7 17:31:32 mail postfix/smtp[7487]: 020EE4202065: to=<[email protected]>, relay=mail.the-bank.com.vn[103.11.172.xx]:25, delay=8.3, delays=4.3/0.07/0.31/3.6, dsn=2.6.0, status=sent (250 2.6.0 <6b36518e-14b1-6fac-dd27-c4c900aff87c@my_great_company.com> [InternalId=23138874] Queued mail for delivery) Aug 7 17:31:53 mail postfix/smtp[7486]: 020EE4202065: to=<[email protected]>, relay=gmail-smtp-in.l.google.com[74.125.204.26]:25, delay=30, delays=4.3/0.03/3/23, dsn=2.0.0, status=sent (250 2.0.0 OK 1502101899 g4si5235454plk.325 - gsmtp) Aug 7 17:31:53 mail postfix/qmgr[2817]: 020EE4202065: removed
我注意到有一个额外的信息
[InternalId=23138874] Queued mail for delivery
在to=<[email protected]>和[email protected]说,她没有在她的邮箱中看到该电子邮件。
你能解释一下( Queued mail for delivery )是什么意思? 那么在the-bank.com.vn电子邮件服务器the-bank.com.vn收到该电子邮件?
谢谢!
只是为了添加一些额外的信息。 关于如下的行 –
Aug 7 17:31:32 mail postfix/smtp[7487]: 020EE4202065: to=<[email protected]>, relay=mail.the-bank.com.vn[103.11.172.xx]:25, delay=8.3, delays=4.3/0.07/0.31/3.6, dsn=2.6.0, status=sent (250 2.6.0 <6b36518e-14b1-6fac-dd27-c4c900aff87c@my_great_company.com> [InternalId=23138874] Queued mail for delivery)
对你来说重要的事情是relay=mail.the-bank.com.vn和status=sent 。 这两个字段基本上确认您的服务器连接到mail.the-bank.com.vn为了传递电子邮件,并且该服务器接受了消息。 从这一点上,你的服务器已经完成了它的工作,并且由接收者的服务器来继续交付。
关于这个消息的结尾 –
(250 2.6.0 <6b36518e-14b1-6fac-dd27-c4c900aff87c@my_great_company.com> [InternalId=23138874] Queued mail for delivery)
当SMTP客户端连接到邮件服务器时,它将发送一系列命令,如以下示例( C = Client, S = Server )
C> MAIL FROM: [email protected] S> 250 2.1.0 OK C> RCPT TO: [email protected] S> 250 2.1.5 Ok ... etc ...
客户端发送的每个命令都会得到服务器的响应,该响应以状态码开始,2xx代码成功。 此后通常还有第二个代码,但其余的代码通常可以是服务器想要发送的任何代码。
日志中方括号中的文本是系统完成向消息发送时由收件人的服务器返回的完整行。 这从状态码开始(在这种情况下是成功的),但其余的只是服务器想要发送的内容。
在这种情况下,看起来像来自Exchange服务器(IIRC)的正常响应,基本上感谢,我已经把消息放在队列中准备交付。 (大多数邮件服务器具有处理接收入站邮件的进程,将其放入入站传递队列,以及将邮件实际传递到邮箱的单独进程。
在日志中logging这个信息对于debugging通常很有用,因为它通常包含收件人服务器分配邮件的邮件ID(如果收件人的邮件pipe理员找不到邮件,则可以为他们提供日志条目/ id)。 例如,Gmail会返回以下内容(看起来是他们的时间戳)(方便如果有人在10:45:23投诉邮件,但在扫描日志后发现发件人的时间是3小时)和一个ID。
(250 2.0.0 OK 1502179523 b127si743181wmc.127 - gsmtp)
基本上,SMTP服务器开发人员通常会在最后一个响应中放置文本,以帮助服务器的pipe理员定位/跟踪消息。
这在评论中已经回答了,但是对于技术上的解释。
在这个消息中括号之间的所有部分都是“对方”的回应。 第一个数字是返回码。 250是SMTP(简单邮件传输协议)的确定,并且是唯一的响应强制性的,其余的不同服务器之间以及动作之间