next up previous contents
Next: 4.2.1.3 ゾーン情報 Up: 4.2.1 プライマリゾーンサーバ Previous: 4.2.1.1 conf ファイル 1

4.2.1.2 conf ファイル 2 (BIND9)

さて、ここまではBIND8 と同じ部分であったが、更に BIND9で新たに付け加わった 機能について以下では紹介する。

BIND8 までの機能では、今日ごく当り前となったプライベートアドレスの名前 解決が面倒であった(例えば2つのDNSを外向け用と内向け用に用意するなど)。 こうした部分がview という機能によって簡単に解決出来るのもBIND9 の魅力 の一つである。

acl "mynet" {
        { 192.168.0/24; 127/8; 202.11.97.17/28; };
};
options {
        directory "/etc/namedb";
        allow-transfer { mynet; };
};
view "internal" {
        match-clients { mynet; };
        allow-query { mynet; };
        zone "." {
                type hint;
                file "named.root";
        };
        zone "summer00.wakhok.ac.jp" {
                type master;
                file "summer00.zone";
        };
        zone "16-31.97.11.202.in-addr.arpa" {
                type master;
                file "202.11.97.16-31.rev";
        };
        zone "0.168.192.in-addr.arpa" {
                type master;
                file "192.168.0.rev";
        };
        zone "0.0.127.in-addr.arpa" {
                type master;
                file "localhost.rev";
        };
}; // 次ページに続く
view "external" {
        match-clients { any; };
        zone "." {
                type hint;
                file "named.root";
        };
        zone "summer.wakhok.ac.jp" {
                type master;
                file "summer-ex.zone";
        };
        zone "16-31.97.11.202.in-addr.arpa" {
                type master;
                file "202.11.97-ex.rev";
        };
        zone "0.0.127.in-addr.arpa" {
                type master;
                file "localhost.rev";
        };
};

(この例では、16-31.97.11.202.in-addr.arpa というCIDRでの 逆引きに対応した書き方をしている。詳しくは後の節を読んで欲しい。)

  1. アクセスコントロールリスト
    アドレスリストに名前をつけて、アドレスリストを その名前で代用出来る。

  2. view
    view は言わば相手の所属によって、同じゾーンであっても違う 見せ方を可能にする。但し、view を導入すると、zone 文は 必ずいずれかの view エントリの中に書かなければならない。

    1. match-clients
      後ろにアドレスリストを伴い、このviewに言わば所属する ホストを定義する。従って、このリストにマッチするホストから は、このviewに定義したゾーン情報が見える。

      なお、アドレスマッチの場合と同じく順序性を持っているので、 例のように "external" view では、any で良い。

  3. マスターファイル
    view を用いると、同じゾーンでも相手によって違うので、 それを積極的に用いるならば、マスターファイルは別個に 作成しなければならない。この例では、"summer.zone" と "summer-ex.zone" ファイルがそうである。この場合、summer-ex.zone にはグローバルアドレス を持つホストのみを列挙するが、summer.zone では内側のみで意味を持つ プライベートアドレスに対応するホスト名を載せても良い。 また、プライベートを使う場合には"192.168.0.zone" のようにプライベートの 逆引きも載せておくと良いだろう。

    但し、オフィシャルな名前に変更があれば"summer.zone","summer-ex.zone"の 両方のファイルを変更しなければならない(includeを使って同一性を保つ ようなテクニックもあるが)。



Noriyo Kanayama