域名解析通常是"域名 → IP",叫正向解析。但网络里还有一类查询是反过来的:"这个 IP 对应哪个域名?"这就是反向 DNS 解析,它依赖的是一种特殊的记录——PTR。
对普通网站来说,PTR 可有可无。但对自建邮件服务器的人来说,PTR 配不好,邮件就可能大量进垃圾箱,甚至被直接拒收。这篇文章讲清正向与反向解析的区别、PTR 的作用、为什么邮件服务器必须配 PTR 和 FCrDNS、PTR 由谁来配、怎么用 dig -x 验证,以及它和 SPF、DKIM 的配合关系。
一、正向解析与反向解析的区别
正向解析是把域名翻译成 IP。你在浏览器里输入域名,系统通过 A 记录(IPv4)或 AAAA 记录(IPv6)拿到 IP,这是绝大多数人熟悉的流程。
反向解析是把 IP 翻译成域名,用的是 PTR 记录。它的应用场景不那么日常,但很关键:
- 邮件服务器判断来信 IP 是否"名正言顺"。
- 日志分析时把 IP 还原成可读的主机名。
- 部分访问控制、审计场景做身份核对。
两者的管理归属也不一样,这点非常重要:
| 对比项 | 正向解析 | 反向解析 |
|---|---|---|
| 映射方向 | 域名 → IP | IP → 域名 |
| 记录类型 | A / AAAA | PTR |
| 查询域 | 你注册的域名(如 example.com) | 特殊域 in-addr.arpa(IPv4)或 ip6.arpa(IPv6) |
| 谁来配置 | 域名持有者在自己的 DNS 服务商处配 | IP 归属方(云厂商/IDC/运营商)配置 |
| 能否自建随便改 | 可以,你自己管域 | 不能,通常只能提交工单或控制台申请 |
| 主要用途 | 网站访问、服务寻址 | 邮件反垃圾、日志可读、审计 |
最关键的一点:反向解析的"主权"在 IP 地址的持有者手里,而不是域名持有者。你买了云服务器,这个 IP 段是云厂商的,所以 PTR 记录必须由云厂商来设置,你自己在域名 DNS 里配是无效的。
二、PTR 记录长什么样
反向解析用的是一个倒过来的特殊域名结构,挂在 in-addr.arpa 下。IPv4 地址 203.0.113.25 的反向查询域名是:
25.113.0.203.in-addr.arpa
注意 IP 的四段是倒序排列的。IPv6 更复杂,用 ip6.arpa,并且把地址按十六进制逐位倒排。
PTR 记录就配置在这个反向域里:
25.113.0.203.in-addr.arpa. IN PTR mail.example.com.
查询它的命令是 dig -x:
# 查询某个 IP 的 PTR 记录
dig -x 203.0.113.25 +short
# 完整输出,看 ANSWER 段里的 PTR
dig -x 203.0.113.25
# 指定 DNS 服务器查询(比如问权威服务器)
dig @8.8.8.8 -x 203.0.113.25 +short
# 用 host 命令(更简洁)
host 203.0.113.25
如果查询返回 NXDOMAIN 或空,说明这个 IP 没有配置 PTR 记录。
三、为什么邮件服务器必须配 PTR
邮件是垃圾邮件重灾区,所以整个生态对发信方的"身份"查得很严。PTR 是其中一环,核心机制叫 FCrDNS(Forward-confirmed reverse DNS,正向确认反向解析)。
FCrDNS 的验证逻辑是:
- 邮件服务器收到来自 IP
203.0.113.25的连接,先查这个 IP 的 PTR,得到mail.example.com。 - 再对
mail.example.com做正向解析,得到它的 A 记录。 - 检查正向解析回来的 IP 是否还是
203.0.113.25。
如果两头对得上,说明这个 IP 和这个域名互相印证,可信度就高。如果对不上,或者根本没配 PTR,很多收件方就会:
- 直接拒收(返回 550 类错误)。
- 判定为高垃圾分,扔进垃圾箱。
- 严重时把整个 IP 段拉黑。
大型邮件服务商(如各大邮箱)的入站策略里,PTR 和 FCrDNS 是常见的基础检查项。对自建邮件服务器的人来说,PTR 配不对,等于一开始就输在起跑线上。
一个规范的发信配置应该做到:
- 该 IP 有 PTR,且 PTR 指向一个真实的、你控制的域名(如 mail.example.com)。
- 该域名的 A 记录解析回同一个 IP,形成 FCrDNS。
- 邮件里用的 HELO/EHLO 名称与 PTR 域名一致。
四、PTR 由谁配置,怎么申请
这是新手最容易卡住的地方:PTR 不在你的域名 DNS 控制台里配,而在 IP 归属方的控制台里配。
分几种情况:
- 云服务器:主流云厂商的控制台通常有"反向 DNS"或"弹性 IP → 反向解析"的入口,可以自助提交 PTR 值;部分场景需要提工单,由厂商协助设置。由于 IP 段是厂商的,最终解释权在厂商。
- 独立服务器托管 / 租用:联系 IDC 或机房服务商,提供你要设置的 PTR 值,由他们向对应 IP 段的权威 DNS 提交。
- 自有 IP 段(申请了独立 IP 段):如果整个网段的解析权在你手里,你可以在自己的反向 DNS 区域(
x.y.z.in-addr.arpa)里自行配置 PTR。
申请时需要提供的信息一般包括:目标 IP、要设置的 PTR 域名、以及该域名的正向 A 记录已能解析回该 IP(很多厂商会先验证这一点才肯配)。
一个常见流程:
1. 在域名 DNS 处,为 mail.example.com 添加 A 记录 -> 你的公网 IP
验证: dig +short mail.example.com
2. 在 IP 归属方(云控制台/工单)申请该 IP 的 PTR -> mail.example.com
3. 等待生效后验证: dig -x 你的公网IP +short 应返回 mail.example.com
4. 再正向验证一遍: dig +short mail.example.com 应返回你的公网IP(FCrDNS 成立)
五、PTR 与 SPF、DKIM、DMARC 的配合
PTR 解决的是"IP 身份正不正",但它不是唯一一环。现代反垃圾是多层次验证,PTR 只是第一层,还要配合:
| 机制 | 作用 | 记录类型/位置 | 验证什么 |
|---|---|---|---|
| PTR / FCrDNS | IP 与域名互相印证 | 反向域 PTR + 正向 A | 发信 IP 是否"名正言顺" |
| SPF | 声明哪些 IP 有权用你的域名发信 | TXT 记录 | 发信 IP 是否被域名授权 |
| DKIM | 用私钥给邮件签名 | TXT(公钥)+ 邮件头签名 | 邮件内容是否被篡改、是否由持有私钥方发送 |
| DMARC | 规定 SPF/DKIM 失败时如何处理 | TXT 记录 | 统一策略,附带报告 |
它们的关系可以这样理解:
- PTR 告诉对方"这个 IP 背后是谁"。
- SPF 告诉对方"这个域名允许哪些 IP 替我发信"。
- DKIM 用来证明"这封邮件确实是这个域名发的,且没被改过"。
- DMARC 则是把 SPF 和 DKIM 的结果汇总,并告诉收件方对不合格邮件采取什么动作。
只配 PTR 不配 SPF/DKIM,或者反过来,都不算完整。尤其是发营销邮件或通知邮件的场景,四项都要到位,送达率才稳。
配置示例(在域名 DNS 里):
; SPF:只允许本机 IP 和指定服务器发信
example.com. TXT "v=spf1 ip4:203.0.113.25 -all"
; DKIM:公钥由邮件系统生成后填入(选择器如 default)
default._domainkey.example.com. TXT "v=DKIM1; k=rsa; p=<公钥>"
; DMARC:策略为拒绝,并接收汇总报告
_dmarc.example.com. TXT "v=DMARC1; p=reject; rua=mailto:dmarc@example.com"
六、验证与排查
配完 PTR 后,务必做几项验证:
# 1. 反查 PTR
dig -x 203.0.113.25 +short
# 期望输出:mail.example.com.
# 2. 正向解析回来,检查是否 FCrDNS
dig +short mail.example.com
# 期望输出:203.0.113.25
# 3. 用多个公共 DNS 交叉验证,排除缓存差异
dig @8.8.8.8 -x 203.0.113.25 +short
dig @1.1.1.1 -x 203.0.113.25 +short
dig @223.5.5.5 -x 203.0.113.25 +short
# 4. 检查 SPF / DKIM / DMARC
dig +short TXT example.com
dig +short TXT default._domainkey.example.com
dig +short TXT _dmarc.example.com
常见问题定位:
- 反查返回空:PTR 还没配,或配了但尚未生效(等 TTL 过期或缓存刷新)。
- FCrDNS 不成立:PTR 指向的域名 A 记录没解析回同一 IP,去补齐正向记录。
- PTR 生效了邮件还进垃圾箱:多半是 SPF/DKIM 没配或配错,或 IP 之前有不良历史被列入黑名单,需要向具体黑名单申请移除。
风险提示:PTR 设置由第三方(IP 归属方)控制,修改需要走工单,变更生效时间不可控。调整邮件相关 DNS 记录前,先记录当前值以便回滚;SPF 记录里
-all表示严格拒绝,如果漏列了合法的发信 IP,会导致正常邮件被拒,切换到-all前务必把全部发信源列全,可先用~all(软失败)观察一段时间。
常见问题
Q:我能自己在域名 DNS 里配 PTR 吗?
A:不行。PTR 记录在反向域 in-addr.arpa 下,由 IP 段归属方管理。你的域名 DNS 只管正向记录。要在云厂商控制台或提工单设置。
Q:不配 PTR 会怎样?
A:对网站基本没影响;对邮件服务器影响很大,容易被判为垃圾、拒收或拉黑。发信 IP 建议都配 PTR。
Q:PTR 和 A 记录是一对一吗?
A:PTR 通常一个 IP 对应一个域名(虽然技术上可以多条),而一个域名可以对应多个 IP(A 记录多条)。为了通过 FCrDNS,PTR 指向的域名应该有一个 A 记录解析回该 IP。
Q:为什么 FCrDNS 要求正反都要对得上?
A:只配 PTR 可能被伪造(随便指向一个域名)。要求反查得到的域名再正查回同一 IP,就排除了"PTR 指向别人域名"的冒用可能,可信度更高。
Q:IPv6 也有 PTR 吗?
A:有,用 ip6.arpa 反向域,地址按十六进制逐位倒排。邮件生态对 IPv6 的反查要求同样存在,配置逻辑与 IPv4 一致。
总结
- 正向解析是域名到 IP(A/AAAA 记录),反向解析是 IP 到域名(PTR 记录),查询域是
in-addr.arpa。 - PTR 的配置权在 IP 归属方(云厂商、IDC、运营商),不在域名持有者,需通过控制台或工单申请。
- 邮件服务器必须配 PTR 并满足 FCrDNS:反查得到的域名要能正查回同一 IP,否则容易被拒收或判为垃圾。
- PTR 要与 SPF、DKIM、DMARC 配合使用,四者互补,缺一都会影响送达率。
- 用
dig -x验证 PTR,用dig <域名>验证 FCrDNS,变更邮件 DNS 前先备份、可先用~all软失败策略验证。
企业QQ咨询




