トップページ > インフォメーション

自宅サーバ構築MY HOME SERVER

DNS(内向き名前解決)(Bind9) クライアント側設定

- DNS(内向き名前解決)(Bind9) -

グローバルIPアドレスが固定でないことを前提に外向き名前解決は設定しません。DDNSに登録して、IP更新が常にされていれば外部ドメイン からの名前解決はDDNSサービスが提供しています。
ローカルのクライアントPCがドメイン名でサーバにアクセスできるように内向き名前解決の設定します。bindを インストールして、設定する必要があります。IP Filterを有効にしている場合は、プロトコル(TCP/UDP)ポート53番(DNS)を開放する必要があります。

まずはBind9のインストールから始めます。
    
[root@hoge123 ~]# cd /usr/ports/dns/bind98
[root@hoge123 /bind98]# make BATCH=yes install clean
[root@hoge123 /bind98]# cd
[root@hoge123 ~]# mv /etc/namedb/named.conf /etc/namedb/named.conf.org
[root@hoge123 ~]# rndc-confgen -a
wrote key file "/etc/namedb/rndc.key"

[root@hoge123 ~]# cat /etc/namedb/rndc.key > /etc/namedb/rndc.conf
[root@hoge123 ~]# cat /etc/namedb/rndc.key > /etc/namedb/named.conf
[root@hoge123 ~]# rm -f /etc/namedb/rndc.key
[root@hoge123 ~]# vi /etc/namedb/rndc.conf

key "rndc-key" {
        algorithm hmac-md5;
        secret "xxxxxxxxxxxxxxxxxxxxxx";
};
↓最終行に下記内容を追記します。
options {
	default-key "rndc-key";
	default-server 127.0.0.1;
	default-port 953;
};

Server 127.0.0.1 {
	key "rndc-key";
};

[root@hoge123 ~]# chmod 400 /etc/namedb/rndc.conf
[root@hoge123 ~]# chmod 600 /etc/namedb/named.conf
[root@hoge123 ~]# chown bind:wheel /etc/namedb/named.conf


named.confに変更を加え、保存します。0.168.192.in-addr.arpaの部分は、自分の環境に合わせます。 (ルータが192.168.1.1 なら1.168.192.in-addr.arpa、ルータが10.0.0.1なら0.0.10.in-addr.arpaとなります。) forwardersは契約IPSのプライマリ、セカンダリDNSを入力します。
    
[root@hoge123 ~]# vi /etc/namedb/named.conf

key "rndc-key" {
        algorithm hmac-md5;
        secret "xxxxxxxxxxxxxxxxxxxxxxxx";
};

↓最終行に下記内容を追記します。

controls {
        inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { "rndc-key"; };
};

options {
	version	"unknown";
	directory	"/etc/namedb";
	pid-file	"/var/run/named/pid";
	dump-file	"/var/dump/named_dump.db";
	statistics-file	"/var/stats/named.stats";
	listen-on-v6	{ none; };
	listen-on	{ localhost; localnets; };
	allow-query	{ localhost; localnets; };
	allow-recursion	{ localhost; localnets; };
	allow-transfer	{ localhost; localnets; };
	forwarders { xxx.xxx.xxx.xxx; xxx.xxx.xxx.xxx; }; 
};

view "internal"{
	match-clients { localnets; };
	recursion yes;

	zone "." IN {
		type hint;
		file "named.ca";
	};

	zone "0.0.127.in-addr.arpa" {
		type master;
		file "0.0.127.in-addr.arpa";
	};

	zone "0.168.192.in-addr.arpa" {
		type master;
		file "0.168.192.in-addr.arpa";
	};

	zone "hoge123.dip.jp" {
		type master;
		file "hoge123.dip.jp.local";
	};
};


定義ファイルの編集です。0.0.127.in-addr.arpaを編集します。
    
[root@hoge123 ~]# vi /etc/namedb/0.0.127.in-addr.arpa

$TTL 86400
@	IN	SOA	 hoge123.dip.jp.	root.hoge123.dip.jp. (
	2012061100	;Serial
	28800		;Refresh
	7200		;Retry
	604800		;Expire	
	86400		;Minimum
)

	IN	NS	hoge123.dip.jp.
