我想在不发送确认电子邮件的情况下验证存在的电子邮件地址。 我找到了this tutorial。
当我尝试验证热门域名(如hotmail.com,gmail.com,yahoo.com等)时,本教程中介绍的方法对我无效。
令人惊讶的是,我能够连接到包含特殊域名的电子邮件(类似someone@someone.me
)。
如何通过telnet连接到hotmail.com,gmail.com等域名?我应该使用哪个端口号?
答案 0 :(得分:0)
端口25是服务器到服务器通信的标准SMTP端口,也是您要使用的端口。
端口587通常用于从本地订阅者提交新邮件,因此(通常)在使用前需要进行身份验证,因此通常不会对您尝试执行的操作有用。
但请注意,此技术不应被视为确定性。充其量,这是一个提示。例如,某些邮件服务器将接受(或至少假装接受)每条邮件,无论收件人如何,以避免这种确切的目标:
% telnet mta5.am0.yahoodns.net 25
Trying 98.138.112.38...
Connected to mta5.am0.yahoodns.net.
Escape character is '^]'.
220 mta1057.mail.ne1.yahoo.com ESMTP ready
HELO foo.com
250 mta1057.mail.ne1.yahoo.com
MAIL FROM: <foo@bar.com>
250 sender <foo@bar.com> ok
RCPT TO: <this_can_not_possibly_exist_sdfjghdfkgsdfgsdfgdf@yahoo.com>
250 recipient <this_can_not_possibly_exist_sdfjghdfkgsdfgsdfgdf@yahoo.com> ok
QUIT
221 mta1057.mail.ne1.yahoo.com
Connection closed by foreign host.
如果您在注册过程中接收电子邮件,并且希望确保它们有效,那么您最好只是将接收欢迎信息作为要求过程,通过包含&#34;点击此处激活您的帐户&#34;链接。如果您正在进行群发邮件,请使用MailChimp或ConstantContact等服务,他们会为您监控失败。如果您要发送一次性通知,请使用MailGun等服务来捕获退回。