目次

BINDでキャッシュサーバ

インストール

# yum -y install bind caching-nameserver bind-chroot

named.conf用意

# cp -p /var/named/chroot/etc/named.caching-nameserver.conf /var/named/chroot/etc/named.conf

named.conf

//
// named.caching-nameserver.conf
//
// Provided by Red Hat caching-nameserver package to configure the
// ISC BIND named(8) DNS server as a caching only nameserver 
// (as a localhost DNS resolver only). 
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
// DO NOT EDIT THIS FILE - use system-config-bind or an editor
// to create named.conf - edits to this file will be lost on 
// caching-nameserver package upgrade.
//
options {
      //listen-on port 53 { 127.0.0.1; };
      //listen-on-v6 port 53 { ::1; };
      directory       "/var/named";
      dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";

      // Those options should be used carefully because they disable port
      // randomization
      // query-source    port 53;     
      // query-source-v6 port 53;

      allow-query     {       // DNSサーバを利用するネットワークを指定
              localhost;
              192.168.0.0/16;
      };
      allow-query-cache {  // キャシュした情報をどのアドレス範囲に提供するか
              localhost;
              192.168.0.0/16;
      };
      allow-recursion{       // DNSサーバをキャッシュサーバとして利用するネットワークを指定
              localhost;
              192.168.0.0/16;
      };
      allow-transfer{        // DNSサーバのゾーンデータの転送先のネットワークを指定
              localhost;
              192.168.0.0/16;
      };
      forwarders{            // このDNSサーバで名前解決ができなかった場合の問合せ先を指定
              8.8.8.8;
      };
};
// rndcを利用する場合、以下のように設定
controls {
        inet 127.0.0.1 allow { localhost; } keys { rndckey; }; // rndcが利用可能なホスト(localhostのみ可)
};

include "/etc/rndc.key";

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
view localhost_resolver {
      match-clients      { localhost; };
      match-destinations { localhost; };
      recursion yes;
      include "/etc/named.rfc1912.zones";
};

view "internal" {     // 内部向けDNSサーバの設定
        match-clients { localnets; };
        match-destinations { localnets; };
        recursion yes;
        include "/etc/named.root.hints";
};

ルートゾーン定義ファイルの作成

# vi /var/named/chroot/etc/named.root.hints
zone "." IN {
      type hint;
      file "named.ca";
};

ルートゾーンの最新化

dig > /var/named/chroot/var/named/named.ca