1	IN	PTR	localhost.


0.168.192.in-addr.arpaの新規作成をします。(ルータが192.168.1.1 なら1.168.192.in-addr.arpa、ルータが10.0.0.1 なら0.0.10.in-addr.arpaとなります。) 10 IN PTR hoge123.dip.jpの10はサーバのローカルIPアドレス192.168.0.10 の略です。
    
[root@hoge123 ~]# vi /etc/namedb/0.168.192.in-addr.arpa

$TTL 86400
@	IN	SOA	 hoge123.dip.jp.	root.hoge123.dip.jp. (
	2012061100	;Serial
	28800		;Refresh
	7200		;Retry
	604800		;Expire	
	86400		;Minimum
)

	IN	NS	hoge123.dip.jp.
10	IN	PTR	hoge123.dip.jp.


hoge123.dip.jp.localの新規作成をします。
    
[root@hoge123 ~]# vi /etc/namedb/hoge123.dip.jp.local

$TTL 86400
@	IN	SOA	 hoge123.dip.jp.	root.hoge123.dip.jp. (
	2012061100	;Serial
	28800		;Refresh
	7200		;Retry
	604800		;Expire	
	86400		;Minimum
)
	IN	NS	hoge123.dip.jp.
	IN	MX	10	hoge123.dip.jp.
@	IN	A	192.168.0.10
hoge123	IN	A	192.168.0.10
www	IN	A	192.168.0.10
ftp	IN	A	192.168.0.10
mail	IN	A	192.168.0.10


ルートゾーン(named.ca)を最新の状態にします。
[root@hoge123 ~]# dig . ns @198.41.0.4 > /etc/namedb/named.ca


resolv.confを編集・保存します。
[root@hoge123 ~]# vi /etc/resolv.conf

nameserver 127.0.0.1 ← この記述だけに変更・保存します。


変更・設定が終わったのでBindを開始します。
         
[root@hoge123 ~]# vi /etc/rc.conf

最終行に追記します。
named_enable="YES"

[root@hoge123 ~]# /etc/rc.d/named start


Bindが正常動作するかサーバ側でテストします。host コマンドで問い合わせを行い、下図の 用に返答があれば、正常動作しています。
          
[root@hoge123 ~]# host 192.168.0.10
10.0.168.192.in-addr.arpa domain name pointer hoge123.dip.jp.
[root@hoge123 ~]# host hoge123.dip.jp
hoge123.dip.jp has address 192.168.0.10
hoge123.dip.jp mail is handled by 10 hoge123.dip.jp.




- クライアント側設定 -

クライアントPC側からも名前解決できているか、確認します。ローカルエリア接続のプロパティを 開きます。「インターネットプロトコル」を選択して、「プロパティ」をクリックします。

1.jpg(47293 byte)


「IPアドレスを自動取得する」を選択します。(ルータのDHCP機能が有効になっている必要があります) 「優先DNSサーバ」にサーバのIPアドレスを入れて「OK」を押します。

2.jpg(43961 byte)


「ファイル名を指定して実行」をクリックします。

1.jpg(45388 byte)


「cmd」と入力して「OK」ボタンをクリックします。

3.jpg(16917 byte)


コマンドプロンプトの画面が出たらnslookup コマンドを実行して名前解決できているか確認します。 下図のように表示されれば、クライアントPCから名前解決できています。
        
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\hogehoge>nslookup
Default Server: hoge123.dip.jp
Address: 192.168.0.10

>hoge123.dip.jp
Server:  hoge123.dip.jp
Address:  192.168.0.10

Name:  hoge123.dip.jp
Address:  192.168.0.10

>192.168.0.10
Server:  hoge123.dip.jp
Address:  192.168.0.10

Name:  hoge123.dip.jp
Address:  192.168.0.10

>exit

C:\Documents and Settings\hogehoge>>exit


これでクライアントPCからサーバのローカルIPアドレスでなく、ドメイン名でアクセスできます。 例えば、Tera Termのログイン時も、「ホスト」にhoge123.dip.jpを入力します。



自宅サーバ構築(FreeBSD9)に戻る


Copyright(C) PCDEMAGIC All Rights Reserved.