bind を使用したキャッシュ DNS サーバ構築

bindを使用してキャッシュDNSサーバを構築してみます。

1.バックアップファイル作成

設定のbackupを作成。

//create backup
[root@lab-rp01 ~]# cp -a /etc/named.conf /etc/named.conf.default

2.named.confの設定

まずデフォルト状態と設定変更後の比較結果は下記のとおりです。

[root@lab-rp01 ~]# diff /etc/named.conf /etc/named.conf.default
10,14d9
< acl "lab-network" { 	10.0.0.0/8;
< 			172.16.0.0/12;
< 			192.168.0.0/16;
< 		  };
<
16c11
< 	listen-on port 53 { 127.0.0.1; 10.24.96.210; };
---
> 	listen-on port 53 { 127.0.0.1; };
22c17
< 	allow-query     { localhost; lab-network; };
---
> 	allow-query     { localhost; };
24,25d18
< 	forward only;
< 	forwarders { 8.8.8.8; };
変更箇所の説明は下記のとおり。
ステートメント 設定項目 意味
option listen-on port 53 { 127.0.0.1; 10.24.96.211; }; BINDが53ポートで受け付けを行うアドレスを指定します。サーバに割り振られているIPアドレスを指定します。127.0.0.1だけだと他のマシンから名前解決ができません。
option allow-query { localhost; lab-network; }; BINDが問い合わせを受け付けるネットワーク・ホストを指定します。ここでは、127.0.0.1を意味するlocalhostと、aclステートメントで定義しているlab-networkを指定しています。
option recursion yes; 再帰的な名前解決を受け付けるかの設定になります。この設定がyesになっているとBINDはDNSキャッシュサーバの役割を行えるようになります。
option forward only; 問い合わせがあったドメインに対する回答を持っていない場合の挙動を示します。
first …自分で反復名前解決を行い、回答を収集します。それでも解決できなければforwardersに登録されたホストに対して、問い合わせを行います。
only …自分で名前解決を行おうとはせず、forwardersに登録されたホストに対して、問い合わせを行います。
option forwarders { 8.8.8.8; }; forward で設定した問い合わせ先のホストを指定します。ここではgoogleが提供しているパブリックDNSを登録しています。
acl acl "lab-network" { 10.0.0.0/8;
172.16.0.0/12;
192.168.0.0/16; };
上記のallow-queryで使用するためのパラメータ定義です。
 

3.bind起動

confファイルの書式をチェックします。(再編集時を行う際、書式が誤っていると再起動に失敗しbindが停止しますので注意。)
[root@lab-rp01 ~]# named-checkconf /etc/named.conf
[root@lab-rp01 ~]#
起動を行います。
[root@lab-ns01 ~]# named-checkconf
[root@lab-ns01 ~]# /etc/init.d/named restart
Stopping named: [ OK ]
Starting named: [ OK ]
digコマンドで動作チェックをしてみます。
[root@lab-rp01 ~]# dig @10.24.96.210 google.com +short
172.217.24.142
[root@lab-rp01 ~]# dig @10.24.96.210 google.com +short mx
20 alt1.aspmx.l.google.com.
50 alt4.aspmx.l.google.com.
10 aspmx.l.google.com.
30 alt2.aspmx.l.google.com.
40 alt3.aspmx.l.google.com.

 

以上です。

Copyright © 2021 たぐたぐ.com. All rights reserved.