BIND8でDNS Serverを!
named.confを作る | dbファイルの作成 | 起動とテスト

Mac OS Xは「UNIXをベースに作られている」ということはみなさんもう御存じの通りですね。そこで最初からインストールされている、BIND(Berkeley Internet Name Domain)を利用してDNSサーバを起てましょう。Mac OS XにインストールされているBINDは8.2.3です。このバージョンは現在特に知られたセキュリティーホールもなく、安心して使用することができると思います。

BIND本体は/usr/sbinにnamedと言う名前でインストールされていますが、このnamed自体を触る必要はありません。namedが起動するために必要なnamed.configと、起動時に読み上げるゾーンに関するファイルを作成することで、DNSサーバを起動することができます。試しにTerminalを起動して、下記のように入力してみて下さい。

[localhost:~] david% ndc start
can't open '/etc/named.conf'
ndc: error: could not start new name server (/usr/sbin/named)

named.confが/etcになくて起動できないよ!と言われてしまいます。BINDを起動させるためにはまずnamed.confありきなのです。

1.named.confを作る
Mac OS Xの場合最初からこのファイルは作られていませんので、自分で作ることになります。以下は私の家のDNSのnamed.confです。この中の赤い文字は、仮のドメイン名です。ここだけ書き換えればそのまま使えると思います。

--------------------<この下の行から>--------------------
// This BIND 8.2 Config File was installed by Apple Remote Admin.


controls {
// unix "/var/run/ndc" perm 0600 owner 0 group 0;
inet 127.0.0.1 port 54 allow {any; };
};

options {
directory "/var/named";
notify yes;
statistics-interval 1;
//stats-file "named-stats";
};

//example.net

zone "example.com" in {
type master;
file "db.example.zone";
};

zone "16.190.210.in-addr.arpa" in {
type master;
file "db.example.zone.rev";
};

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

zone "." in {
type hint;
file "db.cache";
};
--------------------<この上の行まで>--------------------
以上をコピーし、テキストエディタで編集してnamed.confという名前で保存します。【vi】などを使える方はそのまま/etcの直下にnamed.confという名前で保存すればいいと思います。私は【vi】が苦手なので、一旦GUIベースのエディタ「Jedit4」で編集して、自分のホームディレクトリに一時保存、それからTerminalで定位置に移動させています。方法はどうであれ、/etcにnamed.confが正しく書かれていれば問題ありません。

ファイルの移動は以下のようにします(suを使っていますので、この場合はrootユーザが有効になっていることが条件です)。

[localhost:~] david% su
Password:
[localhost:/Users/david] root# mv Documents/named.conf /etc/named.conf
[localhost:/Users/david] root# cd /etc
[localhost:/etc] root# ls -l
total 752
-rw-r--r-- 1 root wheel 1101 Feb 25 2001 monthly
-rw-r--r-- 1 root wheel 19 Feb 25 2001 motd
-rw-r--r-- 1 root wheel 1076 Aug 18 12:12 named.conf
-rw-r--r-- 1 root wheel 337 Feb 25 2001 networks
[localhost:/etc] root#

赤い行が移動されたファイルです。実際はもっとたくさんのファイルが存在していますが、省略しています。パーミッションが違う、オーナーやグループが違うなどの場合は、こちらを参考にして変更してみて下さい。

つぎはゾーン情報に関する、dbファイル作成になります。

named.confを作る | dbファイルの作成 | 起動とテスト

戻る