当使用 nsupdate 更新 A 和 PTR 记录时,为什么会出现“更新失败:更新 RR 在区域之外(NOTZONE)”?

当使用 nsupdate 更新 A 和 PTR 记录时,为什么会出现“更新失败:更新 RR 在区域之外(NOTZONE)”?

当使用以下输入到 nsupdate 来同时分配 A 记录和 PTR 记录时:

server dns01.example.com
update delete pup01.example.com. A
update add pup01.example.com. 300 A 172.29.207.209
update delete 209.207.29.172.in-addr.arpa. PTR
update add 209.207.29.172.in-addr.arpa. 300 PTR pup01.example.com.
send

我们得到bind9返回的以下错误:

Sep 23 14:26:12 dns01 named[1070]: client 172.29.207.209#25781/key example.com: view example.com-default: updating zone 'example.com/IN': update failed: update RR is outside zone (NOTZONE)

这个错误是什么意思?

答案1

根据 2004 年的一个错误报告https://mail-index.netbsd.org/current-users/2004/06/19/0002.html,解决方案如下:

A记录的设置和PTR记录的设置之间需要引入一个空行,如下所示:

server dns01.example.com
update delete pup01.example.com. A
update add pup01.example.com. 300 A 172.29.207.209
[blank line goes here]
update delete 209.207.29.172.in-addr.arpa. PTR
update add 209.207.29.172.in-addr.arpa. 300 PTR pup01.example.com.
send

这会导致日志中出现以下内容:

Sep 23 14:40:12 dns01 named[1070]: client 172.29.207.209#36127/key example.com: view example.com-default: updating zone 'example.com/IN': deleting rrset at 'pup01.example.com' A
Sep 23 14:40:12 dns01 named[1070]: client 172.29.207.209#36127/key example.com: view example.com-default: updating zone 'example.com/IN': adding an RR at 'pup01.example.com' A
Sep 23 14:40:12 dns01 named[1070]: client 172.29.207.209#36127/key example.com: view example.com-default: updating zone '29.172.in-addr.arpa/IN': deleting rrset at '209.207.29.172.in-addr.arpa' PTR
Sep 23 14:40:12 dns01 named[1070]: client 172.29.207.209#36127/key example.com: view example.com-default: updating zone '29.172.in-addr.arpa/IN': adding an RR at '209.207.29.172.in-addr.arpa' PTR

希望这可以为某些人节省一些时间。

相关内容