使用MX进行电子邮件验证

时间:2010-11-17 22:07:00

标签: email dns jndi email-validation mx-record

需要实施电子邮件验证以查找电子邮件是否确实存在。经过一些搜索后发现,由于使用了垃圾邮件控制技术(例如灰名单),这是不可能的。

因此移动MX和A属性检查(因为我们不允许直接发送确认邮件):

DirContext ictx = new InitialDirContext(); Attributes attrs = ictx.getAttributes("gmail.com", new String[] {"MX"});

我得到了结果,但不确定dns查找在这里是如何工作的(请求和响应的完整背景,即请求如何转发到邮件交换服务器以及用于联系Mail Exchange服务器的端口) )

这将极大地帮助我们进入生产环境而不会对网络行为产生任何疑虑,因为我们正在严格限制防火墙。

生产环境:Solaris OS上的Weblogic Server。

类似的讨论是Email validation MX Lookup,但它没有足够的细节

1 个答案:

答案 0 :(得分:1)

听起来你混淆了两种不同的技术:

1)执行DNS查找以确保域存在MX记录。这将消除假(即未注册)域中的所有电子邮件地址。但请注意,拥有MX记录不是合法邮件接收的要求。如果没有MX记录,邮件软件将只使用基本域的A记录。

2)与收件人邮件服务器建立TCP连接,以查看是否有任何内容正在侦听。这始终是端口25.您不必发送测试消息,只需连接到端口然后立即断开连接即可。成功连接意味着有效的电子邮件地址。 (或者至少是一个有效的域,这是你可以验证的。)