LAN内DNSサーバを立てる

 LAN内で利用するためのDNSサーバを考える。

1.LAN内DNSサーバとは?

 LAN内で使用するDNSサーバとはどのような機能があればいいのかを考えると、次のようになる。

  1. LAN内のパソコンは、LAN内に設置したDNSサーバを使ってインターネットができる
  2. LAN内のパソコンは、それぞれの名前をLAN内DNSサーバによって解決する
  3. 外部(インターネット上)に公開するサーバは存在しない

 この場合、名前解決は次のように行えばよいことが分かる。

  1. LAN内のパソコンの名前解決はLAN内に設置したDNSサーバで行う
  2. インターネットを利用するなどLAN外の名前解決にはプロバイダのDNSサーバを使う

 このように使うための設定を解説する。

2.設定ファイルの修正

 /etc/named.confファイルを開き、次のように編集して保存する。

2-1 optionの修正

 optionを次のように修正する。

forward first;
forwarders {プロバイダ指定のDNSアドレス1; プロバイダ指定のDNSアドレス2;};

2-2 正引きループバックの設定

 自分自身の名前解決?を行うための設定を行う。次の文を追加。

# 正引きループバック
zone "localhost" IN {
type master;
file "localhost.zone";
};

2-3 逆引きループバックの設定

 自分自身のIPアドレスから名前を引くため?の設定を行う。次の文を追加。

# 逆引きループバック
zone "0.0.127.in-addr.arpa" IN {
type master;
file "localhost.in-addr.arpa.zone";
};

2-4 LAN内ドメイン(オリジナル)の正引きゾーンの設定

 LAN内の各マシンの名前解決を行うための設定を行う。内部でのみ使うので、ドメイン名は何でもよいが、とりあえず「andokomuten.jp」。次の文を追加。

# LAN内ドメイン(オリジナル)の正引きゾーン
zone "andokomuten.jp" IN {
type master;
file "andokomuten.jp.zone";
};

2-5 LAN内ドメイン(オリジナル)の逆引きゾーンの設定

 LAN内の各マシンのIPアドレスから名前を調べるための設定を行う。LAN内で使用するIPアドレスは何でもよいが、「192.168.0.1/24」で考えてみる。次の文を追加。

# LAN内ドメイン(オリジナル)の逆引きゾーン
zone "0.168.192.in-addr.arpa" IN {
type master;
file "andokomuten.jp.in-addr.arpa.zone";
};

3.各ゾーンファイルの準備

 /etc/named.conf内で指定した各ゾーンファイルを作成する。各ファイルはすべて/var/namedディレクトリに配置する。

3-1 正引きループバックファイルの作成

 正引きループバックファイル「localhost.zone」を次のように作成する。

$TTL 86400
@ IN SOA ns1.andokomuten.jp. root.ns1.andokomuten.jp. (
	2003120601	; Serial
	28800		; Refresh
	3600		; Retry
	3600000		; Expire
	86400 )		; Minimum

	IN NS	localhost.
localhost.	IN A	127.0.0.1

3-2 逆引きループバックファイルの設定

 逆引きループバックファイル「localhost.in-addr.arpa.zone」を次のように作成する。

$TTL 86400
@ IN SOA ns1.andokomuten.jp. root.ns1.andokomuten.jp. (
	2003120601	; Serial
	28800		; Refresh
	3600		; Retry
	3600000		; Expire
	86400 )		; Minimum

	IN A	255.255.255.0
1	IN PTR	localhost.

3-3 正引きゾーンファイルの作成

 正引きゾーンファイル「andokomuten.jo.zone」を次のように作成する。

$TTL 86400
@ IN SOA andokomuten.jp. root.ns1.andokomuten.jp. (
	2003120601	; Serial
	28800		; Refresh
	3600		; Retry
	3600000		; Expire
	86400 )		; Minimum
; name server
	IN NS	ns1.andokomuten.jp.
; mail server
	IN MS	10 ns1.andokomuten.jp.
; local macine
localhost	IN A	127.0.0.1
ns1	IN A	192.168.0.1
mail	IN A	192.168.0.2
pc01	IN A	192.168.0.5
pc02	IN A	192.168.0.6
; CNAME
ns2	IN CNAME	ns1.andokomuten.jp.

 LAN内のパソコンが増減したら、このファイルを編集し、シリアル番号を変えて保存する。

3-4 逆引きゾーンファイルの作成

 逆引きゾーンファイル「andokomuten.jp.in-addr.arpa.zone」を次のように作成する。

$TTL 86400
@ IN SOA andokomuten.jp. root.ns1.andokomuten.jp. (
	2003120601	; Serial
	28800		; Refresh
	3600		; Retry
	3600000		; Expire
	86400 )		; Minimum
; name server
	IN NS	ns1.andokomuten.jp.
	IN A	255.255.255.0
; acw macine
1	IN PTR	ns1.andokomuten.jp.
2	IN PTR	mail.andokomuten.jp.
5	IN PTR	pc01.andokomuten.jp.
6	IN PTR	pc02.andokomuten.jp.

4.BINDの再起動

 named.confや各ゾーンファイルを編集したら、BINDを再起動しなければ設定が有効にならない。次のように再起動を行う。

/usr/local/sbin/rndc reload

5.動作確認

 LAN上のWindowsマシンのTCP/IPの設定を変更し、DNSに設置したサーバのIPアドレスを登録したのち、コマンドプロンプトからnslookupを実行して次のチェックを行う。

  1. LAN内のパソコンのIPアドレスやホスト名を入力して、正引き/逆引きが正常に行われるかどうか
  2. インターネット上のサーバ(URL)を入力して、正引き/逆引きが正常に行われるかどうか


[ TOP ]