【发布时间】:2013-02-26 14:36:31
【问题描述】:
我使用 Bind9 作为我办公室的 DNS 服务器。
我们有一个区域:example.com。这必须从我们的 DNS 服务器作为权威解析。
另一方面,我们有一个 sub.example.com。区域,必须转发到其他 DNS 服务器。
当我们在 example.com 上查询任何记录时,绑定答案属性。区。但它对 sub.example.com 的查询失败。因为它不进行转发。它一直在本地寻找答案。
这是 named.conf 文件
zone "sub.example.com" IN { type forward;
forwarders {172.21.238.229;172.21.238.230;};
forward only;
};
zone "example.com" {
type master;
forwarders {};
file "/etc/named/example.com.db";
};
这是example.com.db文件内容:
$ORIGIN example.com.
$TTL 1W
@ IN SOA dnsldes.example.com. postmaster.example.com. (
6 ; serial number
3600 ; refresh [1h]
600 ; retry [10m]
86400 ; expire [1d]
3600 ) ; min TTL [1h]
;
IN NS dnsldes.example.com.
bdred IN A 172.22.2.150
dnsldes IN A 172.21.229.159
这是使用 dig 客户端查询 bdred.example.com 的输出(没问题):
; <<>> DiG 9.8.1-P1 <<>> bdred.sub.example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 9764
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;bdred.sub.example.com. IN A
;; AUTHORITY SECTION:
example.com. 3600 IN SOA dnsldes.example.com. postmaster.example.com. 6 3600 600 86400 3600
;; Query time: 4 msec
;; SERVER: 172.21.229.159#53(172.21.229.159)
;; WHEN: Mon Mar 11 12:55:02 2013
;; MSG SIZE rcvd: 94
这是 dig 查询的答案,它无法正常工作:
; <<>> DiG 9.8.1-P1 <<>> bdred.sub.example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 26555
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;bdred.sub.example.com. IN A
;; AUTHORITY SECTION:
example.com. 3600 IN SOA dnsldes.example.com. postmaster.example.com. 6 3600 600 86400 3600
;; Query time: 4 msec
;; SERVER: 172.21.229.159#53(172.21.229.159)
;; WHEN: Mon Mar 11 13:09:07 2013
;; MSG SIZE rcvd: 94
请问,我们做错了什么?
【问题讨论】:
-
这甚至是一个编程问题吗?
-
您似乎在
example.com区域中缺少sub.example.com的委托(NS RRset)。另外我不明白为什么你应该在这里需要一个type forward区域。无论如何,正如@DaveRook 提到的,这不是 SO 的主题。