我正在尝试设置BIND,以便它捕获对它的所有请求,并将它们指向一组特定的NS服务器和特定的A记录。
我大约有500个域,并且每天要以10-15个的速度添加新域,所以我不想为每个域明确添加区域。
我当前的设置是:在我的named.conf中,我有一个视图(命名为external),其中包含以下区域:
zone "." {
type master;
file "ext.zone";
};
这匹配所有请求。
ext.zone是:
$ TTL 3600 @ IN SOA。root.nsdomain.com。( 1个 序列号 3600; 刷新 300; 重试 3600; 到期 300); 负缓存TTL 在NS ns1.example.com中 在NS ns2.example.com中 ns1在A 192.0.2.4中 ns2在A 192.0.2.5中 *。在192.0.2.6中
因此,目标是:对于所有NS请求,return ns1.example.com
,ns2.example.com
对于所有A请求,除非它在ns1.example.com
or处ns2.example.com
,return 192.0.2.6
。为了ns1.example.com
回报192.0.2.4
,为了ns2.example.com
回报192.0.2.5
。
这几乎可行,唯一的问题是当我进行挖掘时,我得到:
挖@localhost somedomain.example ; > DiG 9.3.6-P1-RedHat-9.3.6-4.P1.el5_5.3> @localhost somedomain.example ; (找到1个服务器) ;; 全局选项:printcmd ;; 得到了答案: ;; 操作码:QUERY,状态:NOERROR,ID:37733 ;; 标志:qr aa rd;查询:1,答案:1,权限:2,附加:2 ;; 问题部分: ; somedomain.example。在一个 ;; 解答部分: somedomain.example。3600 IN A 192.0.2.6 //符合预期 ;; 权限部分: 。3600 IN NS ns1.example.com。//应该是,我不知道“。”是否 刚开始的时候很糟糕。 。3600 IN NS ns2.example.com。// 往上看。 ;; 其他部分: ns1.example.com。3600 IN A 192.0.2.6 //不应为192.0.2.4 ns2.example.com。3600 IN A 192.0.2.6 //不应为192.0.2.5
我该如何解决?我在做些可怕的事吗?有一个更好的方法吗?