マスターサーバーには、次の 2 つの種類があります。
「ゾーンマスターサーバー」。 各ゾーンには、そのゾーンの「マスター」サーバーが 1 つあります。 ゾーンのマスターサーバーは、そのゾーンの「正規」サーバーです。
「ゾーンスレーブサーバー」。 ゾーンには、1 つ以上の「スレーブ」マスターサーバーがあります。 「スレーブ」マスターサーバーは、その DNS データをゾーンのマスターサーバーから入手します。
サーバーをある特定のゾーンのマスターサーバーに指定する場合は、そのサーバーの named.conf ファイルに以下の文を追加します。
ゾーンファイル用のディレクトリを作成します。
次の行は、指定されたディレクトリ内でゾーンデータファイルを探すように DNS ネームサーバーに指示します。 このディレクトリは、スーパーユーザーの所有とし、権限を 0700 に設定することが推奨されます。 また、このディレクトリが、ネームサーバー起動時にネームサーバーからアクセスできるファイルシステム上に存在することが推奨されます。
options { directory "/var/named"; }; |
オプションセクション内の文はグローバルに適用可能な構成オプションであり、ネームサーバーのデフォルトです。 詳細は、named.conf(4) のマニュアルページを参照してください。
ゾーンのマスターレコードを作成します。
以下の行は、DNS ネームサーバーをゾーンのマスターサーバーとして指定します。 ゾーン定義は、キーワード zone で始まり、ドメイン、クラスの順に続きます。 in はインターネットクラスを意味します。これはデフォルトであるため省略できます。 このレコードは、ゾーンに対する権限をサーバーに与える SOA (Start of Authority、権限の開始) レコードの場所もサーバーに示します。 ファイル db.doc.sun.com は、オプション文で指定されたディレクトリに存在しなければなりません。
zone "doc.sun.com" in { type master; file "db.doc.sun.com"; }; |
以下の行は、サーバーをゾーンの逆アドレスマッピングのマスターサーバーとして使うことを指定します。 逆アドレスゾーンは、そのゾーンにおける IP アドレスを逆にならべ、in-addr.arpa がこれに続きます。 たとえば、doc.sun.com ゾーンの IP アドレスが 10.0.0 だとします。この場合、逆アドレスゾーンは 0.0.10.in-addr.arpa になります。
zone "0.0.10.in-addr.arpa" in { type master; file "db.10.0.0"; }; |
ローカルループバックインタフェースのマスターレコードを作成します。
次の行は、サーバーをループバックインタフェースのマスターサーバーとして指定します。
ループバックホストは常に、0.0.127.in-addr.arpa で識別されます。
次に示す構成ファイルの行は、そのサーバーをループバックホストの逆アドレスドメインでマスターサーバーとして使い、正規の hosts ファイルとして named.local を使うことを示すものです。
zone "0.0.127.in-addr.arpa" in { type master; file "db.127.0.0"; }; |
ルートのヒントとなるファイルを作成します。
zone "." in { type hint; file "named.ca"; }; |
ファイル named.ca には、ルートゾーンのネームサーバーの場所が記述されています。 上記の doc.sun.com ゾーンの場合、これは sun.com ドメインのネームサーバーです。