Mac OS X で DNS サーバを構築する
提供:maruko2 Note.
Mac OS X には、DNS サーバの BIND がインストール済みですが、インストールされたままでは起動すらしません。
ただし、少し設定することで動作するようになります。(Mac OS X Server では、サーバ管理アプリケーションを使って管理します。)
Mac OS X の BIND を起動させるまでの手順
まずは named を -g オプション付きで起動させ、すべてのログを標準出力する(ターミナルに表示する)ようにして、どのようなエラーが起きているか確認してみます。
named を -g オプション付きで起動すると、フォアグランドで起動し(デーモンとして起動しない)ログを標準出力するようになります。
$ sudo named -g Password: 27-Apr-2007 11:59:48.122 starting BIND 9.3.2 -g 27-Apr-2007 11:59:48.125 loading configuration from '/private/etc/named.conf' 27-Apr-2007 11:59:48.126 /private/etc/named.conf:4: open: /etc/rndc.key: file not found 27-Apr-2007 11:59:48.126 loading configuration: file not found 27-Apr-2007 11:59:48.126 exiting (due to fatal error)
/etc/rndc.key が無いため起動できないようなので、rndc-confgen コマンドを使い /etc/rndc.key ファイルを作成します。
$ sudo rndc-confgen -a wrote key file "/private/etc/rndc.key"
ルートサーバのゾーンファイル(/var/named/named.ca)を新しいものと入れ替えます。
$ su - Password: # cd /var/named # curl ftp://ftp.rs.internic.net/domain/named.root > named.ca
named を launchctl を使い起動します。
- named を起動するだけの場合(自動起動しない)
$ sudo launchctl load -F /System/Library/LaunchDaemons/org.isc.named.plist
- named を起動し、ブート時にも自動起動するようにする。(org.isc.named.plist を書き換えている。)
$ sudo launchctl load -w /System/Library/LaunchDaemons/org.isc.named.plist
- named を停止する
$ sudo launchctl unload /System/Library/LaunchDaemons/org.isc.named.plist
- named を停止し、ブート時に自動起動しないようにする。(org.isc.named.plist を書き換えている。)
$ sudo launchctl unload -w /System/Library/LaunchDaemons/org.isc.named.plist
これで、Mac OS X にインストール済みの BIND を DNS キャッシュサーバとして動作させることができます。
DNS サーバへのアクセスコントロールや、ゾーン情報を管理するには、BIND の設定ファイルである /etc/named.conf を編集したり、新たにゾーン情報を記述したファイルを作成する必要があります。