domain-name-system – 如何将bind9配置为仅具有Internet访问权限的本地DNS?

我想将bind9配置为本地DNS,完全没有Internet访问权限.所以我的虚拟域xy.com中有5台PC.在此域中,无法访问互联网.

DNS服务器具有以下条目:

> pc1.xy.com IN A 10.1.1.1
> pc2.xy.com IN A 10.1.1.2
>.
>.
> pc5.xy.com IN A 10.1.1.5

绑定配置正确,但是当我在DNS服务器上执行“挖掘@localhost pc1”时,它无法正常工作,因为他无法联系根服务器.但我只想让他在当地并回答哪个IP pc1有.

我怎样才能做到这一点?

解决方法

要实现此目的,您需要创建一个假的根区域来替换通常配置的“root.hints”区域.

在named.conf中输入:

zone "." IN {
        type master;
        file "fake.root";
};

并在fake.root中把这个:

$TTL    300
.               IN      SOA ns. hostmaster.xy.com. (
                        20120101 1800 900 604800 86400
                )
.               IN      NS      ns
ns              IN      A       127.0.0.1

这将阻止所有访问互联网的尝试获得真正的根提示.

您也可以将您的pcN.xy.com条目直接放入该根区域 – 它们不需要在他们自己的xy.com区域文件中,因此您可以将以下内容附加到fake.root:

$ORIGIN xy.com.
pc1             IN      A       10.1.1.1
pc2             IN      A       10.1.1.2
pc3             IN      A       10.1.1.3
pc4             IN      A       10.1.1.4
pc5             IN      A       10.1.1.5

除了你可能需要的任何选项{}(ACLs?)之外 – 没有其他要求.

相关文章

vue阻止冒泡事件 阻止点击事件的执行 <div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些