BINDマスターDNS+α設定方法

1.今回の設定の概要

今回はspispi.comというドメイン名を作り、IPアドレスとして192.168.4.140192.168.4.141192.168.4.143を用意し、それぞれに

            192.168.4.140 ⇔ dns.spispi.com

            192.168.4.141 ⇔ www.spispi.com

            192.168.4.143 ⇔ ftp.spispi.com

という名前解決をする。ネットワークはクライアント機を一台含め、計4台の閉じられたネットワークとする。そのネットワーク構成を図1として載せる。

 

図1 ネットワーク構成

 

実際にBINDで名前解決の設定をしても、この名前を使ってhttp://www.spispi.com/のようにアクセスするには、WEBサーバを立てる必要がある。しかし、名前解決ができているかどうかだけを調べるだけならnslookuppingコマンドでも調べる事ができるため、ここではまずBINDの設定を完成させる。

 

2.BINDの初期設定

 BINDがインストールされていれば、/etcディレクトリにnamed.confというファイルがある。ネットワーク管理者はこのファイルに、ドメイン名の設定とゾーンファイルの場所の指定を記述していく。次に挙げるのがnamed.confの中身である。

named.conf(初期設定)

@









 

 

 

A

 

B

// generated by named-bootconf.pl
options {
            directory "/var/named";
};

controls {
            inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};

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

zone "localhost" IN {
           
type master;

            file "localhost.zone";
            allow-update { none; };
};

zone "0.0.127.in-addr.arpa" IN {
            type master;
            file "named.local";
            allow-update { none; };
};

include "/etc/rndc.key";

@      inetで指定するIPアドレスを持つPCからリモート操作できるようにする。現在の設定ではローカルからしかアクセスできない。リモート操作ができてはまずいので、この記述がベスト。デフォルトではこの設定になるので書かなくてもよい。

A      allow-updateはこのファイルを書きかえられる権限を指定する。noneにすればローカル以外は書き換える事ができず、安全である。

B      ファイルの内容をここで展開させている。rndc.keyはランダムキーファイルである。

named.confによって指定のドメイン名、もしくはIPアドレスが来た時、指定のファイルに送る仕組みになっている。"localhost"を探すアクセスが来た時に飛ぶ先であるlocalhost.zoneファイルの中身は次の通りである。


localhost.zone(初期設定)

$TTL      86400
$ORIGIN localhost.

@          1D IN SOA          @ root (
                        42         ; serial (d. adams)
                        3H         ; refresh
                        15M       ; retry
                        1W        ; expiry
                        1D )       ; minimum

            1D IN NS           @
            1D IN A             127.0.0.1

"127.0.0.XXX"のアクセスが来た時に飛ぶnamed.localファイルの中身は次の通りである。


named.local(初期設定)

 

$TTL      86400

@       IN      SOA     localhost. root.localhost.  (

                  1997022700 ; Serial
                  28800      ; Refresh
                  14400      ; Retry
                  3600000    ; Expire
                  86400 )    ; Minimum

        IN      NS      localhost.
1       IN      PTR     localhost.

 

以上の設定は、最低限の安全な設定がされており、雛形である。ネットワーク管理者はこの雛形にzoneファイルの記述を書き加え、DNS設定を増やしていく事になる。設定を始める前に、このファイルのバックアップを取っておいて、万が一きちんと動かなくなった時でも復旧できるようにしておく。

 

 

3.BIND本設定

 

 DNSの設定をnamed.confに書き加えていく。

       ゾーンファイルのある場所を/etc/bindとする。

       ヒントファイルをnamed.rootとする。

       ループバックファイル名を127.0.0とする。これはlocalhostでアクセスする時に必要。

       spispi.comドメインの正引きファイル名をspispi.comとする。

       spispi.comドメインの逆引きファイル名を192.168.4とする。

 

■ファイルの中身

 

ルートファイルであるnamed.confの中身は次の通りである。


 

named.conf


@


A
B
C


D
E
F


G
H
I


J
K
L

options {
          
directory "/etc/bind";

};

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

zone "0.0.127.IN-ADDR.ARPA." {
            type master;
            file "127.0.0";
};

zone "spispi.com" {
            type master;
            file "spispi.com";
};

zone "4.168.192.in-addr.arpa." in {
            type master;
            file "192.168.4";
};

 

@      zoneファイルを格納するディレクトリを指定

A      “.”は、全てのドメインを指している。下の行に記述しているドメインにヒットするものがなければここに来る事になる。

B      hintタイプのファイルである事を指定。

C      named.rootの中身については、世界共通の設定である。named.confの中に目的のドメイン名を見つけられなかった場合、comドメインやjpドメインなどの最上位のドメインを管理するDNSサーバに飛ぶ必要がある。そのための場所(IPアドレス)が書かれたファイルである。ごくたまに更新されるため時々更新日をチェックして、新しいもので上書きする。最新版はftp://rs.internic.net/domain/named.rootにある。

D      ループバックファイルのルートドメインを指定。IPアドレスを逆に書く部分に注意。127.0.0.xxx/8のセグメントの名前解決要請が来た時にここに飛んでくるという記述。

E      masterタイプは、プライマリタイプでありセカンダリ(スレーブ)ではないという事を表している。

F      ループバックファイル名を指定している。このように、そのままの名前を付けると分かりやすい。

G      spispi.comドメインを名前解決要請が来た時にここに来る設定。spispi.comドメインの正引きゾーン。

H      masterタイプ。

I      spispi.com正引きファイルを指定。

