BIND9: 2006年5月アーカイブ

bindのバージョンを見る

|
# /usr/sbin/named -v
BIND 9.3.2

ちなみにこういうやり方もある。

# dig version.bind. txt chaos

; <<>> DiG 9.2.4 <<>> version.bind. txt chaos ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6775 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION: ;version.bind. CH TXT

;; ANSWER SECTION: version.bind. 0 CH TXT "9.3.2"

;; AUTHORITY SECTION: version.bind. 0 CH NS version.bind.

;; Query time: 6 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Tue May 23 17:34:47 2006 ;; MSG SIZE rcvd: 62


  

フォワーダを利用する

|

■フォワーディングサーバ

フォワーダを利用するネームサーバ

クライアントからの名前解決依頼を受けるが、
自分で名前解決をせずに、フォワーダに名前解決を丸投げする。
 
しかし、クライアントへの回答は自分でする


■フォワーディングサーバの設定(bind9)

例1.ほとんどすべての名前解決をフォワーダに依頼する場合

自分が権威を持っているゾーンデータからも、自分の保持しているキャッシュからもqueryに対する回答が得られなかった場合、フォワーダに名前解決を依頼します。

○/etc/named.conf
options {
	-- 省略 --
	forwarders { 192.168.0.1; };
};
ちなみに複数のフォワーダを指定すると、bind9ではそのフォワーダ達のなかで反応が最速だったサーバーに最初の問い合わせをします。

さて、フォワーダから(デフォルトで60秒間)応答が無かった場合ですが、2つのパターンに分けられます。

A:フォワーディングサーバー自身が自分で名前解決に挑む。  (デフォルトの挙動) ○/etc/named.conf
options {
	-- 省略 --
	forward first;
	forwarders { 192.168.0.1; };
};
B:名前解決失敗をクライアントに告げる ○/etc/named.conf
options {
	-- 省略 --
	forward only;
	forwarders { 192.168.0.1; };
};


例2.特定のゾーンに対するqueryに関してはフォワーダを利用する。

zoneステートメントの中に記述します。

○/etc/named.conf
zone "example.local" {
	type	forward;
	forwarders { 192.168.0.1; };
};


例3.特定のゾーンに対するqueryに関してだけは、フォワーダを利用しない。
  (null forwarders リスト)

○/etc/named.conf

options {
	-- 省略 --
	forwarders { 192.168.0.1; };
};

zone "example.local" { type master; file "db.example.local"; forwarders {}; };

null forwardersが設定していない場合(例1の場合)
 "www.hoge.example.local"という名前解決は、192.168.0.1にフォワードする。

null forwardersが設定してある場合
 "www.hoge.example.local"という名前解決は、フォワーディングしない。

■MicrosoftのDNSサーバー

Windows 2000のDNSサーバーは、例1しかできなかったが、
Windows Server 2003のDNSサーバーは、
例2、つまりゾーンごとにフォワーダを分けることが可能になった。

■フォワーダ

名前解決を丸投げで請け負うネームサーバ
といっても、特にフォワーダとしての設定項目はない。

ゾーンを保持しているネームサーバの設定でもよいし、
ただのキャッシュサーバーでもよい。

自分がフォワーディングサーバとなって、
さらに他のフォワーダに名前解決を依頼することもできるが、
そのときはやはりフォワーディングの設定をする。

【クライアント(PCなど)】
↓            ↑
↓Query        ↑回答
↓            ↑
【DNSサーバ(フォワーディングサーバ)】
↓            ↑
↓Forward       ↑回答
↓            ↑
【DNSサーバ(フォワーダ)】
<<< 名前解決 >>>


  

bindのオプション

|
■bindのオプション
named [-d debuglevel] [-p port#] [-(b|c) config_file] [-f -q -r -v] [-u user_name]
     [-g group_name] [-t directory] [-w directory] [config_file]
-d debuglevel
 デバッグ情報を出力します。(基本)1~10,20,90(最高)
 /etc/sysconfig/namedなどに、OPTIONS="-d 1"と追加してください。

 起動中にデバッグレベルを変更するには、
 # rndc trace 10
 で始まり、
 # rndc notrace
 で終了します。

-c config_file
 代わりの config_file を使用します。
 デフォルトの値は/etc/namedb/named.conf です。

-v
 バージョンを報告し、終了します。

-u user_name
 ユーザを指定すると、初期化後のサーバがこのユーザで動作します。
 値はユーザ名または数字のユーザ ID どちらでも構いません。

-g group_name
 グループを指定すると、初期化後のサーバがこのグループで動作します。
 値はグループ名または数字のグループ ID どちらでも構いません。

-t directory
 chroot() するべきディレクトリを指定します。

■RedHat系でRPMインストールの場合 /etc/sysconfig/named に記述を追加しますが、普通は特に何も手を加える必要はありません。 bind-chrootパッケージもインストールされていれば、
ROOTDIR=/var/named/chroot
との記述があります。 ここでの指定が、/etc/init.d/named スクリプトで、-tオプションに渡されます。 また、-uオプションも/etc/init.d/named スクリプト内に記述してあるので、普通に起動すると、
# ps auxw | grep named
named     1049  0.0  3.0 37172 3852 ?        Ssl  May18   0:50 /usr/sbin/named -u named -t /var/named/chroot
となるはずです。 ■debian3.1(sarge)の場合 /etc/default/bind9
OPTIONS="-u bind"
の記述があり、起動オプションはそこに追加します。 このオプションが、/etc/init.d/bind9 スクリプトに渡され、
# ps aux | grep bind
bind     10915  0.8  6.0 11196 2788 ?        Ss   17:41   0:00 /usr/sbin/named -u bind
のように起動します。

  

このアーカイブについて

このページには、2006年5月以降に書かれたブログ記事のうちBIND9カテゴリに属しているものが含まれています。

前のアーカイブはBIND9: 2006年4月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

BIND9: 2006年5月: 月別アーカイブ

Powered by Movable Type 4.1