标签: DNS

  • 自建邮件系统需要理解的 DNS、MX 与 PTR 记录

    整理说明:本文属于“2025-2026 技术笔记整理”系列,于 2026 年 8 月集中整理并公开发布。

    邮件系统的 DNS 基础:MX、A/AAAA 与 PTR 如何配合

    邮件能否稳定收发,首先取决于域名、主机名和公网地址是否形成一致、可验证的身份链。DNS 记录本身不会提升内容质量,也不能替代发信许可,但配置错误会造成投递失败、延迟或信誉判断异常。

    收信入口:MX 指向邮件主机

    MX 记录发布某个域名由哪些服务器接收邮件。记录值必须是主机名,再由该主机名的 A 或 AAAA 记录解析到地址;不要把 MX 直接写成 IP,也应避免让其目标依赖 CNAME。优先级数字越小,发送方越先尝试。

    • 主、备 MX 都必须真实接收该域邮件,并采用一致的反垃圾与队列策略。
    • 不要为了“看起来冗余”填写并不存在或无法转交邮件的备用主机。
    • 没有明确 MX 时虽可能回退到 A/AAAA,但生产环境应发布显式 MX。

    发信身份:正向解析与 PTR

    PTR 是 IP 地址到主机名的反向解析,通常只能由云厂商、机房或地址持有者设置。建议专用发信 IP 对应一个稳定主机名,例如 mail.example.com,且该名称再正向解析回同一 IP。SMTP 的 EHLO 名称也应与这套身份一致。IPv6 发信同样需要相应的 AAAA 与 PTR。

    example.com.       3600 IN MX 10 mail.example.com.
    mail.example.com.  3600 IN A     192.0.2.10
    ; 反向区域由 IP 提供方配置:
    10.2.0.192.in-addr.arpa. IN PTR mail.example.com.

    192.0.2.10 是文档示例地址,不可用于实际部署。若同一主机承担收发,MX、A 与 PTR 应互相吻合;若收信和发信分离,则分别建立清晰的主机名和职责。

    上线顺序与核验

    先用较短但合理的 TTL 发布新记录,确认稳定后再延长缓存时间。切换期间保留旧服务足够长时间,避免仍持有旧缓存的服务器无处投递。可从不同网络检查:

    dig MX example.com
    dig A mail.example.com
    dig -x 192.0.2.10
    openssl s_client -starttls smtp -connect mail.example.com:25
    • 检查主机名拼写、末尾点、IPv4/IPv6 连通性及 SMTP 证书名称。
    • 确认防火墙仅开放所需端口,服务器不是开放中继,并能处理退信。
    • 再配置 SPF、DKIM、DMARC;它们解决授权和对齐问题,不能代替 MX/PTR。

    合规比记录齐全更重要

    完整 DNS 只是基础。应仅向有合法依据或明确订阅关系的收件人发送邮件,提供清晰退订入口,及时清理无效地址,并持续处理投诉与滥用报告。不要购买地址库或伪造发件身份;认证通过也不等于邮件天然可信。