named-checkconf が、以前は機能していた転送ゾーン ファイルでエラーをスローする

named-checkconf が、以前は機能していた転送ゾーン ファイルでエラーをスローする

私は、bind9 構成 (BIND 9.16.1) にゾーンを追加したいと考えていました。このネーム サーバーでサービスされているドメインは約 20 個あり、そのほとんどは 10 年以上稼働しています。

named-checkconf は、新しい conf ファイルだけでなく、古い conf ファイルにもエラーをスローします。古い conf ファイルは、まだ動作しているにもかかわらずです。何かが足りない場合に備えて、bind9 をリロードする勇気はありません。

次のエラーが発生します:

root@ns:/var/cache/bind# named-checkconf test
test:1: unknown option '$ORIGIN'
test:18: unexpected token near end of file
root@ns:/var/cache/bind# cat test
$ORIGIN test.au.
$TTL 3h
@   IN  SOA ns1.example.com.au. david.example.com.au. (
            23042601    # serial
            3h      # refresh
            15m     # retry
            14d     # expire
            12h     # default_ttl
            )
@   IN  NS  ns1.example.com.au.
@   IN  NS  ns2.example.com.au.
@   IN  MX  50  mail.test.au.
@   IN  MX  100 ns.example.com.au.
@   IN  A   123.456.789.1
mail    IN  A   123.456.789.9
www IN  A   123.456.789.1
 
root@ns:/var/cache/bind#

先頭にコメントを入れると、次のような別のエラーが発生します。

root@ns:/var/cache/bind# named-checkconf test
test:1: syntax error near ';'
root@ns:/var/cache/bind# cat test
; 230426 original
;
$ORIGIN test.au.
$TTL 3h
@   IN  SOA ns.example.com.au.  david.example.com.au. (
etc......

何か明らかなことを見逃しているような気がします。

答え1

named-checkconfゾーン ファイルで実行していますが、named-checkconfのような構成ファイルを検証するように作成されているのでnamed.conf、代わりに を使用しますnamed-checkzone

そのように実行する必要がありますnamed-checkzone test.au test

関連情報