如何在 BIND 9 中为本地主机添加 CNAME?

如何在 BIND 9 中为本地主机添加 CNAME?

我正在从事 Web 开发,并在我的计算机上托管网站的本地版本。我有 Linux Slackware 14.0 和 BIND 9.9.1-P3。在我的 named.conf 中,我有以下内容:

zone "localhost" IN {
    type master;
    file "caching-example/localhost.zone";
    allow-update { none; };
};

在localhost.zone中:

$TTL    86400
$ORIGIN localhost.
@           1D IN SOA   @ root (
                    56      ; serial (d. adams)
                    3H      ; refresh
                    15M     ; retry
                    1W      ; expiry
                    1D )        ; minimum

            1D IN NS    @
            1D IN A     127.0.0.1

假设我有一个名为的域名dubai,我想将其引用到 localhost。我尝试将 localhost 的 CNAME 记录添加到 localhost.zone 中:

dubai   IN  CNAME   localhost.

但它不起作用。我该如何为 localhost 添加 CNAME,以便我可以在我的机器上托管多个网站?

答案1

您正在使用的区域文件用于反向查找区域0.0.127.in-addr.arpa,您需要使用可以包含dubai.localhost.处理这些记录的区域。

看来您真的只是想使用您的/etc/hosts文件,而不是设置 BIND 服务。

如果您确实想使用 BIND,则应创建正向查找区域。要使用这些名称,您可以创建一个zone ".",但这会破坏指向此 DNS 服务器的系统的实际互联网名称解析。最好创建类似 的内容zone "dev.localhost",并使用以下行的区域文件:

@ IN A 127.0.0.1
dubai IN CNAME @

相关内容