我的ISP为我的Postfix邮件服务器添加了一个IP地址的自定义rDNS(PTR)logging之后采取的步骤

我在本地机器上运行自己的HTTP,SMTP和DNS服务器。 在Ubuntu上我有LAMP,Postfix和BIND9。 一切都很好,除了从我的邮件服务器发送的电子邮件通常由于缺乏正确的rDNS(PTR)logging而被远程SMTP服务器拒绝(基本上,我从来不想让我的ISP为我更新它,所以这是一个通用的)。 所以最后我做到了。 我的ISP更新了我为所有服务器使用的IP地址的rDNSlogging(它们都在一台物理计算机上)。 所以IPparsing为我的邮件服务器的主机名,即:

mail.mysite.com

当我使用“nslookup”命令反向DNS查询时,首先selectGoogle的DNS服务器(8.8.8.8),然后我得到正确的主机名。 但是当我使用我自己的DNS服务器,我得到servfail错误。 现在我的每台服务器似乎都正常工作。 我没有看到任何exception或任何问题。 所以我应该等待DNS传播(我的ISP在6小时前更新了一个IP)或者是否有我个人应该更新DNS服务器的设置或其他内容?

好的,所以我解决了这个问题:

假设我的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

然后我得到2回答:

ns1.xxxxxxxxx.com

mail.xxxxxxxx.com

而当我运行检查:

named-checkzone xxxxxxxxx.com /etc/bind/zones/db.46.249.xx

我确定。

PS总之,我的反向DNS区域文件都搞砸了,它真的没有任何关系我的ISP更新我的PTRlogging,我的静态IP,他们拥有。