答案1
在这种情况下,邮件服务器的行为肯定有所不同。理想情况下,接收邮件服务器将拒绝该RCPT
命令,在这种情况下,邮件内容将永远不会被传递到目标服务器。
在不太理想的情形下(不幸的是,这种情况在实践中经常出现),RCPT
即使目标地址不存在,邮件服务器也会接受该命令。如果服务器继续接受传入的邮件,则接收服务器有责任生成错误消息。
这是有问题的,因为有些邮件是带有伪造发件人地址的垃圾邮件。通过接受和退回,相关邮件服务器导致垃圾邮件最终进入其他人的邮箱。
自己测试特定地址很容易。您只需使用 telnet 命令并发出以下 SMTP 命令HELO
(或EHLO
)、MAIL
、RCPT
和 以及QUIT
适当的参数。通过在RCPT
命令后面加上QUIT
而不是DATA
,您实际上不会向服务器发送邮件。
测试地址时可能出现的情况如下[email protected]
telnet mx.example.com 25
Trying 2001:db8::1...
Connected to mx.example.com.
Escape character is '^]'.
220 mx.example.com
HELO mx.example.net
250 mx.example.com
MAIL From:<>
250 Bounce OK - Please include Message-ID from original message
RCPT To:<[email protected]>
550 No such user
QUIT
221 Closing connection
Connection closed by foreign host.