パソコン実習室
DNSサーバ (bind-9.2) の設定
≪ previous  

\.スレーブ サーバーがある場合の設定例

 委任したサブ ドメインがあり、スレーブ サーバーも設置した構成 (下図参照) のゾーンを考える。


 この例のような場合、自ゾーン (project.ed.jp) におけるネーム サーバー (dns, subdns) の構成ファイルやゾーンファイルは次のようになる。


\.1.マスター ネーム サーバーの構成ファイル

 自ゾーン・委任ゾーン共に同じドメイン (project.ed.jp) に属するので、マスター ネーム サーバー dns の構成ファイルは、実習環境の構成ファイルと殆ど同じになる。
 (スレーブ サーバーがあるので、ゾーン転送要求許可 allow-transfer の設定が異なる)

/etc/named.conf
// named.conf
//
//// オプション ////
options {
// カレント ディレクトリの指定
// 以降の zone ステートメントで指定するファイルは、カレント ディレクトリから検索される
directory "/var/named";

// ゾーン転送要求を許可するホスト (スレーブ サーバー) を指定。
allow-transfer { 10.2.3.235; };
};

//// zoneステートメント ////

// ルート ネーム サーバー
zone "." IN {
type hint;
file "named.ca";
};

// ホスト (ローカル) 内の正引き用
zone "localhost" IN {
type master;
file "localhost.zone";
};

// ループ バック アドレス (逆引き用) の定義
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
};

// 正引きゾーンの定義
//   起点名 (ドメイン名) : project.ed.jp
//   マスター ネーム サーバー宣言
//   記述ファイル名指定
zone "project.ed.jp" IN {
type master;
file "project.zone";
};

// 逆引きゾーンの定義
//   起点名 (ドメイン名) : 3.2.10.in-addr.arpa
//   マスター ネーム サーバー宣言
//   記述ファイル名指定
zone "3.2.10.in-addr.arpa" IN {
type master;
file "project.rev";
};


\.2.マスター ネーム サーバーのゾーンファイル

 ゾーンファイルは正引き用と逆引き用の2種類を用意する。

\.2.1.正引き ゾーン ファイル

 自ゾーンに関するデータのほかに、委任ゾーン (network) に関する記述が必要になる。

/var/named/project.zone
; project.ed.jp の正引きゾーンデータ
;  起点名 : project.ed.jp.
;   (ドットで終わっていない名前に付加される : named.conf で指定済)

; ディレクティブ
;   問い合わ元サーバへの、キャッシュ期間指定。
;
$TTL 1d       ; 1day

; SOA レコード
;   ネーム サーバーの名称、ゾーン管理者メールアドレスを設定
;   資源レコード名は @ で省略 (起点名が適用される)
;   スレーブ サーバーへの指示は、次の5項目
;       シリアル番号、更新確認間隔、再試行間隔、データの有効期間、ネガティブキャッシュ

@INSOAdns.project.ed.jp.master.project.ed.jp. (
2008040101; serial
12h; refresh
1h; retry
1w; expire
6h ); negativ
; NS レコード
;   スレーブ サーバーがあるので NS レコードは 2 行になる
;   資源レコード名は省略 (直前の資源レコード名が適用される)
;   ドメイン名はローカル ホスト名 (ns) のみに省略 (起点名で補完される)

INNSdns
INNSsubdns

; MX レコード
; メール サーバー (メール エクスチェンジャー) の指定
;   優先度 (ここでは 10) はメール サーバーが 1 台でも省略できない
;   資源レコード名は省略 (直前の資源レコード名が適用される)

INMX10   relay

; A レコード
;   資源レコード名は省略形
;     (1行目は直前の資源レコード名適用、2 行目以降は起点名で補完)
;   1 行目は、ドメイン名のみの問い合わせに対して dns のアドレスを返すため設定

INA10.2.3.234
dnsINA10.2.3.234
subdnsINA10.2.3.235
relayINA10.2.3.100
productINA10.2.3.200

; CNAME レコード
;   資源レコード名は省略 (起点名で補完)
;   www および workshop の正規ホスト (ドメイン) 名を指定
;
wwwINCNAMEsubdns
workshopINCNAMEproduct


; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
; 委任サブ ドメイン (network) のネーム サーバーに関する情報
;   これらはグルー レコード (glue recode) と呼ばれ、厳密には project.ed.jp ゾーンの
;   データではないが、network.project.ed.jp への委任を行うために必要。
;
; network の NS レコード

networkINNSnwns.network
INNSnwsubns.network

; network の A レコード

