2009年3月10日火曜日

DNSクライアントを設定する

バーチャルサーバを作ったときは仕事用に限りなく近くしたので、hostsによる名前解決を選択しました。しかしそれではデスクトップ用として使うには厳しいので、DNSクライアントを設定することにしました。
1.nsswitch.confを設定する
/etc/nsswitch.conf を編集して、名前解決の方法を指定します。中身の仕様はいろいろありますが、標準でいろいろな指定方法のサンプルが/etcの下にありますからコピーするだけです。

(こんなサンプルがあります)
bash-3.00# ls nsswitch.*
nsswitch.conf nsswitch.files nsswitch.nis
nsswitch.dns nsswitch.ldap nsswitch.nisplus

(DNS用のファイルを、設定ファイルにコピーします)
bash-3.00#cp nsswitch.dns nsswitch.conf

2.resolv.confを設定する
DNSの参照先をこのファイルに設定します。こちらは、サンプルも何もなかったので作りました。

bash-3.00# cat resolv.conf
domain abc.defg.jp
nameserver 123.223.123.223

自分のドメインを指定する"domain"のところには、自分が使っているDNSの名前が"dns.abc.defg.jp"だったので、それをもとに設定しました。(DNSの名前は、既にDNSが使えている状態のWindows PCで、"nslookup"を実行すると、最初に表示されます。)でも、ほんとのところはどうやるのが正しいか知りません。指定しなくてもうまく行くのかな?
nameserverは、今回たまたま1台しかなかったのでそちらを指定していますが、複数ある場合は、1行に1つずつ、nameserverの指定を繰り返します(3台までできるようです)。

3.DNSクライアントのサービスを開始する
これ、Solaris10以外のOSの常識では理解しにくいのですが、svcで制御する常駐プロセスの中に、DNSクライアントというものがあり、こちらを起動しなくてはいけません。
対象のサービスの名前は、"/network/dns/client"です。

起動方法は、
svcadm enable /network/dns/client

です。成功とか失敗のメッセージは特に出ません。
ステータスの確認を行ってチェックします。

bash-3.00# svcs |grep dns
online 17:44:28 svc:/network/dns/client:default
bash-3.00#

こちらが、"online"になっていれば起動成功です。

digやnslookupコマンドで試すもよし、ブラウザをいきなり起動しても、ネットワーク設定がちゃんとできていれば恐らくうまく行きます。
(あ、わたくしはNATモードでネットワーク設定して、少し苦戦しました。そこはまた次回。)

0 件のコメント:

コメントを投稿