Dell Optiplex GXa Solaris 8  x86  6/00

戻る




BIND-9.1.0

(※後にBIND9.1.3BIND-9.2.0BIND-9.2.1
のインストールの記録あり)

※注※
BIND9系(9.2.0を含むそれ以前のバージョン)にはDoS攻撃に対する脆弱性になり
得るセキュリティホールがある事が判明しています。9.2.1にバージョンアップ
される事をお奨めします。
詳細はhttp://www.cert.org/advisories/CA-2002-15.html



Domain 例:
	Domain = domain.com
	FQDN = ns1.domain.com
	IP Address = 210.255.156.155
	プロバイダのプライマリDNS = 210.255.128.1
	プロバイダのセカンダリDNS = 210.255.128.2


必要なソフトウェア:
	bind-9.1.0.tar.gz
	ftp://ftp.isc.org/isc/bind9/9.1.0/


インストール:

作業ディレクトリを作成する。
	$ mkdir /opt/src/bind9.1.0

作業ディレクトリに移動する。
	$ cd /opt/src/bind9.1.0

アーカイブをダウンロードする。
	$ wget ftp://ftp.isc.org/isc/bind9/9.1.0/bind-9.1.0.tar.gz

解凍展開する。
	$ tar xozf bind-9.1.0.tar.gz

展開されたディレクトリに移動する。
	$ cd bind-9.1.0

cshやtcshではうまくいかないのでshになる。
	$ sh

環境変数を指定しつつ最適化させる。
	$ CC=gcc ./configure

コンパイルする。(結構時間がかかる)
	$ make

SuperUserになる。
	$ su

インストールする。
	# make install


設 定:

※BIND 9.0 から各ゾーンファイルの冒頭にTTL値を明示的に指定してやらないと、
正常に起動してくれない。

新規ファイルnamed.confを作成する。
	# vi /etc/named.conf

内容は以下のように記述し保存する。
	options {
	        directory "/usr/local/etc/bind";
	        auth-nxdomain yes;
	};
	zone "." {
	        type hint;
	        file "root.cache";
	};
	zone "localhost" {
	        type master;
	        file "localhost.zone";
	};
	zone "0.0.127.in-addr.arpa" {
	        type master;
	        file "localhost.rev";
	};
	zone "domain.com" {
	        type master;
	        file "named.zone";
	        allow-transfer {
	                210.255.128.1;
	                210.255.128.2;
	        };
	};
	zone "156.255.210.in-addr.arpa" {
	        type slave;
	        file "156.255.210.in-addr.arpa";
	        masters {
	                210.255.128.1;
	                210.255.128.2;
	        };
	};

ゾーンファイルを格納するディレクトリを作成する。
	# mkdir /usr/local/etc/bind/

正引きのゾーンファイルを作成する。
	# vi /usr/local/etc/bind/named.zone

内容は以下のように記述して保存する。(TTL値を忘れずに)

	; named.zone
	; GROUPE Domain(domain.com) host to IP address Infomation
	;
	$ TTL 86400
	@		IN	SOA	ns1.domain.com. you.domain.com. (
	2001030501	;Serial
	10800		;Refresh
	1800		;Retry
	4320000		;Expire
	86400		;Minimum
	)
	IN	NS	ns1.domain.com.
	IN	MX  10 mail.domain.com.
	; Host Infomation --------------------------------------------------------
	ns1		IN	A	210.255.156.155
	ns		IN	CNAME	ns1.domain.com.
	www		IN	CNAME	ns1.domain.com.
	mail		IN	CNAME	ns1.domain.com.
	pop		IN	CNAME	ns1.domain.com.
	ftp		IN	CNAME	ns1.domain.com.
	;-------------------------------------------------------------------------


ローカルの正引きゾーンファイルを作成する。
	# vi /usr/local/etc/bind/localhost.zone

内容は以下のように記述して保存する。(TTL値を忘れずに)

	; localhost.zone
	; Local loop back file of  host to IP address
	$TTL 3600
	@	IN	SOA	domain.com. you.domain.com.  (
		2001030501
		10800
		1800
		4320000
		86400 )

			IN	NS	domain.com.
	localhost.	IN	A	127.0.0.1


ローカルの逆引きゾーンファイルを作成する。
	# vi /usr/local/etc/bind/localhost.rev

内容は以下のように記述して保存する。(TTL値を忘れずに)

	; localhost.rev
	; Local loop back file of IP address to host
	@	IN	SOA	domain.com. you.domain.com.  (
	$TTL 3600
	2001030501
	10800
	1800
	4320000
	86400 )

	IN	NS	domain.com.
	1		IN	PTR	localhost.


rootDNSの定義ファイルをダウンロードする。
	# wget ftp://rs.internic.net/domain/named.root

ダウンロードした定義ファイルの名前を変更する。
	# mv named.root /usr/local/etc/bind/root.cache

起動ファイルの編集。このままだと再起動時に OS付属の in.named が起動してしまうので、
起動ファイルを編集しておく。 
	# vi /etc/rc2.d/S72inetsvc

以下の部分を変更して保存する。
	.......省略
	'stop')
	#/usr/bin/pkill -x -u 0 'in.named|inetd'	<---- コメントアウト
	/usr/bin/pkill -x -u 0 'named|inetd'		<---- 新規記述
	exit 0
	;;

	.......省略

	#if [ -f /usr/sbin/in.named -a -f /etc/named.conf ]; then		<---- コメントアウト
	#       echo 'starting internet domain name server.'			<---- コメントアウト
	#       /usr/sbin/in.named &					<---- コメントアウト
	#fi								<---- コメントアウト
	if [ -f /usr/local/sbin/named -a -f /usr/local/etc/named.conf ]; then	<---- 新規記述
	/usr/local/sbin/named;  echo "starting internet domain name server."	<---- 新規記述
	fi								<---- 新規記述
	.......省略


スタティックリンクが張られているので /etc/init.d/inetsvc も変更される。

namedを再起動する。
	# /etc/rc2.d/S72inetsvc stop
	# /etc/rc2.d/S72inetsvc start