Custom Search

JITAKU_SVR_Wiki



BIND9

デフォルトとなるbindのインストールの構築

単純インストール

OS:CentOS5.3
パッケージ:bind-9.6.1-P1.tar.gz
download:http://www.isc.org/

# tar zxvf bind-9.6.1-P1.tar.gz

# cd bind-9.6.1-P1

# ./configure

# make

# make install


以上でインストールは完了。
ただし、conf類、zone、起動スクリプトは一切用意されていないので、自分で用意する。
bind_named.conf
bind_zone
上記リンク先で確認。

TIPS:
prefixをしないでインストールした場合、バイナリ類は以下へ配置される。

# cd /usr/local/sbin

# ls
dnssec-dsfromkey dnssec-keygen lwresd named-checkconf named-compilezone rndc-confgen
dnssec-keyfromlabel dnssec-signzone named named-checkzone rndc


# cd /usr/local/bin

# ls
dig host isc-config.sh nslookup nsupdate



起動確認

DNSとして使用できているかを確認してみる。
最初にインストールされたbindのバージョンを確認。
確認する場合は、bindインストールに組み込まれたnamedコマンドを使用する。

# which named
/usr/local/sbin/named

# named -v
BIND 9.6.1-P1

起動スクリプト

以下リンク先に起動スクリプトの一例を記述。

上記スクリプトを使用し、bindを起動させる。

# chmod +x /etc/init.d/named

# /etc/init.d/named start

# ps -ef |grep named
root 741 3271 0 22:30 pts/0 00:00:00 grep named
named 24931 1 0 22:02 ? 00:00:00 /usr/local/sbin/named -c /etc/named.conf -u named -4

正引き、逆引きの確認

実際に上記で構築したDNSで正引き、逆引きをしてみる。

resolv.confの変更nslookupのどちらかで確認する。
resolv.confの変更は、

# more /etc/resolv.conf
search hogehoge.com
nameserver 127.0.0.1

上記の様に変更するだけで良い。
これでnslookupのデフォルトのネームサーバが指定できる。

今回はnslookupで確認。
使い方は以下で紹介済み
nslookup

# nslookup 
> server localhost
Default server: localhost
Address: 127.0.0.1#53
> ns01.hogehoge.com
Server:		localhost
Address:	127.0.0.1#53

Name:	ns01.hogehoge.com
Address: 192.168.0.1
> 210.227.42.1
Server:		localhost
Address:	127.0.0.1#53

1.0.168.192.in-addr.arpa	name = ns01.hogehoge.com
> google.com
Server:		localhost
Address:	127.0.0.1#53

Non-authoritative answer:
Name:	google.com
Address: 66.249.89.104
Name:	google.com
Address: 66.249.89.99
> 66.249.89.99
Server:		localhost
Address:	127.0.0.1#53

Non-authoritative answer:
99.89.249.66.in-addr.arpa	name = nrt04s01-in-f99.1e100.net.

Authoritative answers can be found from:
89.249.66.in-addr.arpa	nameserver = ns3.google.com.
89.249.66.in-addr.arpa	nameserver = ns1.google.com.
89.249.66.in-addr.arpa	nameserver = ns4.google.com.
89.249.66.in-addr.arpa	nameserver = ns2.google.com.

上記より、localhost上にインストールしたBINDを使用し、正引き、逆引きに問題ないことが確認できた。

BIND9をバージョンアップする

上記で単純インストールを行った状態で、バージョンアップさせる。
今回は、preifxを指定し、
/usr/local/named
にbindをインストールする。
OS:CentOS5.3
パッケージ:bind-9.6.2-P2.tar.gz
download:http://www.isc.org/

prefixしてインストール

# tar zxvf bind-9.6.2-P2.tar.gz

# cd bind-9.6.2-P2

# ./configure --prefix=/usr/local/named

# make

# make install


prefixした場所にインストールされていることを確認。

# ls -la /usr/local/ | grep named
drwxr-xr-x 9 root root 4096 7月 21 22:09 named


