Bind9 DNS 反向查找失败

Tom*_*mas 2 domain-name-system ubuntu bind

好的,所以我遇到了一个问题,即我的 bind9 dns 上的反向查找失败

#nslookup 172.16.0.179
Server:     127.0.1.1
Address:    127.0.1.1#53

** server can't find 179.0.16.172.in-addr.arpa: NXDOMAIN
Run Code Online (Sandbox Code Playgroud)

这是我的反向区域:

# nano /var/lib/bind/mosek.intranet.rev.zone

$ORIGIN .
$TTL 604800     ; 1 week
172.16.0.in-addr.arpa   IN SOA  braintree.mosek.intranet. admin.mosek.com. (
                            79         ; serial
                            604800     ; refresh (1 week)
                            86400      ; retry (1 day)
                            2419200    ; expire (4 weeks)
                            604800     ; minimum (1 week)
                            )
                    NS      braintree.mosek.intranet.
$ORIGIN 0.16.172.172.16.0.in-addr.arpa.
$TTL 3600       ; 1 hour
179                     PTR     harbinger.mosek.intranet.
Run Code Online (Sandbox Code Playgroud)

PTR 条目是 bind9 自动生成的

这是我的 /etc/bind/named.conf.local

//
// Do any local configuration here
//
include "/etc/bind/rndc.key";

zone "mosek.intranet" {
        type master;
        file "/var/lib/bind/mosek.intranet.zone";
        allow-update {key rndc-key; };
};

zone "172.16.0.in-addr.arpa"{
        type master;
        file "/var/lib/bind/mosek.intranet.rev.zone";
        allow-update {key rndc-key; };
};


// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";
Run Code Online (Sandbox Code Playgroud)

在我看来,一切看起来都很好。什么可能导致问题?

编辑

我让它工作了,所以这是工作配置:

# cat /etc/bind/named.conf.local
//
// Do any local configuration here
//
include "/etc/bind/rndc.key";

zone "mosek.intranet" {
        type master;
        file "/var/lib/bind/mosek.intranet.zone";
        allow-update {key rndc-key; };
};

zone "0.16.172.in-addr.arpa"{
        type master;
        file "/var/lib/bind/mosek.intranet.rev.zone";
        allow-update {key rndc-key; };
};


// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";
Run Code Online (Sandbox Code Playgroud)

.

# cat /var/lib/bind/mosek.intranet.rev.zone
$ORIGIN .
$TTL 604800     ; 1 week
0.16.172.in-addr.arpa   IN SOA  braintree.mosek.intranet. admin.mosek.com. (
                                79         ; serial
                                604800     ; refresh (1 week)
                                86400      ; retry (1 day)
                                2419200    ; expire (4 weeks)
                                604800     ; minimum (1 week)
                                )
                                NS      braintree.mosek.intranet.              $
$ORIGIN 0.16.172.in-addr.arpa.
$TTL 604800     ; 1 week
179                     PTR     harbinger.mosek.intranet.
Run Code Online (Sandbox Code Playgroud)

Ant*_*gan 7

当使用in-addr.arpa域指定 PTR 记录时,网络 IP 地址的最不重要的部分应该在其余部分之前,即以点十进制表示法指定 IP 地址的通常方式的相反。

来自维基百科关于反向 DNS 查找的文章

IPv4 地址的反向 DNS 查找使用特殊域 in-addr.arpa 中的反向 IN-ADDR 条目。在该域中,IPv4 地址表示为由点分隔的四个十进制数字的串联序列,并附加了二级域后缀 .in-addr.arpa。四个十进制数是通过将 32 位 IPv4 地址拆分为四个 8 位部分并将每个 8 位部分转换为十进制数而获得的。然后将这些十进制数按顺序连接起来:最不重要的 8 位部分首先(最左边),最重要的 8 位部分最后(最右边)。需要注意的是,这与通常以文本形式编写 IPv4 地址的点分十进制约定相反。

在你的情况下,172.16.0.in-addr.arpa应该在你所有的 BIND 配置文件中重写为0.16.172.in-addr.arpa. 例如,区域文件的外观如下:

$ORIGIN .
$TTL 604800     ; 1 week
0.16.172.in-addr.arpa IN SOA  braintree.mosek.intranet. admin.mosek.com. (
                            79         ; serial
                            604800     ; refresh (1 week)
                            86400      ; retry (1 day)
                            2419200    ; expire (4 weeks)
                            604800     ; minimum (1 week)
                            )
                    NS      braintree.mosek.intranet.
$ORIGIN 0.16.172.in-addr.arpa
$TTL 3600       ; 1 hour
179                     PTR     harbinger.mosek.intranet
Run Code Online (Sandbox Code Playgroud)