DNSであるBINDのインストール方法と設定方法

設定したい内容

管理するドメイン名:hoge.jp (正引き、逆引きあり)

①インストール
②rootヒント更新
③ゾーンファイル
④named.conf

※IPv4の名前解決のみとする

インストール

rpmからインストールする。

・bind-9.8.2-0.10.rc1.el6_3.5.x86_64  必須
・bind-chroot-9.8.2-0.10.rc1.el6_3.5.x86_64  セキュリティ上あったほうがよい
・bind-utils-9.8.2-0.10.rc1.el6_3.5.x86_64    digとかnslookupとかあればよい

[root@server]# yum install -y bind
     ・
   (中略)
     ・
Complete!
[root@server]#

 

ゾーン設定

正引き用のゾーンファイル

[root@server]# vi /var/named/hoge.jp.zone
$TTL 3H
@       IN SOA  @ hoge.jp. (
                                        2011052002      ; serial
                                        10800   ; refresh(1D)
                                        3600    ; retry(1H)
                                        604800  ; expire(1W)
                                        86400 ) ; minimum(3H)
;NS
        IN      NS              dns.hoge.jp.
;MX
        IN      MX      10      dns.hoge.jp.
;Hosts
dns     IN      A               192.168.0.61
[root@server]# chown root:named /var/named/hoge.jp.zone


 逆引き用のゾーンファイル

[root@server]# vi /var/named/hoge.jp.rev
$TTL 3H
@       IN SOA  @ hoge.jp. (
                                        2011052002      ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        IN      NS              dns.hoge.jp.
        IN      MX      10      dns.hoge.jp.
61      IN      PTR     dns.hoge.jp.
[root@server]# chown root:named /var/named/hoge.jp.rev

 

[チェックコマンド]

ゾーンファイルのチェック

[root@server]# named-checkzone usage: named-checkzone [-djqvD] [-c class] [-f inputformat] [-F outputformat] [-t directory] [-w directory] [-k (ignore|warn|fail)] [-n (ignore|warn|fail)] [-m (ignore|warn|fail)] [-r (ignore|warn|fail)] [-i (full|full-sibling|local|local-sibling|none)] [-M (ignore|warn|fail)] [-S (ignore|warn|fail)] [-W (ignore|warn)] [-o filename] zonename filename 
[root@server]# 
[root@server]# named-checkzone /var/named/hoge.jp.zone 
[root@server]#

 

named.conf設定

[root@server]# vi /etc/named.conf
//
// named.conf
//
// Provided by Red Hat bind 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.
//

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";
        allow-query     { localhost; };
        recursion no;
        hostname "dns.hoge.jp";                                   ←追加する
        version "unknown";                                   ←追加する
        notify no;                                   ←追加する
        allow-transfer {none; };                                   ←追加する


        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";
};

logging {
        channel "default_syslog" {                                   ←追加する
        syslog deamon;                                   ←追加する
        };                                   ←追加する
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
        category default { "default_syslog"; };                                   ←追加する
};

zone "." IN {
        type hint;
        file "named.ca";
};

zone "hoge.jp" {                                    ←追加する
        type master;
        file "hoge.jp.zone";
};
zone "0.0.168.192.in-addr.arpa" {
        type master;
        file "hoge.jp.rev";
};

include "/etc/named.rfc1912.zones";
[root@server]#

 


[チェックコマンド]
コンフィグファイル(named.conf)のチェック

[root@server]# named-checkconf
usage: named-checkconf [-h] [-j] [-p] [-v] [-z] [-t directory] [named.conf]

[root@server]#
[root@server]# named-checkconf /etc/named.conf
[root@server]# 

 

rndc コマンド用の秘密鍵

[root@server]# rndc-confgen -a -b 512 -u named -r keyboard
start typing:
...............................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
...........................
stop typing.
wrote key file "/etc/rndc.key"

 

ipv4のみに対応させるため以下の設定を追加。IPv6はサポートしない。

[root@server ]# vi /etc/sysconfig/named
  OPTIONS="-4"    ←最終行に追加する    

Bindの起動

[root@server]#/etc/rc.d/init.d/named start
/etc/rc.d/init.d/named restart
named を停止中: .                                          [  OK  ]
named を起動中:                                             [  OK  ]
[root@server]#

動作確認

[root@server]# dig @localhost dns.hoge.jp

; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> @localhost dns.hoge.jp
; (2 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64930
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;dns.hoge.jp.               IN      A

;; ANSWER SECTION:
dns.hoge.jp.        10800   IN      A       192.168.0.61

;; AUTHORITY SECTION:
hoge.jp.            10800   IN      NS      dns.hoge.jp.

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sun May  6 19:15:47 2012
;; MSG SIZE  rcvd: 63

[root@server]#