DNS setup


自分で LAN を構築してその LAN Router を介してインターネットにつながっている状態で、LAN 内の 他のホストへ telnet ftp をしようとしたとき、接続に時間がかかる(4分以上)ことがありませんか。 これは、LAN 内部での名前解決ができないために、外に出て行って問い合わせを行っているためです。 無駄な動きである上、インターネット上のトラフィックを増やしてしまい迷惑をかけてしまいます。 telnet ftp /etc/hosts に登録すれば防げますが、pop smtp はこれでは駄目で DNS の設定が必要です。 ここでは、プライベートな DNS の設定を紹介したいと思います。

まず、named デーモンがインストールされているか調べましょう。 /etc/rc.d/init.d named があればすでにインストールされています。 されていなければ、セットアップ CD からインストールしてください。

次に、/etc/named.conf を以下のように編集します。 それぞれのファイルの 192.168.0 の部分は自分の LAN IP address に置き換えてください。 また、 ドメイン名の後ろにピリオドが付いているものは必ず入れてください。

acl allowed-hosts {
192.168.0.0/24; localhost;
};

options {
directory "/var/named";
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
// query-source address * port 53;
allow-query { allowed-hosts; };
allow-transfer { allowed-hosts; };
};

//
// this name server works only for hosts in the private zone
// and myself.
//

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

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

zone "
自分のドメイン名" {
type master;
file "prv.zone";
allow-query { allowed-hosts; };
};

自分のドメイン名は外部に登録しないので何を使っても OK です。

zone "0.168.192.in-addr.arpa" {
type master;
file "prv.zone.rev";
allow-query { allowed-hosts; };
};

逆引き用のファイルの設定です。 IP address が逆になっているので気をつけてください。 次に、ここで宣言されたそれぞれのファイルを編集します。

/var/named にすでに named.ca named.locallocalhost.zone ファイルができています。

まず、named.local を変更します。

$TTL 86400
@ IN SOA
自ホスト名.自ドメイン名. root.自ドメイン名. (

2002030901 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS
自ホスト名.自ドメイン名.

1 IN PTR localhost.

次に prv.zone ファイルを作成します。

$TTL 86400
;
$ORIGIN
自ドメイン名.
;
@ IN SOA
自ホスト名.自ドメイン名. root.自ドメイン名. (
2002030901 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
86400 ; Minimum
)
; Define the nameservers and the mail servers
IN NS
自ホスト名.自ドメイン名.
;
; Define localhost
;
localhost IN A 127.0.0.1
;
; Define the hosts in this zone
;
自ホスト名 IN A 192.168.0.1
;
;fixed address machines
;
host-1 IN A 192.168.0.115
host-2 IN A 192.168.0.116
host-3 IN A 192.168.0.117
;address for dynamic addressing
;

次に逆引き用の pr.zone.rev ファイルを追加します。

; zone '自ドメイン名.rev'
;
$TTL 86400
$ORIGIN 0.168.192.IN-ADDR.ARPA.
@ IN SOA
自ホスト名.自ドメイン名. root.自ドメイン名. (
2002030901 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
86400 ; Minimum
)
IN NS
自ホスト名.自ドメイン名.
1 IN PTR
自ホスト名.自ドメイン名.
;
115 IN PTR host-1.
自ドメイン名.
116 IN PTR host-2.
自ドメイン名.
117 IN PTR host-3.
自ドメイン名.

それぞれのホストの最初の数字は、IP address の最後の桁です。

これで完成です。 サービス設定の named にチェックを入れ save して起動してください。 また、それぞれのホストの第一DNSサーバーにこのDNSサーバーの IP address を指定します(この場合 192.168.0.1)dhcp を使っているときには、dhcpd.conf の変更も忘れないでください。 これで、アクセスがスムーズに行くようになります。 また、ホスト名で ping してみて、IP address に変換されていることを確認してください。

戻る





更新日:2004/05/16, 11:10:32