我的 ISP 为我用于 Postfix 邮件服务器的 IP 地址添加自定义 rDNS (PTR) 记录后要采取的步骤

我的 ISP 为我用于 Postfix 邮件服务器的 IP 地址添加自定义 rDNS (PTR) 记录后要采取的步骤

我在本地机器上运行自己的 HTTP、SMTP 和 DNS 服务器。确切地说,我在 Ubuntu 上安装了 LAMP、Postfix 和 BIND9。一切都很顺利,只是从我的邮件服务器发送的电子邮件经常被远程 SMTP 服务器拒绝,因为缺少正确的 rDNS (PTR) 记录(基本上,我从来没有费心要求我的 ISP 为我更新它,所以它是一个通用的记录)。所以我终于做到了。我的 ISP 更新了我用于所有服务器的 IP 地址的 rDNS 记录(它们都在一台物理计算机上)。因此,IP 解析为我的邮件服务器的主机名,即:

mail.mysite.com

当我使用“nslookup”命令进行反向 DNS 查找时,首先选择 Google 的 DNS 服务器 (8.8.8.8),然后我得到了正确的主机名。但是当我使用自己的 DNS 服务器时,我得到了 servfail 错误。现在我的每台服务器似乎都正常工作。我没有发现任何异常或任何问题。那么我应该等待 DNS 传播吗(我的 ISP 大约 6 小时前更新了一个 IP)或者我个人是否应该更新我的 DNS 服务器设置或其他设置?

答案1

好的,我是这样解决的:

假设我的 IP 地址是 46.249.xx.yy 在文件 named.conf.local 中我写了有关反向 DNS 区域的内容:

zone "xx.249.46.in-addr.arpa" {
type master;
file "/etc/bind/zones/db.46.249.xx";
};

在“zones”目录中的文件 db.46.249.xx 中我执行了以下操作:

;
; BIND reverse data file for local loopback interface
;
$TTL    604800
@    IN    SOA    ns1.xxxxxxxx.com. director.xxxxxxxx.com. (
              2        ; Serial
         604800        ; Refresh
          86400        ; Retry
        2419200        ; Expire
         604800 )    ; Negative Cache TTL
;

@      IN      NS     ns1.
yy     IN     PTR     ns1.xxxxxxxxxx.com.
yy     IN     PTR     mail.xxxxxxxxx.com.

现在,当我重新启动 BIND 时,debug.log 文件中不再出现任何错误,当我运行以下命令时:

nslookup 46.249.xx.yy

然后我得到了两个答案:

ns1.xxxxxxxxx.com

mail.xxxxxxxx.com

当我进行检查时:

命名检查区 xxxxxxxxx.com /etc/bind/zones/db.46.249.xx

我明白了。

PS 简而言之,我的反向 DNS 区域文件全乱了,这与我的 ISP 更新他们拥有的我的静态 IP 的 PTR 记录没有任何关系。

相关内容