BIND:使用 NS 将所有查找重定向到不同的名称服务器

BIND:使用 NS 将所有查找重定向到不同的名称服务器

我正在为本地网络创建 DNS 服务器,我需要根据域进行重定向。另外,我对 DNS 还不太熟悉。

我必须将所有“ia.in”域重定向到已经包含其条目的不同本地名称服务器(172.31.1.30),并将所有其他域重定向到任何外部名称服务器(目前我正在尝试使用 Google 的 8.8.4.4)。

我尝试使用转发器,并且它们起作用了,但是 DNS 服务器是一个旧的、缓慢的系统,所以我认为如果我可以使用 NS 条目会更好,这样转发负载主要落在客户端上。

使用 NS 条目时,当我尝试 ping 任何“ia.in”域或任何外部域时,它会出现 servfail。以下是相关的 named.conf 和区域文件条目:

named.conf

zone "." IN {
    type master;
    file "out.redirect";
    allow-transfer { any; };
};

zone "ia.in" IN {
    type master;
    file "ia.zone";
    allow-transfer { any; };
//  The entries below worked
//  type forward;
//  forwarders { 172.31.1.30; };
};

out.redirect

$ORIGIN .
$TTL 1D
@       IN      SOA @ none. ( 0 1D 1H 1W 3H );
* IN NS 8.8.4.4

ia.zone

$ORIGIN ia.in.
$TTL 1D
@       IN      SOA @ none. ( 0 1D 1H 1W 3H );
ia.in IN NS 172.31.1.30

我应该在配置中做哪些改变才能使其正常工作?

答案1

你不能这样做。你现在做的是创造新的权威性区域。它不会将任何东西重定向到任何地方。此外,您可能不应该这样做 - DNS 负载可能可以忽略不计。

答案2

取消注释这些行并使用 Google 的 DNS 代替172.31.1.30

type forward;
forwarders { 172.31.1.30; };

然后重新启动 dns 服务。

service bind restart

相关内容