技术解析 · 附来源的解答
邮箱地址校验
邮箱地址校验是确认邮箱地址语法正确、符合既定互联网标准的过程。它确保所提供的地址格式正确,并在尝试发送邮件之前确认目标域名已配置为可接收邮件。
语法校验
校验的第一阶段是按照 RFC 5322 标准检查字符串,确保地址包含本地部分、@ 符号和域名部分,并识别非法字符、位置错误的点号或缺失的部分,这些问题会直接导致 SMTP 失败。
DNS 与 MX 记录检查
语法校验之后,系统会执行 DNS 查询以确认域名存在,具体是检查邮件交换(MX)记录。如果某个域名没有 MX 记录或 DNS 解析失败,它就无法接收邮件,任何发送尝试都会导致硬退信。
对发件人信誉的影响
向无效地址发送邮件会提高退信率,这会向收件方 ISP 表明发件人使用的是低质量名单或在发送垃圾邮件。高退信率可能导致 IP 被列入黑名单,并降低合法邮件的送达率。
实际落地
开发者通常在输入环节使用正则表达式或专门的库来实现校验。对于批量名单,使用 SendHQ 或其免费工具(https://sendhq.cc/tools)可以在格式错误的地址进入发信流程之前将其识别出来。
校验示例
像 user@example..com 这样的地址因包含两个连续的点而无法通过语法校验。像 user@nonexistent-domain-12345.com 这样的地址能通过语法检查,但无法通过 DNS MX 记录查询这一阶段。
团队常问的问题
校验能保证邮箱处于活跃状态吗?
不能。校验只能确认格式正确、域名已配置为可收信,但无法确认某个具体账户当前是否处于活跃状态。
校验(validation)和验证(verification)有什么区别?
校验通常指语法和 DNS 检查,而验证往往涉及更深入的检查,以确认地址可以送达。
为什么仅检查语法还不够?
即使邮箱地址格式完全正确,如果域名不存在或未配置为接收传入的 SMTP 流量,该地址仍然无效。
一手资料
- RFC 5322:互联网邮件格式 — RFC Editor
- RFC 5321:简单邮件传输协议(SMTP) — RFC Editor