- ディレクトリーの作成
ゾーンファイルを置くディレクトリー、/var/namedに置きますが、/var/namedがない場合は以下のコマンドで/var/namedを作成してください。
#cd /var
VAR# mkdir named
- name.zoneファイルの作成
正引きのデータを用意します。以下のようにnamed.zoneファイルをhero-island.zoneと言う名前で作成しました。
$TTL 86400
@ IN SOA you.ドメイン名. root.ドメイン名. (
20070910 ;serial シリアルNOですが、変更したときにセカンダリーに知らせる役目をしています。
10800 ;refresh after 3 hours リフレシュ間隔(3時間)の意味です。
3600 ;retry after 1 hour 再試行時間(1時間)の意味です。
604800 ;expire after 1 week 最大有効期間(1週間)の意味です。
86400 ;minimum ttl of 1 day 生存時間(1日)の意味です。
)
IN NS you.ドメイン名. ネームサーバー名
IN NS ns-tk013.ocn.ad.jp. セカンダリーDNS名です(OCNで指定される筈です。)
;
IN MX 10 you.ドメイン名.
;
router IN A 123.234.123.46 ここがルーターです。
you IN A 123.234.123.47 ここがネームサーバです。
;
www IN CNAME you.ドメイン名. wwwを立ち上げるための定義
mail IN CNAME you.ドメイン名. mailを立ち上げるための定義
ftp IN CNAME you.ドメイン名. ftpを立ち上げるための定義
;
localhost IN A 127.0.0.1 localhostの指定です。
"."を忘れず記入してください、意味が変わってきます。
|
最初に、SOA(Start Of Authority)レコードを記述します。
これはゾーンの開始を宣言し、そのゾーンに関連するパラメータを定義するレコードです。
<名前>は、そのゾーンを示すFQDNのドメイン名です。
$TTL 86400は外部のDNSが、このドメイン情報を参照してキャッシュする際、どれくらいの期間情報を保持するかの指定で86400秒(1日)です。
上記の例では、「ドメイン名.」であるnamed.confで指定されたゾーン名は「@」と省略することができます。
普通のSOAレコードの名前は「@」と記述されます。
NSレコード
「ドメイン名」というドメインに関する情報を持っているネームサーバは「you.ドメイン名.」と
「ns-tk013.ocn.ad.jp.」というホスト名であることを意味しています
MXレコード
MXレコードは、メール・エクスチェンジャを指定します。
上記の例では、「ドメイン名」宛の電子メールは「mail.ドメイン名」に送り付けると言う意味です。
「mail.ドメイン名」では、電子メールを受取るためにsendmail等が動いていることになります。
Aレコード
Aレコードは「ホスト名→IPアドレス」の対応表です。
CNAMEレコード
MXレコードで「ドメイン名」のメール・エクスチェンジャとして「mail.ドメイン名.」を指定しましたが
このホストは「ドメイン名」の別名です。あるホストの別名を指定する場合にCNAMEレコードを使用します。
- 逆引きゾーンファイルの作成
逆引きゾーンファイル(named.rev)をhero-island.revと言う名前で作成しました。
$TTL 86400
@ IN SOA you.ドメイン名. root.ドメイン名. (
20070910 ;serial
10800 ;refresh after 3 hours
3600 ;retry after 1 hour
604800 ;expire after 1 week
86400 ;minimum ttl of 1 day
)
IN NS you.ドメイン名.
IN NS ns-tk013.ocn.ad.jp.
;
46 IN PTR router.ドメイン名.
47 IN PTR you.ドメイン名.
;
|
「named.zone」には、「ドメイン名」に対する正引き(ホスト⇒IPアドレス)のための情報が記述してあります。
それに対し、逆引き(IPアドレス⇒ホスト名)のためのファイルは、ネットワークごとに分割する必要があります。
「named.rev」は「123.234.123.45/60」のネットワークに対するファイルです。
1行目の45.123.234.210.in-addr.arpa.は、逆引きのために使われるドメイン名です。
PTRレコード
「named.zone」の「IN A」で示されるAレコードが「ホスト名⇒IPアドレス」の対応表であったのに対して、
「IN PTR」で示されるPTRレコードは「IPアドレス⇒ホスト名」の対応表になります。
47 IN PTR you.ドメイン名.
の行は「123.234.123.47」というIPアドレスは「you.ドメイン名」のホスト名と対応するという意味になります。
- 逆引きゾーンファイルの作成
ループバックアドレス「127.0.0.1」の逆引きゾーンファイル(local.rev)を作成しました。
local.rev
$TTL 86400
@ localhost.root.localhost. (
20070910 ;serial
10800 ;refresh after 3 hours
3600 ;retry after 1 hour
604800 ;expire after 1 week
86400 ;minimum ttl of 1 day
)
IN NS you.ドメイン名.
;
1 IN PTR localhost.
|
- named.confの修正
named,confは、BINDそのものの基本設定ファイルです。これは通常/etc/named.confですが、
ディストリビューションによっても違ってきます。
例えばLASER5 Linux 6.4はこのとおりですが、Debian系は/etc/bind/named.confです。
/etc/named.confの赤字の部分を修正しました。
* 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-transfer {
123.234.123.45/28;
203.139.160.79/32;
};
};
//
// a caching only nameserver config
//
zone "." IN {
type hint;
file "named.root";
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "local.rev";
};
zone "ドメイン名" IN {
type master;
file "hero-island.zone";
};
zone "45.123.123.123.in-addr.arpa" IN {
type master;
file "hero-island.rev";
};};
|
- named.rootの入手
ここまでで、一応のファイルがきましたが、「named.root」と言うファイルが必要です。
このファイルはルートネームの一覧表のファイルで、これがないとDNSは動作しません。
named.rootはftp://rs.internic.net/domain/named.rootからダウンロードできます。
このファイルを/var/namedのフォルダーにコピーをします。
- resolv.confの修正
「etc/resolv.conf」ファイルをeditで開き、赤字部分を御利用のアドレスに合せて修正します。
search ドメイン名
nameserver 123.234.123.47
nameserver 203.203.123.23OCNのDNSサーバIPアドレスを指定します。
|
- host.confの修正
「etc/host.conf」ファイルをeditで開き、赤字部分を御利用のアドレスに合せて修正します。
order bind.hosts
multi on
|
- /etc/hostsファイルの修正
ここで、使用するローカル端末のホスト名を変更します。
/etc/hostsファイルを以下のように修正しました。
127.0.0.1 localhost この行は、絶対に変更しないでください。
192.168.0.1 you
192.168.0.40 win1
192.168.0.41 win2
192.168.0.42 win3
192.168.0.43 win4
192.168.0.44 win5
192.168.0.45 win6
192.168.0.46 mac1
|
- /etc/HOSTNAMEsファイルの修正
ここでは、HOSTANAMEファイルを修正します。ディストリビューションによっては/etc/hostnameとなっているもののあります。
/etc/HOSTNAMEファイルを以下のように修正しました。
- 再起動をします。