Mar*_*els 4 domain-name-system bind delegation subdomain dns-zone
我正在从 BIND9 DNS 服务器提供服务的工作组迁移到基于 Windows Server 2008 R2 的 AD 域,我想继续使用 BIND 服务器,直到 AD 基础架构准备就绪。
在设置 AD 的过程中,通过 dcpromo,我收到一个警告,我应该确保我们当前的 DNS 服务器将 AD 域名委托给 AD 服务器。
假设我的 AD 域是 mydomain.lan,而我的常规 BIND 域是 example.com。我将我的 BIND 服务器设置为 lan. 的权威,但想委托 mydomain.lan。到 AD 服务器的 IP。
我的named.conf.local包含:
zone "lan" {
type master;
file "zone.lan";
};
Run Code Online (Sandbox Code Playgroud)
而zone.lan包含:
$ORIGIN lan.
$TTL 1H ; 1 hour
@ IN SOA dns.example.com. hostmaster.example.com. (
201008137 ; serial
28800 ; refresh (8 hours)
14400 ; retry (4 hours)
2419200 ; expire (4 weeks)
86400 ; minimum (1 day)
)
IN NS dns.example.com.
$ORIGIN mydomain.lan.
@ IN NS dc1.mydomain.lan.
dc1 IN A 10.10.0.200 ; 'glue' record
Run Code Online (Sandbox Code Playgroud)
当我查询 dns.example.com 的“lan”时,我可以得到预期的答案,但是当我查询“mydomain.lan”或“dc1.mydomain.lan”时,我得到了 NXDOMAIN 响应。到目前为止,我所有的尝试都失败了。
如何正确创建和委派子区域?
更新:更多信息
$ dig mydomain.lan @dns.example.com NS +norecurse
; <<>> DiG 9.7.0-P1 <<>> @dns.example.com mydomain.lan NS +norecurse
; (3 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 23380
;; flags: qr ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;mydomain.lan. IN NS
;; AUTHORITY SECTION:
mydomain.lan. 3600 IN NS dc1.mydomain.lan.
;; ADDITIONAL SECTION:
dc1.mydomain.lan. 3600 IN A 10.10.0.200
;; Query time: 0 msec
;; SERVER: ::1#53(::1)
;; WHEN: Sun Aug 15 00:41:05 2010
;; MSG SIZE rcvd: 64
$ dig @dc1.mydomain.lan dc1.mydomain.lan
dig: couldn't get address for 'dc1.mydomain.lan': not found
$ dig @10.10.0.200 dc1.mydomain.lan
; <<>> DiG 9.7.0-P1 <<>> @10.10.0.200 dc1.mydomain.lan
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21348
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;dc1.mydomain.lan. IN A
;; ANSWER SECTION:
dc1.mydomain.lan. 1200 IN A 10.10.0.200
;; Query time: 6 msec
;; SERVER: 10.10.0.200#53(10.10.0.200)
;; WHEN: Sun Aug 15 00:55:11 2010
;; MSG SIZE rcvd: 50
$ dig @10.10.0.200 mydomain.lan
; <<>> DiG 9.7.0-P1 <<>> @10.10.0.200 mydomain.lan
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24664
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;mydomain.lan. IN A
;; ANSWER SECTION:
mydomain.lan. 600 IN A 10.10.0.200
;; Query time: 0 msec
;; SERVER: 10.10.0.200#53(10.10.0.200)
;; WHEN: Sun Aug 15 01:04:39 2010
;; MSG SIZE rcvd: 46
Run Code Online (Sandbox Code Playgroud)
小智 8
问题出在你的named.conf 中。我猜你已经在你的named.conf 的某个地方定义了转发器。对于您的服务器具有权威性的任何区域,您都需要关闭转发。使用上面的示例,您应该将其更改为如下所示:
zone "lan" {
type master;
file "zone.lan";
forwarders { };
};
Run Code Online (Sandbox Code Playgroud)
一旦你这样做,它应该可以工作。
看起来您缺少“dc1”作为 AD 管理区域中的主机;胶水仅用于查找权威服务器,而不是在到达这些服务器后作为实际内容。
当不使用 时,您可能想要探索dig +trace查看查询的服务器,@server.name以查看正在追踪的委托链。
| 归档时间: |
|
| 查看次数: |
45195 次 |
| 最近记录: |