J      spispi.com逆引きゾーン。192.168.4/22セグメントの名前解決要請が来た時に、ここが選択される。

K      masterタイプ。

L      spispi.com逆引きファイルを指定。

 


spispi.comの正引きファイル

 


spispi.com

@
A
B
C
D

E
F
G

H

I

J

K
L
M

N

$TTL 86400
$ORIGIN spispi.com
@          IN         SOA      dns.spispi.com. root.spispi.com. (
            1
            10800
            3600
            604800
            86400  );

           
IN         NS        dns.spispi.com.

            IN         A          192.168.4.140

            IN         MX        10         mail.spispi.com.

dns        IN         A          192.168.4.140
www      IN         A          192.168.4.141
ftp         IN         A          192.168.4.143

root       IN         CNAME  www.spispi.com.

@      TTLとはキャッシュした情報の生存時間。短すぎてはいけない。

A      ORIGINとはこのゾーンが属するDNSの階層の事である。ルートドメインがORIGINの事である(ここではspispi.com$ORIGIN(スペース)に続けて書く事でORIGINを任意に指定できる。すでにORIGIN”spispi.com”であるため、実際はここで指定する必要はない。

B      @ORIGINが入る。つまり、この行は「spispi.com  IN  SOA  dns.spispi.com.  root.spispi.com.  (」と読み替えられる。SOAStart Of Authorityの略)の後にはホスト名と管理者のメールアドレスを書く。root.spispi.com.のように、メールアドレスではあるが、”@””.”と書く点に注意。

C      シリアル番号。管理者が自由につけてよい。通し番号や日付など、更新した順に付ける場合が多い。

D      セカンダリサーバが、ゾーンデータの更新チェックをする間隔(単位:)

E      プライマリサーバが応答しないときに再度参照する間隔(単位:)

F      セカンダリサーバが、ここで設定した時間になってもプライマリサーバにアクセスできないとき、元の情報を破棄するまでの時間(単位:)

G      キャッシュした情報の生存時間(TTL)のデフォルト値(単位:)

H      NSName Serverの略。始めの空白は、Bで@を指定しているので省略できる。空白には@が入ると見なせばよい。spispi.comのネームサーバはdns.spispi.comである事を表している。ドメイン名をそのまま指定するときは最後にピリオドを打つ必要がある。

I      AAddressの略で、ホスト名に対応したIPアドレスを設定する。spispi.com192.168.4.140に変換する。

J      MXMail eXchange の略。spispi.comのメールの転送先を指定。

K      英単語にピリオドが付いていない場合は、その後にORIGINを付け加えて解釈する。この場合、dns.spispi.comとなる。dns.spispi.com192.168.4.140に変換する。

L      www.spispi.com192.168.4.141に変換する。

M      ftp.spispi.com192.168.4.143に変換する。

N      CNAME Canonical Name(基準名)の略で、ホストに対して別名を設定する。root.spispi.comwww.spispi.comの別名である事を指定している。192.168.4.140に変換する。


 

spispi.comの逆引きファイル

192.168.4


@

A




B

C
D
E

$TTL      86400
@          IN         SOA      dns.spispi.com. root.spispi.com. (

            1
            3H
            1H
            1W
            1D )

            IN         NS        dns.spispi.com.

140        IN         PTR       dns.spispi.com.
141        IN         PTR       www.spispi.com.
143        IN         PTR       ftp.spispi.com

@      @4.168.192.in-addr.arpaである(named.confを参照)。

A      以下4行はこういう記述でもOK。(H=1時間、W=1週間、D=1日、M=1分)

B      192.168.4のセグメントのDNSサーバはdns.spispi.comである事を表す。

C      PTRPointerC言語のポインタ)の略で、IPアドレスに対応したホスト名を設定する。はじめの”140”はピリオドが付いていないのでORIGINが後ろに付く。つまり140.4.168.192.in-addr.arpa192.168.4.140dns.spispi.comに変換する。

D      192.168.4.141www.spispi.comに変換する。

E      192.168.4.143ftp.spispi.comに変換する。

 

 

ループバックファイル

127.0.0


@






A
B

$TTL      86400
@          IN         SOA      dns.spispi.com. root.spispi.com. (
            1
            10800
            3600
            604800
            86400 )

            IN         NS        dns.spispi.com.
1           IN         PTR       localhost.

@      @0.0.127.in-addr.arpaを指している。

A      0.0.127.in-addr.arpaのネームサーバはdns.spispi.comである事を表す。

B      127.0.0.1localhostに変換する。


 

4.BINDの起動

 

BINDの起動はコマンド”service named start”によって行なわれる。サービスを止める時は”service named stop”、サービスを再起動する時は”service named restart”コマンドを使用する。

 

5.リゾルバの設定

リゾルバとは、ブラウザやnslookupなどでホスト名を付けずにアクセスした時、自動的にホスト名を付けてアクセスする機能の事である。

/etc/resolv.confを編集する。

search localdomain

などと書かれている行があるので「localdomain」を「yahoo.co.jp」に書き換えると、

# nslookup

>www

と指定しただけで、

>www
Server:             192.168.0.10
Addrss:             192.168.0.10#53
Non-authoritative answer:
Name:   www.yahoo.co.jp
Address:   210.81.3.238
>

と、www以下に「.yahoo.co.jp」を付けて検索してくれるようになる。

また、ブラウザで「http://www」でアクセスしてみてもよい。yahooのサイトに飛ぶ事が確認できるだろう。

 

 




100MB無料ホームページ可愛いサーバロリポップClick Here!