这是我的named.conf.local
zone "domain.ext" {
type master;
file "/etc/bind/zones/domain.ext.db";
allow-update {localhost;};
};
以及 domain.ext.db 文件:
;
; BIND data file for domain.ext
;
$TTL 3h
@ IN SOA ns1.dmian.ext. email.domain.ext. (
1 ; Serial
3h ; Refresh after 3 hours
1h ; Retry after 1 hour
1w ; Expire after 1 week
1h ) ; Negative caching TTL of 1 day
;
@ IN NS ns1.domain.ext.
@ IN NS ns2.domain.ext.
domain.ext. IN MX 10 mail.domain.ext.
domain.ext. IN A 10.10.10.1
ns1 IN A 10.10.10.1
ns2 IN A 10.10.10.1
www IN CNAME domain.ext.
mail IN A 10.10.10.1
ftp IN CNAME domain.ext.
api.domain.ext. IN A 10.10.10.1
nsupdate
命令将会失败:
nsupdate
> update add ss.domain.ext 1 A 10.10.10.2
> send
> update add ss.domain.ext. 1 A 10.10.10.2
> send
在两种情况下都会出现以下错误:
更新失败:NOTAUTH
我不想使用密钥。我只需要从本地更新。
答案1
即使具有足够的权限,Bind 也无法访问 /etc/bind/zones,因此我将区域文件位置更改为 /var/lib/bind,现在 nsupdate 可以很好地更新区域。