説明
自動プラグインは「旧スタイル」DNSサーバーに使用される。ディスク上に存在するプリロードされたファイルから配信する。ゾーンファイルに署名(すなわち署名付き、すなわちDNSSECを使用)が含まれている場合は、正しいDNSSEC応答が返される。NSECのみサポートされている!この設定を使用する場合、あなたがゾーンファイルを再署名する責任を負う。新しいゾーンまたは変更されたゾーンは、SOAのシリアル番号が変更された場合にのみ、自動的にディスクから取得される。ゾーンがゾーン転送を介して更新されない場合は、シリアルをマニュアルで変更する必要がある。
構文
auto [ZONES...] {
directory DIR [REGEXP ORIGIN_TEMPLATE]
reload DURATION
}
ZONESは、権威を保有する必要があるゾーンである。空の場合、設定ブロックからのゾーンが使用される。
directory
は、指定されたDIRからゾーンをロードする。ファイル名がREGEXPと一致する場合、それはオリジンを抽出するために使用される。ORIGIN_TEMPLATEは、オリジンのテンプレートとして使用される。{<number>}
のような文字列はファイル名の一致する部分に置き換えられる。例えば、{1}
は最初の部分、{2}
は2番目の部分である。デフォルトはdb\.(.*) {1}
、すなわちファイルを名前に持つdb.example.com
の場合、抽出されたオリジンはexample.com
になる。reload
は、SOAバージョンとゾーンファイルが変更された場合のゾーンの再ロードを行う間隔。CoreDNSはファイルの削除と追加を確認するためにどれくらいの頻度でディレクトリをスキャンすべきかを指定する。デフォルトは1分。0
の値は、変更をスキャンしてロードしないことを意味する。例:30s
は30秒ごとにゾーンファイルを検査し、シリアルが変更されるとゾーンを再ロードする。
ゾーン転送を有効にするには、transferプラグインを参照する。
fileプラグインのすべてのディレクティブがサポートされている。autoは特定のゾーンに対するクエリのみを受け取る可能性があるにもかかわらず、検出されたすべてのゾーンをロードすることに注意する。すなわち、
. {
auto example.org {
directory /etc/coredns/zones
}
}
example.COM
のゾーンを喜んで取得するが、これは決して照会されないことになる。なぜならautoディレクティブはexample.ORG
の権威を保有しているのみであるため。
例
/etc/coredns/zones/org
からorg
ドメインをロードし、インターネットへの転送を許可するが、通知は10.240.1.1に送信する。
org {
auto {
directory /etc/coredns/zones/org
}
transfer {
to *
to 10.240.1.1
}
}
/etc/coredns/zones/org
からorg
ドメインをロードし、www.db.example.org
のようなファイル名を探す。そしてexample.org
はオリジンである。45秒ごとにスキャンする。
org {
auto {
directory /etc/coredns/zones/org www\.db\.(.*) {1}
reload 45s
}
}
その他
root プラグインを使用すると、ゾーン ファイルの場所を指定できます。送信ゾーン転送を有効にするには、transfer プラグインをご覧ください。