nsupdate 在本地主机上失败 - Bind 8

nsupdate 在本地主机上失败 - Bind 8

我已经通过 rndc 在本地添加了区域 test.net,并且运行正常。接下来,我想通过 nsupdate 更新它,但在本地,我的区域配置是,

zone test.net {type master; file "zones-remote/masters/test.net" ; allow-update{localhost;};};

当我这样做的时候,

nsupdate
server localhost
zone sample.test.net
update add sample.test.net 86400 A 134.23.32.4
send

它给出错误“更新失败:NOTAUTH”

在发送之前通过节目检查,

Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:      0
;; flags:; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
;; ZONE SECTION:
;test.net.                      IN      SOA

;; UPDATE SECTION:
sample.test.net.        86400   IN      A       134.23.32.4

当我尝试的时候,

nsupdate
server localhost
zone test.net #     Actual zone name
update add sample.test.net 86400 A 134.23.32.4
send

然后出现错误“SERVFAIL”。

我的区域文件如下所示,

@     86400      IN  SOA  test.net. sampling.gmail.com. (
                    2014101001
  3h
  1h
  1w
  30m86400s)

@ 84600 NS ns1.test.net.
@ 84600 IN  A 42.42.42.42
ns1 84600 IN A 42.42.42.42

该区域文件是正确的,它可以解析针对其域的查询。

答案1

当您指定 时zone,您将定义所有后续交易的“来源”。除非存在尾随点,否则您指定的记录名称将被视为相对于此来源。

  • 其中zone sample.test.net,记录应该是@sample.test.net.
  • 其中zone test.net,记录应该是samplesample.test.net.

发生 SERVFAIL 的原因是,您请求的记录映射到了sample.test.net.test.net.,而该记录超出了您定义的sample.test.net.区域。

sample.test.net.sample.test.net.我不太清楚为什么您在第一个请求(在 范围内)时收到 NOTAUTH sample.test.net.,但当您运行不受支持的 BIND 版本时,我无法花大量时间推测那里发生了什么。确保您的nsupdate客户端和服务器都运行受支持的版本,如果问题仍然存在,请更新您的问题。

相关内容