nwns.networkINA10.253.253.2
nwsubns.networkINA10.253.253.3


\.2.2.逆引き ゾーン ファイル

/var/named/project.rev
; project.ed.jp の逆引きゾーンデータ
;  起点名 : 3.2.10.in-addr.arpa.
;   (ドットで終わっていない名前に付加される : named.conf で指定済)
;  逆引き ゾーン ファイルでは、正引きドメイン名 (project.ed.jp.) に起点名による補完は
;  使えない。

; ディレクティブ
;   問い合わ元サーバへの、キャッシュ期間指定。
;
$TTL 1d       ; 1day

; SOA レコード
;   ネーム サーバーの名称、ゾーン管理者メールアドレスを設定
;   資源レコード名は @ で省略 (起点名が適用される)
;   スレーブ サーバーへの指示は、次の5項目
;       シリアル番号、更新確認間隔、再試行間隔、データの有効期間、ネガティブキャッシュ

@INSOAdns.project.ed.jp.master.project.ed.jp. (
2008040101; serial
12h; refresh
1h; retry
1w; expire
6h ); negativ

; NS レコード
;   スレーブ サーバーがあるので NS レコードは 2 行になる
;   資源レコード名は省略 (直前の資源レコード名が適用される)

INNSdns.project.ed.jp.
INNSsubdns.project.ed.jp.

; PTR レコード
;   資源レコード名は省略 (起点名で補完される)
;   IP アドレスに対応する正規ホスト (ドメイン) 名を指定する
;   CNAME で定義した別名を、資源レコードの右辺 (ドメイン名) に記述してはならない

234INPTRdns.project.ed.jp.
235INPTRsubdns.project.ed.jp.
100INPTRrelay.project.ed.jp.
200INPTRproduct.project.ed.jp.


\.3.スレーブ ネーム サーバーの構成ファイル

 スレーブ ネーム サーバーは初期起動時に、おおむね次のように動作する。
  1. 指定のマスター サーバーへアクセスし、全ゾーンデータのゾーン転送を要求する。
  2. 受け取ったゾーンデータを zone ステートメントで指定されたファイル名で保存する。
  3. ▼ 保存したゾーンデータは再起動時に使用される。
    ▼ ゾーンデータがあれば再起動であり、なければ初期起動となる。
スレーブ ネーム サーバーのゾーンファイルについて、次のように決める。
  • 受信ゾーンデータの保存ファイル名は、バックアップ データであることを明確にするために、 ファイル名の先頭に、"bup" を付ける。
  • ▼ バックアップであることを明示するのは、スレーブのゾーンファイルを誤って変更しないため。
       ゾーンファイルの変更はマスターで実施し、スレーブはマスターのゾーンファイル受信に徹する。
  • ルート ネーム サーバーとループバック (ローカル ホスト) については、 マスター サーバーと全く同じ内容で変わることもない。
    ローカル コピーをスレーブ上に置き、マスターとして運用する。
 スレーブ サーバーでは構成ファイルのみを作成し、ゾーンファイルはマスター サーバーから受信する。  構成ファイルは次のようになる。

/etc/named.conf
// named.conf
//
//// オプション ////
options {
// カレント ディレクトリの指定
// 以降の zone ステートメントで指定するファイルは、カレント ディレクトリから検索される
directory "/var/named";

// ゾーン転送要求はすべて拒否
//  subdns が他サーバーへのゾーン転送を担っている場合は、そのサーバーの IP アド
//  レスを指定する
allow-transfer { none; };
};

//// zoneステートメント ////

// ルート ネーム サーバー
zone "." IN {
type hint;
file "named.ca";
};

// ホスト (ローカル) 内の正引き用
zone "localhost" IN {
type master;
file "localhost.zone";
};

// ループ バック アドレス (逆引き用) の定義
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
};

// 正引きゾーンの定義
//   起点名 (ドメイン名) : project.ed.jp
//   スレーブ ネーム サーバー宣言
//   受信データの保存ファイル名指定
//   ゾーン転送の要求先 (dns) を指定
zone "project.ed.jp" IN {
type slave;
file "bup.project.zone";
masters { 10.2.3.234; };
};

// 逆引きゾーンの定義
//   起点名 (ドメイン名) : 3.2.10.in-addr.arpa
//   スレーブ ネーム サーバー宣言
//   受信データの保存ファイル名指定
//   ゾーン転送の要求先 (dns) を指定
zone "3.2.10.in-addr.arpa" IN {
type slave;
file "bup.project.rev";
masters { 10.2.3.234; };
};




≪ previous [[ DNSサーバ - bind-9.2 の設定 ]]