Update 2002/08/16
Create 2001/10/18
六ちゃん masaharu@mutsuyoshi.net
bind の起動に必要な、usr/local/bind/etc/named/ n
とします。
なお、インターネット側の mutsuyoshi.net は、のレジストラ enom に委託しています。設定がどうなっているかは、「インターネット側のDNSの設定」を参照してください。
// 家庭内LANネットワークの定義
acl localnet { 192.168.0.0/24;
127.0.0.1;
};
// named.conf の位置
// 家庭内LANからのみの利用を認める
// 解決できないものは、プロバイダのDNSを参照する
options {
directory "/etc/named";
pid-file "/etc/named/named.pid";
listen-on { localnet; };
allow-transfer{ localnet; };
allow-query { localnet; };
forward first;
forwarders { プロバイダのDNSプライマリ;
プロバイダのDNSセカンダリ;
};
auth-nxdomain yes;
};
// 家庭内LANに関する、正引き逆引きの記述は、
// named/localnet 以下に、loalnet ディレクトリに記述
view "localnet" {
match-clients { localnet; };
recursion yes;
zone "home.mutsuyoshi.net" {
type master;
file "localnet/home.mutsuyoshi.net" ;
};
zone "0.168.192.in-addr.arpa" {
type master;
file "localnet/0.168.192.in-addr.arpa";
};
zone "0.0.127.in-addr.arpa" {
type master;
file "localnet/0.0.127.in-addr.arpa";
allow-update { none;};
};
zone "localhost" {
type master;
file "localnet/localhost";
allow-update { none;};
};
};
// 外むけのDNSに関する記述
view "world" {
match-clients { any; };
allow-query { any; };
recursion no;
zone "zzz.yy.jp" {
type master;
file "world/zzz.yy.jp";
notify yes;
// zone 転送を許可するIPアドレスを列記する
allow-transfer { localnet;
aaa.bbb.ccc.ddd;
eee.fff.ggg.hhh;
iii.jjj.kkk.lll;
};
};
ディレクトリ named 以下に、ディレクトリ localnet を作成し、そこに置きます。複数のネットワークを同一のBINDで管理しなければならないとき、ディレクトリごとに別れていると判りやすいですよね。
% cd /usr/local/bind/etc/named/localnet
% ls -al
total 14
drwxr-xr-x 2 bind sys 512 Oct 18 10:40 .
drwxr-xr-x 3 bind sys 512 Oct 18 10:38 ..
-rwxr-xr-x 1 bind sys 278 Oct 18 10:28 0.0.127.in-addr.arpa
-rwxr-xr-x 1 bind sys 535 Oct 18 10:29 0.168.192.in-addr.arpa
-rwxr-xr-x 1 bind sys 341 Oct 18 10:31 1.168.192.in-addr.arpa
-rwxr-xr-x 1 bind sys 968 Oct 18 10:38 home.mutsuyoshi.net
-rwxr-xr-x 1 bind sys 247 Oct 18 10:37 localhost
ヘッダ
どの設定もヘッダ部分は同じです。セカンダリDNSを運用する場合は、シリアル番号に注意を払わなければなりませんが、今回は単独のDNSなので、その必要はありません。
ヘッダ部分は、こんな感じです。IN の右側の、604800 は、TTL(Time To Live)です。IND9d??鴫銘屬傍?述し、レコード単位で設定しなければなりません。そうしないと、
[ID 866145 daemon.warning] dns_master_load: localnet/home.mutsuyoshi.net:7: using RFC 1035 TTL semantics
と起動時およびTTLで指定した間隔で、コンソールログに警告が出ます。
@ IN 604800 SOA netserv2.home.mutsuyoshi.net. root.mutsuyoshi.net. (
2001101001 ; Serial
360000 ; Refresh
300 ; Retry
3600000 ; Expire
360000 ); Minimum
IN 604800 NS ns1.home.mutsuyoshi.net.
0.0.127.in-addr.arpa
localhost に対応する逆引き設定です。
1 IN 604800 PTR localhost.
0.168.192.in-addr.arpa
home.mutsuyoshi.net に記述されたもののうち、192.168.0 に対応する逆引きの設定です。
1 IN 604800 PTR rta50i.home.mutsuyoshi.net.
2 IN 604800 PTR dual-pen3.home.mutsuyoshi.net.
3 IN 604800 PTR emikos-mac.home.mutsuyoshi.net.
11 IN 604800 PTR solaris8.home.mutsuyoshi.net.
12 IN 604800 PTR netserv2.home.mutsuyoshi.net.
99 IN 604800 PTR printsrv.home.mutsuyoshi.net.
(たったこれだけのホストのためにDNSを動かしてるなんて、酔狂モノですね。)
home.mutsuyoshi.net
家庭内LANの正引きの記述です。インターネット側の固定IPにも名前を振ってみました。
IN 604800 MX 10 netserv2
IN 604800 MX 20 solaris8
solaris8 IN 604800 A 192.168.0.11
netserv2 IN 604800 A 192.168.0.12
mail IN 604800 CNAME netserv2
imap IN 604800 CNAME netserv2
smtp IN 604800 CNAME netserv2
pop IN 604800 CNAME netserv2
ns IN 604800 CNAME netserv2
ns1 IN 604800 A 192.168.0.12
www IN 604800 CNAME netserv2
ntp IN 604800 CNAME netserv2
rta50i IN 604800 A 192.168.0.1
defaultrouter IN 604800 A 192.168.0.1
dual-pen3 IN 604800 A 192.168.0.2
emikos-mac IN 604800 A 192.168.0.3
netserv2 IN 604800 A 192.168.0.12
printsrv IN 604800 A 192.168.0.99
i82557-0 IN 604800 A 192.168.1.11
gate IN 604800 CNAME rta50i
i-gate IN 604800 CNAME rta50i
o-gate IN 604800 A 203.141.137.38
ns2 IN 604800 A 192.168.0.11
localhost
localhost. IN 604800 A 127.0.0.1
外向きDNSには、逆引きを設定しませんでした。というのは、逆引きはプロバイダ側でプロバイダの名前を設定しているからです。
ディレクトリ named 以下に、ディレクトリ world を作成し、そこに置きます。world/zzz.yy.jp
-------
@ IN 604800 SOA zzz.yy.jp. root.zzz.yy.jp. (
2002070101 ; Serial
360000 ; Refresh
300 ; Retry
3600000 ; Expire
360000 ); Minimum
IN 604800 NS プライマリネームサーバ
IN 604800 NS セカンダリネームサーバ
IN 604800 NS セカンダリネームサーバ
IN 604800 A ppp.qqq.rrr.sss
IN 604800 MX 10 zzz.yyy.jp.
* IN 604800 A ppp.qqq.rrr.sss
* IN 604800 MX 10 zzz.yyy.jp.
以上の記述ができたら、/usr/local/bind/sbin にある、named-checkconf と、named-checkzone を使い、記述に誤りがないかどうか点検します。エラーがなければ、bind を起動します。
Create 2001/10/18