namedディレクトリが出来上がっている。

# cd /usr/local/named

# ls
bin etc include lib sbin share var


prefixしない場合、バイナリファイルは/usr/local/bin(sbin)に配置されたが、prefixをした場合は
/usr/local/named/bin(sbin)に配置される。

# cd /usr/local/named/bin/

# ls
dig host isc-config.sh nslookup nsupdate


# cd /usr/local/named/sbin/

# ls
dnssec-dsfromkey dnssec-keygen lwresd named-checkconf named-compilezone rndc-confgen
dnssec-keyfromlabel dnssec-signzone named named-checkzone rndc

prefixしたbindで起動させる

新しいバージョンのbindを使用する場合は、新しいバージョンのバイナリでnamedを起動させる必要がある。
これに伴い、named また、named.confや、zoneファイルの場所の変更が必要であればnamed.confの修正が必要になる。

named.confの修正

bind_named.conf
上記リンク先にてnamed.confの概要を説明しているので確認する。
※今回はアップデート前と同じパスで使用する。
named.conf /etc/named.conf
zone /var/lib/named

起動手順

1.bindの停止
/usr/local/sbin/named経由でbindを停止させるので、バイナリファイルを移動、パスの追加前に停止させる。

# ps -ef | grep named
root 8809 6911 0 23:12 pts/0 00:00:00 grep named
named 24931 1 0 Jul21 ? 00:00:00 /usr/local/sbin/named -c /etc/named.conf -u named -4

# /etc/init.d/named stop
named stoped

2.バイナリファイルの移動(確認)

# cd /usr/local/bin/

# ls
dig host isc-config.sh nslookup nsupdate

# cd /usr/local/sbin/

# ls
dnssec-dsfromkey dnssec-keygen lwresd named-checkconf named-compilezone rndc-confgen
dnssec-keyfromlabel dnssec-signzone named named-checkzone rndc

現状では/usr/local/bin(sbin)にはbind関係のバイナリしかないので、これを丸ごと移動させる(他のものがある場合は手動で移動させる)。

3.バイナリファイルの移動(実施)

# cd /usr/local

# mv bin bin_bind9.org

# mv sbin sbin_bind9.org

# mkdir bin sbin

4.パスの追加
現在の環境変数は

# env | grep PATH
PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

以上となっているため、アップデート前のbindのバイナリファイルにパスが通っている。

# vi ~/.bashrc
※bashrcに追加しパスを通す

# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

PATH="$PATH":/usr/local/named/bin:/usr/local/named/sbin #追加

5.bashrcファイルを再読み込み

# source ~/.bashrc

# env | grep PATH
PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/named/bin:/usr/local/named/sbin

# named -v
BIND 9.6.2-P2
パスが通ったことが分かる。

6.起動スクリプトの変更
bind_起動スクリプト
上記リンク先はアップデート前のbindを起動させるスクリプトになっている。
これを参考に、バージョンアップしたbindのnamedコマンドを実行するパスを変更する。
今回は
/usr/local/namedにインストールしたので、

0起動スクリプトの以下の部分をすべて変更する0
/usr/local/sbin/named
         ↓
/usr/local/named/sbin/named   #変更する

TIPS:
/usr/loca/named/sbin/named -vを実行すると、
BIND 9.6.2-P2 ここにインストールされたbindがアップデートされたものだと確認出来る。

7.バージョンアップbindを起動させる(起動スクリプトは修正済み)

# /etc/init.d/named start

# ps -ef | grep named
named 8858 1 2 23:27 ? 00:00:00 /usr/local/named/sbin/named -c /etc/named.conf -u named -4
root 8860 6911 0 23:27 pts/0 00:00:00 grep named

以上で/usr/local/named/sbin/namedからbindが起動されたことがわかる。

最後にdnsとして名前が引けているかを確認する。

その他

http://www.itmedia.co.jp/help/tips/linux/l0284.html

2010-08-18


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-12-22 (火) 14:17:11 (702d)