ablog

不器用で落着きのない技術者のメモ

CentOS 5.5 x86 で DNS サーバをたてる手順

Oracle Database 11g R2 RAC で SCAN を使ってみようと思って、VMware Workstation 上の CentOS 5.5 x86DNSサーバをたててみました。

設定

  • bind がインストールされているか確認する
[root@node01 ~]# rpm -qa *bind*
ypbind-1.19-12.el5
bind-libs-9.3.6-4.P1.el5_4.2
bind-9.3.6-4.P1.el5_4.2
bind-utils-9.3.6-4.P1.el5_4.2
bind-chroot-9.3.6-4.P1.el5_4.2
  • named.conf のサンプルがどこにあるか調べる。
[root@node01 ~]# rpm -qs bind-9.3.6-4.P1.el5_4.2|grep named.conf
normal        /etc/dbus-1/system.d/named.conf
normal        /etc/named.conf
normal        /usr/share/doc/bind-9.3.6/sample/etc/named.conf
normal        /usr/share/man/man5/named.conf.5.gz
  • bind のサンプル設定ファイルをコピーするなどする。
[root@node01 ~]# cp /usr/share/doc/bind-9.3.6/sample/etc/named.* /var/named/chroot/etc/
[root@node01 ~]# chmod 640 /var/named/chroot/etc/named.*
[root@node01 ~]# chown root.named /var/named/chroot/etc/named.*
[root@node01 ~]# ln -s /var/named/chroot/etc/named.conf /etc/named.conf
[root@node01 ~]# cp /usr/share/doc/bind-9.3.6/sample/var/named/local* /var/named/chroot/var/named/
[root@node01 ~]# cp /usr/share/doc/bind-9.3.6/sample/var/named/named.* /var/named/chroot/var/named/
[root@node01 ~]# wget ftp://ftp.nic.ad.jp/internet/rs.internic.net/domain/named.root
[root@node01 ~]# mv named.root /var/named/chroot/var/named/
[root@node01 ~]# chmod 640 /var/named/chroot/var/named/local*
[root@node01 ~]# chown root.named /var/named/chroot/var/named/local*
[root@node01 ~]# chmod 640 /var/named/chroot/var/named/named.*
[root@node01 ~]# chown root.named /var/named/chroot/var/named/named.*
  • named.conf を編集する。
[root@node01 ~]# vi /var/named/chroot/etc/named.conf
view "localhost_resolver"
{

...

        zone "ablog.com" {
                type master;
                file "ablog.com.local";
        };
        zone "18.168.192.in-addr.arpa" {
                type master;
                file "18.168.192.in-addr.arpa.local";
        };

};

...

view "internal"{

...

        zone "ablog.com" {
                type master;
                file "ablog.com.local";
        };
        zone "18.168.192.in-addr.arpa" {
                type master;
                file "18.168.192.in-addr.arpa.local";
        }; 

...

};

...

//key ddns_key
//{
//      algorithm hmac-md5;
//      secret "use /usr/sbin/dns-keygen to generate TSIG keys";
//};

...

/*
view    "external"

...

};
*/
  • 正引きのゾーンファイルを作成する。
[root@node01 ~]# vi /var/named/chroot/var/named/ablog.com.local
$TTL    86400
@       IN      SOA     ablog.com. root.ablog.com.(
                        2009020100      ; serial
                        3600            ; refresh
                        900             ; retry
                        604800          ; expire
                        86400           ; negative
)
         IN      NS              ns.ablog.com.
ns       IN      A               192.168.18.121
rac-scan IN      A               192.168.18.131
rac-scan IN      A               192.168.18.132
rac-scan IN      A               192.168.18.133
[root@node01 ~]# chmod 640 /var/named/chroot/var/named/ablog.com.local
[root@node01 ~]# chown root.named /var/named/chroot/var/named/ablog.com.local
  • 逆引きのゾーンファイルを作成する。
[root@node01 ~]# vi /var/named/chroot/var/named/18.168.192.in-addr.arpa.local
@       IN      SOA     ablog.com. root.ablog.com.(
                        2009020100      ; serial
                        3600            ; refresh
                        900             ; retry
                        604800          ; expire
                        86400           ; negative
)
        IN      NS              ns.ablog.com.
121     IN      PTR             ns.ablog.com.
121     IN      PTR             ablog.com.
[root@node01 ~]# chmod 640 /var/named/chroot/var/named/18.168.192.in-addr.arpa.local
[root@node01 ~]# chown root.named /var/named/chroot/var/named/18.168.192.in-addr.arpa.local
  • bind を起動する。
[root@node01 ~]# service named start
[root@node01 ~]# chkconfig --list named 
named           0:off   1:off   2:off   3:off   4:off   5:off   6:off
[root@node01 ~]# chkconfig named on
[root@node01 ~]# chkconfig --list named 
named           0:off   1:off   2:on    3:on    4:on    5:on    6:off
  • resolv.conf を編集する。
[root@node01 ~]# vi /etc/resolv.conf
search ablog.com
nameserver 192.168.18.121

動作確認

  • ホストOSから確認してみる。
> nslookup
*** Can't find server name for address 192.168.0.1: Non-existent domain
*** Default servers are not available
Default Server:  UnKnown
Address:  192.168.0.1

> server 192.168.18.121
Default Server:  [192.168.18.121]
Address:  192.168.18.121

> rac-scan.ablog.com
Server:  [192.168.18.121]
Address:  192.168.18.121

Name:    rac-scan.ablog.com
Addresses:  192.168.18.132, 192.168.18.133, 192.168.18.131

> rac-scan.ablog.com
Server:  [192.168.18.121]
Address:  192.168.18.121

Name:    rac-scan.ablog.com
Addresses:  192.168.18.131, 192.168.18.132, 192.168.18.133

ok !