DNS サフィックス検索一覧を調整する

CLIENT


DNS サフィックス検索一覧

この頃はすっかり TCP/IP によるネットワークが一般化していて、Windows 間の通信でもドメイン名を用いて通信先を特定することも自然なこととなりました。

特に Windows 2000 ドメイン空間を構築している場合には DNS による名前解決が当たり前のように行われて、コンピュータ名だけを指定すれば、自分が所属するドメインを表すサフィックス文字列を自動的に付加して検索してくれるようになっているようです。

 

ただ、これが便利かといえば便利なのかもしれないですけど、稀に混乱も招いてみたりな感じでした。

というのも、あるときふとしたきっかけで "www.japan" とか "test" というドメインの名前解決を行ったところ、なにやら IP アドレスが取得できてしまったのでした。インターネット関連の知識を少し身に付けると、これらのドメインは常識的には名前解決できないことは想像できます。

けれどもそれが出来てしまったものだから、何かウィルスに感染しているのではないかとか、隠しドメインみたいなものがあるのかとか、そんな臆測がついつい頭を過ぎります。

 

調べてみれば、その原因は単純にドメイン名の末尾に "DNS サフィックス" というものが自動的に付加されていたためだったんですけどね。

DNS サフィックスというのは、指定したドメイン名が見つからなかった場合などに自動的にその右側に付加される文字列です。これによって、たとえホストが見つからなくても可能性のあるドメイン内からそれを検索することができるのですけど、その試みる DNS サフィックスがたくさん登録されていて、思いがけないホストを見つけてきてしまったのでした。

Windows で TCP/IP ネットワークを設定すると、どうやら "プライマリ DNS サフィックス" と共にそれを構成する親サフィックスとが検索対象となってしまうようです。

ここで、プライマリ DNS サフィックス" というのは Windows 2000 ドメインに参加したりすると設定される所属ドメインの DNS 名で、これが DNS サフィックスに設定されることによって、従来の NetBIOS 名のようにコンピュータ名だけで探しても、同一ドメイン内の PC を見つけることができるようになっています。

 

今回の問題となったのは、この "プライマリ DNS サフィックス" に含まれる親ドメインのうち、最後の 2 レベルまでの全てが "DNS サフィックス" として登録されてしまっていたことです。

たとえば "xxx.yyy.zzz.ne.jp" という "プライマリ DNS サフィックス" が登録されていたとすると、その "DNS サフィックス" としては "xxx.yyy.zzz.ne.jp" の他に、その親の "yyy.zzz.ne.jp" と "zzz.ne.jp" と、最後の 2 レベルの "ne.jp" とが登録されてしまいます。

いくらなんでも、該当がなかった場合としても、ここまで検索してもらう必要はないような気さえしますけど、なにはともあれ問題なのが "ne.jp" までもが検索対象となってしまっているところです。これだとつまり、日本のネットワークサービスとして登録しているドメイン全てが検索対象となってしまって、思いがけない PC に接続要求を行ってしまう恐れが出てきます。

たとえば内部ネットワークに FTP サービスを提供するホストがあったとして、そこに接続しようと名前を指定したところ、名前を間違えていて知らない別のサーバへ接続なんていうことも有り得ます。そこでもたまたま FTP サービスが稼動していたとしたら、少なくともユーザ名とそれに対応するパスワードを送信して認証を試みる段階まで進んでしまって、そこのサーバ管理者にアカウント情報が漏れてしまう恐れだってまったくないとは言えないです。

他にも Windows ファイル共有などで自動的にログインを試みようとする NTLM 認証とかもそうですし、そうやって思いがけないことが起こる可能性もあるので、必要以上の DNS サフィックスは登録しない方が安全なような気がします。

そんなこんなで、Windows に登録されている "DNS サフィックス検索一覧" の内容から不要なものを消去する方法を調べてみました。

 

 

DNS サフィックス検索一覧 を調整する

"DNS サフィックス検索一覧" を調整するには、ネットワークのプロパティにて "TCP/IP 詳細設定" の設定を変更する必要があります。

Windows Vista の場合は、スタートメニューから "ネットワーク" を開いて、フォルダのメニューから "ネットワークと共有センター" を選択します。すると "ネットワーク接続" フォルダが開くので、たとえば "ローカルエリア接続" など、該当するネットワーク接続のプロパティページを表示します。そしてそこから "インターネット プロトコル バージョン 4 (TCP/IPv4) のプロパティを選択して 【詳細設定】 ボタンを押す感じです。

Windows 2000 や Windows XP でも、コントロールパネルからネットワーク接続などを開いて TCP/IP のプロパティを表示すれば、Windows Vista と同じような設定画面になると思います。

 

TCP/IP の詳細設定にたどり着いたら、[ DNS ] タグを選択します。

ここの "プライマリおよび接続専用の DNS サフィックスを追加する" というところで、自分自身が所属しているドメイン空間が "DNS サフィックス検索一覧" に追加されるようになっています。

そして、その下の "プライマリ DNS サフィックスの親サフィックスを追加する" のチェックによって、プライマリ DNS サフィックスの 2 レベルまでの親サフィックスが追加されるように設定できます。このチェックボックスを OFF にすることにより、不要な DNS サフィックスを省くことができます。