Important: チェックポイント
□ ターゲット /usr/pkgsrc/net/bind97 □ /etc/rc.conf named9=yes named=no □ 設定ファイル /etc/named.conf /etc/namedb/ 以下のゾーンファイル群 □ ポート番号 53/udp □ 動作の確認 psとってnamedが動いている。53/udpが開いている。
OS 標準の named は使いません。 pkgsrc の named へ切替えます。 最近は BIND 9.7.x [1] を使っています(最新版は常に様子見というポリシーであるべきです)。
注意: # や % の意味が分からない人は 用語 を参照してください。
% su root # cd /usr/pkgsrc/net/bind97 # make install
Caution |
2011/04 以降: make packege ではなく make install を使ってください。 事情の詳細は the Section called 2011 春: make install および make package の動作が変わる 節を参照してください。 |
OS 起動時に bind も起動するように設定してください。
# cp -p /usr/pkg/share/examples/rc.d/named9 /etc/rc.d/ # echo named=no >> /etc/rc.conf # echo named9=yes >> /etc/rc.conf注意: OS 標準の BIND 8 が起動しないように、 念のため named=no も書いておくべきです。
設定ファイル /etc/named.conf の編集をしてください(後述)。
テスト(1): bind は起動するか?
# /etc/rc.d/named9 start動いていることを確認してください。
# ps auxww |grep named # fstat |grep named # netstat -na|grep 53注: 53 はポート番号。 ポート番号は設定次第なので仕様書に書いてある番号に読み替えてください。 fstat や netstat で表示される「*:53」は 「全インターフェイスに対し port 53 を開いている意味」です。 「*」は「全部」を意味する正規表現です。
注意: ps をとって /usr/sbin/named ではなく /usr/pkg/sbin/named が 動いていることを確認してください! パスをよく見てください(/usr/sbin ではなく /usr/pkg/sbin です)。
テスト(2): OS をリブートし、 きちんと bind が動いていることを確認してください (確認方法は上述の操作と同じです)。
Caution |
named 自体の動作設定が /etc/named.conf で、 named が読みこむデータは /etc/namedb 以下に置きます。 |
named の動作の詳細はバッタ本(O'reilly の BIND 本)でも読んで下さい。
/etc/named.conf の設定例: # および ; から行末まではコメントです。
options { directory "/etc/namedb"; query-source address 192.168.0.100; allow-recursion { localhost; localnets; 192.168.0.0/24; }; listen-on { 192.168.0.100; 127.0.0.1; }; };この例では、 サーバの IP アドレスが 192.168.0.100、 ローカルネットワークが 192.168.0.0/24 です。 192.168.0.x の PC は、192.168.0.100 を DNS サーバ [2] として利用できます。 これ以外の PC からは DNS を利用できません。 [3]
インターネットに公開する DNS サーバであれば
allow-recursion { localhost; };にしてください。
以下の部分はデフォルトのままでOKです。
zone "." { type hint; file "root.cache"; }; zone "localhost" { type master; file "localhost"; }; zone "127.IN-ADDR.ARPA" { type master; file "127"; };
Caution |
named 自体の動作設定が /etc/named.conf で、 データは /etc/namedb 以下に置きます。 |
/etc/namedb/example.org ファイルを作成し、 /etc/named.conf に対応する情報を追加します。
zone "example.org" を /etc/named.conf へ追加します。
zone "example.org" { type master; file "example.org"; };
次のような /etc/namedb/example.org ファイルを作成します。
$ORIGIN example.org. @ 3600 IN SOA ns.example.org. bind-admin.example.org. ( 20100501 ; Serial 3600 ; Refresh 300 ; Retry 3600000 ; Expire 300 ) ; Minimum 3600 IN NS ns.example.org. 3600 IN MX 10 mx.example.org. elena IN A 192.168.0.2 IN CNAME www ns IN A 192.168.0.100 mx IN A 192.168.0.101この例では elena.example.org の IP アドレスが 192.168.0.2 です。 そして www.example.org は elena.example.org の別名です。 このサーバ自体は ns.example.org (192.168.0.100) です。 example.org 宛のメールは mx.example.org (192.168.0.101)に送られます。
データを更新したら、忘れずに Serial の値を大きくしてください。
逆引きも書こうね!
自分で named.conf を設定してみよ。
上のゾーンファイルを参考に、 逆引きゾーン 192.168.0.0/24 のデータを作成せよ。 また、named.conf を設定せよ。
DNS サーバを二台作成し、 一台をプライマリ、 二台目をセカンダリとして設定せよ。
rndc コマンドが動くように設定してみよ。
[1] | 2011/02/09 にて BIND 9.5.x は EOL 扱いで削除されました。 運用を 9.6 へ移行しました。 設定は 9.5 のものをそのまま使って OK です。 2011/06、9.7.x へ移行しました。 設定は、そのまま引き継いで OKです。 |
[2] | 正確には「resolver として利用できる DNS サーバ」です。 |
[3] | 正確には「resolver として利用できない」です。 この DNS サーバが自分で持っているデータ |
Copyright (C) 1993-2025 Ken'ichi Fukamachi mail:< fukachan at fml.org >