我在 centos 机器上安装了 dns,但它不能将 ip 解析为名称,也不能将名称解析为 ip

我在 centos 机器上安装了 dns,但它不能将 ip 解析为名称,也不能将名称解析为 ip

我在 DNS 方面遇到了一些问题。我在 CentOS 7 机器上安装了 DNS,我的 CentOS 机器 IP 是 192.168.0.155 。如果我运行 nslookup FQDN (centos7.unixmen.local) name,它会解析 IP,这意味着我的前向区域正在运行,我的输出是

nslookup centos7.unixmen.local

Server:     192.168.0.155
Address:    192.168.0.155#53

Name:   centos7.unixmen.local

Address: 192.168.0.155

但如果我跑

nslookup 192.168.0.155

Server:     192.168.0.155
Address:    192.168.0.155#53

** server can't find 155.0.168.192.in-addr.arpa.: NXDOMAIN

这意味着反向区域不能解析 IP 到名称。

我的 /etc/named.conf 文件

options {

        listen-on port 53 {
                127.0.0.1;
                192.168.0.155;
                };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { any; };

*/
        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
        forwarders {
                8.8.8.8;
                8.8.8.4;
                };
        forward first;
};


logging {

        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };

};

zone "." IN {
        type hint;
        file "named.ca";
};


zone "unixmen.local" IN {

      type master;
      file "forward.unixmen";
      allow-update { none;};
};

zone "0.168.192.in-add.arpa" IN {

      type master;
      file "reverse.unixmen";
      allow-update { none; };
};

include "/etc/named.rfc1912.zones";

include "/etc/named.root.key

我的反向区域配置文件:/var/named/reverse.unixmen

$TTL 86400

@       IN SOA  centos7.unixmen.local. root.unixmen.local.(

                                        2011071001      ; serial
                                        3600            ; refresh
                                        1800            ; retry
                                        604800          ; expire
                                        86400           ; minimum TTL
)

@                IN     NS      centos7.unixmen.local.

@                IN    PTR      unixmen.local.

@                IN      A      192.168.0.155

@                IN     PTR     192.168.0.155

155              IN     PTR     centos7.unixmen.local.

我的前向区域文件位于 /var/named/forward.unixmen

$TTL 86400

@       IN SOA  centos7.unixmen.local. root.unixmen.local. (

                                        2011071001      ; serial
                                              3600      ; refresh
                                              1800      ; retry
                                             604800     ; expire
                                             86400      ; minimum TTL
)

@                  IN        NS   centos7.unixmen.local.

@                  IN        A       192.168.0.155

centos7            IN        A       192.168.0.155

在我的 CentOS 7 机器上只有一个以太网端口,他使用以太网电缆直接连接到路由器,所有客户端窗口系统都连接到交换机,我的

  • IP 是 192.168.0.155
  • 网关 192.168.0.1
  • dns-192.168.0.1

最近,如果我将自己的 IP 192.168.0.155 设置为 CentOS 7 机器中的 DNS IP,那么互联网浏览就可以正常工作,并且转发区域意味着名称到 IP 正在解析,但 IP 到名称无法解析。

请帮助我解决我的问题。

答案1

看来您的 /etc/named.conf 文件中有一个拼写错误,应该是

zone "0.168.192.in-addr.arpa" IN {

      type master;
      file "reverse.unixmen";
      allow-update { none; };
};

注意 addr 中的 r。

另外,你还在 /etc/named.conf 文件中的以下行附近粘贴了一条不完整的结束注释 */recursion yes;

相关内容