next up previous contents
Next: conf ファイル 2 (BIND9) Up: プライマリゾーンサーバ Previous: プライマリゾーンサーバ

conf ファイル 1 (BIND8,9)

プライマリゾーンサーバにおける /usr/local/etc/named.conf の 簡単な例である。


options {
        directory "/etc/namedb";
        // query-source address * port 53;
        allow-query { 192.168.0/24; };
        allow-transfer { 192.168.0.2; 192.168.0.3; };
};

zone "." {
        type hint;
        file "named.root";
};

zone "0.0.127.in-addr.arpa" {
        type master;
        file "localhost.rev";
};

zone "summer.wakhok.ac.jp" {
        type master;
        file "summer.zone";
};

zone "0.168.192.in-addr.arpa" {
        type master;
        file "0.168.192.rev";
};

新しいBINDからC言語的な記述になっており、コメントはC言語的な /* comment */ や、C++的な // comment [行末] 、更にシェル的な # comment [行末] が利用できる。

各設定は全てC言語的な { }で囲み、それぞれの記述は ; で終わる。更に、};で終わる 事に注意しなければならない。

  1. オプション設定
    オプション設定は、全て options {...};の中に記述する。 様々なオプションが指定出来るが、基本的には上に上げた4つ程度で 良いだろう。

    1. directory
      ゾーン情報が置かれるディレクトリを指定する。デフォルトは、 named.confと同じディレクトリ(カレント)。

    2. query-source
      問い合わせをする際に以前のDNSは発信元ポートが53に固定されていたが、 新しいBINDでは通常の発信と同じく固定されていない。ファイアーウォール などでこれが禁止されている場合に指定する。

    3. allow-query
      このサーバへの問い合わせに答えるホストアドレスのリストを指定する。このリストに マッチしない相手からの問い合わせは全て拒否される。内部DNSなどで 外からの問い合わせに答えてはいけない場合や、セキュリティ上答えたくない 場合などに指定する。例では、192.168.0からの問い合わせのみに 応える。デフォルトでは any(すべての問い合わせ)に答える。

    4. allow-transfer
      ゾーン転送に応じる相手を指定する。アドレスリストで指定出来る。通常、ゾーン 内部、あるいはセカンダリのみに指定しておくと良いであろう。例では、 192.168.0.2192.168.0.3に対してのみゾーン転送を 許可している。

    5. アドレスリスト
      アドレスリストは ;で区切って複数指定でき、最初の指定からマッチ するまで順にトライする。IPネットで指定したい場合には、ネットマスクを /の後ろに指定する。例えば、192.168/16192.168.*.*にマッチする。逆に、除外する場合には先頭に !を書く。例えば、!10/810.*.*.*を全て否定 する。注意するべきは、先頭から順にマッチするかどうかを調べるので、 any; !10/8; は先に全てにマッチしてしまい 10/8を除外 出来ない。正しくは、逆に、!10/8; any;と書かねばならない。

  2. ヒントファイルの指定
    ルートネームサーバのリストが書かれたファイルを指定する。 実際にInternetに接続して動かす場合には、InterNIC から最新の ファイルを入手する必要がある(ftp.rs.internic.net の /domain/named.root にある)。 通常は入手したファイルを変更する必要はない。 但し、独自のルートサーバを内部DNS用に立ち上げる 場合には変更が必要である。

  3. ゾーンファイルの指定
    ゾーンのドメイン名を zoneの後に記述し、その情報についての 指定をブロック内部に行う。ここに書かれるドメイン名をデフォルトとして、 ゾーンの処理が行われる。

    1. type
      ゾーンのプライマリ、セカンダリの指定を行う。プライマリの 場合は master、セカンダリの場合は slaveである。

    2. file
      ゾーン情報が記述されたファイルを指定する。ファイル名は 任意であるが、分かりやすい名前が良いだろう。 (マスターファイルという)

    ちなみに、options で指定した allow-queryallow-transferをここのブロック内部に記述することも出来る。何も 書かなければ、optionsで指定された内容が適用される。一方、 新しい Dynamic DNSに関連した指定で、allow-updateがあるが Dynamic DNS はまだまだこれからの機能なので利用していない。デフォルト では allow-update{none;}になっている。

    1. 逆引き
      先に説明した逆引きも必要に応じて指定する。特に、localhostの 逆引きは通常必要なので注意する。また、逆引きの際のドメイン名の指定 方法にも注意しなければならない。



Noriyo Kanayama