FreeBSD 4.4 + BIND8
このページ内で使用しているメールアドレスは架空のものです。
はじめに
家庭内LAN機器の名前解決ができるように DNS を設定しました。
環境は以下のとおり。
| OS |
FreeBSD 4.4 |
| named のバージョン |
8.2.4-REL |
| ネットワーク構成 |
こちらを参照 |
| ドメイン名 |
hayagui.com |
| DNSサーバ名とIPアドレス |
chaco: 192.168.0.5 |
ドメインを取得していないは、家庭内の閉ざされた環境なのでどのような名前でもいいと思いますが、
私の場合は、hayagui.comドメインを取得して、
http://www.netgroove.ne.jp/に
ホスティングしてもらっているので、ちょっと設定を注意する必要があります。
ファイル一覧
BINDの設定ファイルは、次の 6 つのファイルが必要です。
ファイル名と格納先は決まっているものではなく、named.conf は /etc/rc.conf 内に書けばいいですし、
その他のファイルは named.conf 内に書けばいいと思います。
named.conf の格納先はデフォルトで /etc/namedb/ です。
| ファイル名(パス付) |
一言でいうと |
説明 |
| /etc/namedb/named.conf |
named設定ファイル |
named が起動するときに読み込む設定ファイルです。以下のファイル名とディレクトリが記述されています。環境に合わせて設定する必要があります。 |
| /etc/namedb/named.root |
ルートキャッシュファイル |
ルートネームサーバを設定するファイルです。入っているやつをそのまま使います。 |
| /etc/namedb/localhost.zone |
localhostの正引きファイル |
localhostで、ホスト名からIPアドレスを引く為のファイルです。新規に作成する必要があります。 |
| /etc/namedb/localhost.rev |
localhostの逆引きファイル |
localhostで、IPアドレスからホスト名を引く為のファイルです。make-localhost を実行すると、作ってくれます。 |
| /etc/namedb/hayagui.zone |
ホストの正引きファイル |
hayagui.com ドメインで、ホスト名からIPアドレスを引く為のファイルです。新規に作る必要があります。 |
| /etc/namedb/hayagui.rev |
ホストの逆引きファイル |
hayagui.com ドメインで、IPアドレスからホスト名を引く為のファイルです。新規に作る必要があります。 |
設定内容
- /etc/namedb/named.conf
-
; ディレクトリパス
options {
directory "/etc/namedb";
};
; ルートネームサーバに関する情報を named.root から読みとるように設定
zone "." {
type hint;
file "named.root";
};
; localhostのホスト名からIPアドレスを引く為のファイルを設定
zone "localhost" {
type master;
file "localhost.zone";
};
; localhostのIPアドレスからホスト名を引く為のファイルを設定
zone "0.0.127.IN-ADDR.ARPA" {
type master;
file "localhost.rev";
};
; localhostのIPv6アドレスからホスト名を引く為のファイルを設定
zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.INT" {
type master;
file "localhost.rev";
};
; hayaguiドメイン内のホスト名からIPアドレスを引く為のファイルを設定
zone "hayagui.com" {
type master;
file "hayagui.zone";
};
; hayaguiドメイン内のIPアドレスからホスト名を引く為のファイルを設定
zone "0.168.192.in-addr.arpa" {
type master;
file "hayagui.rev";
};
>
4行目と6行目の IN-ADDR-ARPA というのは、逆引きを指定する際の特別なドメインです。
- /etc/namedb/localhost.zone
-
; (Time to Live) キャッシュ時間
$TTL 3600
; SOA(Start Of Authority)レコードといって、ネームサーバがドメインでの
; オーソリティを持っていることを宣言するのと、セカンダリネームサーバに対して制御する。
; @ は、デフォルトドメインを指す。root.chaco.hayagui.comは、
; ドメインの管理者のメールアドレス( root@chaco.hayagui.com )の、@ を . に変更したものである。
@ IN SOA chaco.hayagui.com. root.chaco.hayagui.com. (
2002011101 ; シリアル番号。
; 2002年01月11日01番目)
604800 ; ゾーンファイルを得る間隔(単位:秒)。
; 60秒 * 60分 * 24時間 * 7日 = 604800
28800 ; ゾーンファイルを得るのに失敗した時に再試行する間隔(単位:秒)。
; 60秒 * 60分 * 8時間 = 28800
3600000 ; ゾーンファイルがオーソリティを保持している時間(単位:秒)。
; 60秒 * 60分 * 1000時間 = 3600000
2419200 ) ;各レコードの有効期限のデフォルト値(単位:秒)。
;60秒 * 60分 * 24時間 * 30日 = 2419200
;
; NSレコードで、ネームサーバを定義。
IN NS chaco.hayagui.com.
; A(Address)レコード。ホスト名をIPアドレスに定義するためのレコード。
IN A 127.0.0.1
- /etc/namedb/localhost.rev
以下のように実行すると、雛型を作成してくれるので、環境に合わせて設定します。
chaco# sh make-localhost
各意味は、上と同じ。
-
$TTL 3600
@ IN SOA chaco.hayagui.com. root.chaco.hayagui.com. (
2002011101 ; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
IN NS chaco.hayagui.com.
; IPアドレスをホスト名に定義するためのPTR(Pinter)レコード。
; localhostのIPアドレス 127.0.0.1 の最後の値 1 を表す。
1 IN PTR localhost.hayagui.com.
- /etc/namedb/hayagui.zone
-
$TTL 3600
@ IN SOA chaco.hayagui.com. root.chaco.hayagui.com. (
2002011101 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
86480 ) ; Minimun TTL
IN NS chaco.hayagui.com.
; MX(Mail exchange)レコード。ドメインに配送されたメールを送るメールサーバを指定する。
; メールサーバ名の前の数字は、優先順位を意味する。
IN MX 10 chaco.hayagui.com.
; ホスト名
chaco IN A 192.168.0.5
jhon IN A 192.168.0.6
mico IN A 192.168.0.7
mimi IN A 192.168.0.10
; ルータ
brl04f IN A 192.168.0.1
; CNAME(Canonical NAME)レコード。
; AレコードでIPアドレスを定義したホストに別名を設定する。
gw IN CNAME brl04f.
; 無線LAN
gwap11s1f IN A 192.168.0.3
gwap11s2f IN A 192.168.0.4
; ホスティングしている www.hayagui.com へ行くように設定
; これを www IN CNAME chaco. と書くと、家庭内のhayagui.com にアクセスすることになる。
www IN A 211.13.192.20
- /etc/namedb/hayagui.rev
-
$TTL 3600
@ IN SOA chaco.hayagui.com. root.chaco.hayagui.com. (
2002011110 ; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
IN NS chaco.hayagui.com.
;
5 IN PTR chaco.hayagui.com.
6 IN PTR jhon.hayagui.com.
7 IN PTR mico.hayagui.com.
10 IN PTR mimi.hayagui.com.
;
1 IN PTR brl04f.hayagui.com.
;
3 IN PTR gwap11s1f.hayagui.com.
4 IN PTR gwap11s2f.hayagui.com.
クライアントの設定(FreeBSD)
DNSサーバであるマシンもDNSを参照するクライアントになるわけですから、DNSを参照する設定が必要です。
/etc/resolv.conf を次のように設定してください。DNS順序の最初にローカルのDNSを設定し、2番目以降にISPのDNSを設定してください。
この設定は、このDNSを使用する他のOSも同じようにしてください。
domain hayagui.com
nameserver 192.168.0.5
nameserver xxx.xxx.xxx.xxx
nameserver xxx.xxx.xxx.xxx
次に、名前解決の順序を設定するため、/etc/host.conf を次のように設定してください。
# $FreeBSD: src/etc/host.conf,v 1.6 1999/08/27 23:23:41 peter Exp $
# First try the /etc/hosts file
hosts
# Now try the nameserver next.
bind
# If you have YP/NIS configured, uncomment the next line
# nis
これは、hostsファイル->bindの順に検索するような設定です。
動かしてみましょ
FreeBSD起動時に named が起動するように設定します。
/etc/rc.conf を開き、以下のように追加します。
named_enable="YES"
ここで、再起動すると named が起動しますが、/usr/sbin/ndc というものを使用することで再起動なしでも起動できます。
chaco# /usr/sbin/ndc start
/var/log/message を見て、エラーになっていないかを確認してください。
start のところを stop にすれば「停止」。restart とすれば「再起動」となります。
次に動作のテストをしてみましょう。
chaco# nslookup
Default Server: chaco.hayagui.com
Address: 192.168.0.5
> jhon
Server: chaco.hayagui.com
Address: 192.168.0.5
Name: jhon.hayagui.com
Address: 192.168.0.6
> 192.168.0.6
Server: chaco.hayagui.com
Address: 192.168.0.5
Name: jhon.hayagui.com
Address: 192.168.0.6
> www.jp.freebsd.org
Server: chaco.hayagui.com
Address: 192.168.0.5
Name: www.jp.freebsd.org
Address: 203.139.121.132
- jhon と入力して、ホスト名からIPアドレスに変換されることを確認。
- 192.168.0.6 と入力して、IPアドレスからホスト名に変換されることを確認。
- www.jp.freebsd.org と入力して、お外のホスト名の名前が解決されることを確認。
戻る
|