この特集のトップページへ
Chapter 8:Microsoft DNS 〜Windows 2000のみでの構成〜

  COLUMN   Windows 2000 DNSクライアントの新機能

 Windows 2000では,DNSクライアントの機能も強化されている。Windows 2000で追加されたDNSクライアントの機能には,次のようなものがある。

  • System-wide caching
     Windows 95やWindows 98,Windows NTでも,DNSの検索結果はキャッシュされていた。しかし,これはアプリケーションレベルで処理されていたため,ftpクライアントでキャッシュされたDNSの検索結果はWebブラウザでは利用できなかった。Windows 2000では,DNSのキャッシュがアプリケーションレベルではなく,システムレベルで処理されるように拡張されている。そのため,アプリケーション側ではキャッシュするような実装になっていなくとも,いったん検索されたドメイン名はシステム側で自動的にキャッシュに保存され,TTLの期間だけ保持される。
     また,%systemroot%\system32\drivers\etc\hostsファイルの内容は,コンピュータを起動させたときにキャッシュに読み込まれる。このファイルの内容を変更した場合には,すぐにキャッシュに反映される。
     その時点でキャッシュに保持されている内容を表示するためには,IPCONFIGユーティリティに/displaydnsオプションを指定して実行する。なお,キャッシュの内容を消去するには,IPCONFIGユーティリティに/flushdnsオプションを指定して実行すればよい。なお,もしシステムレベルのキャッシュを無効にしたければ,“net stop dnscache”というコマンドを実行する。
     
    C:\> ipconfig /displaydns
    
    Windows 2000 IP Configuration
    
       localhost.
       ------------------------------------------------------
         Record Name . . . . . : localhost
         Record Type . . . . . : 1
         Time To Live  . . . . : 31516857
         Data Length . . . . . : 4
         Section . . . . . . . : Answer
         A (Host) Record . . . :
                           127.0.0.1
    
       1.0.0.127.in-addr.arpa.
       ------------------------------------------------------
         Record Name . . . . . : 1.0.0.127.in-addr.arpa
         Record Type . . . . . : 12
         Time To Live  . . . . : 31516857
         Data Length . . . . . : 4
         Section . . . . . . . : Answer
         PTR Record  . . . . . :
                           localhost
    
       az3.active.dsl.local.
       ------------------------------------------------------
         Record Name . . . . . : az3.active.dsl.local
         Record Type . . . . . : 1
         Time To Live  . . . . : 3573
         Data Length . . . . . : 4
         Section . . . . . . . : Answer
         A (Host) Record . . . :
                           192.168.1.100
    
     
  • Negative caching
     通常は,DNSの検索に成功したドメイン名をキャッシュに保持するが,Negative cachingは,DNSの検索に失敗したドメイン名をキャッシュする機能である。たとえば,ns.bridgemw.co.jpというドメイン名を検索したが,該当するドメイン名がDNSに登録されていなかった場合,DNSサーバーから否定応答が戻ってくる。このときWindows 2000は,ns.bridgemw.co.jpドメインの問い合わせに否定応答が戻ってきたことをキャッシュする。DNSの検索に失敗する場合は,問い合わせがルートサーバー以下のDNSサーバーに転送されて,最終的にタイムアウトするまでに長時間待たされることも少なくないので,この機能は案外ありがたい。
     ネガティブキャッシュにはTTLが存在しないため,デフォルトでは5分間キャッシュするように設定されている。この値は,レジストリの\HKEY_Local_Machine\System\CurrentControlSet\Services\DNSCache\ParametersのNegativeCacheTimeにREG_DWORD型で設定されている(単位は秒)。この値を0にすると,Negative cachingが無効になる。
     通常のキャッシュと同様に,IPCONFIGユーティリティに/displaydnsオプションを指定して実行することで,キャッシュの内容を表示することができる。Negative cacheの内容は,次のように表示される。
     
    C:\> ipconfig /displaydns
    

    中略

       www.itmedia.co.jp.
       ------------------------------------------------------
              Negative cache entry for name error
    
    
       www.bridgemw.co.jp.
       ------------------------------------------------------
              Negative cache entry for name error
    
     
  • ネットワークアダプタごとのDNSサフィックス
     DNSサフィックスとは,FQDNを指定していない場合に補われるドメイン名のことである。Windows 95やWindows 98,Windows NTでは,システムで1つのDNSサフィックスしか指定することができなかった。しかしWindows 2000では,ネットワークアダプタごとにDNSサフィックスを指定することができるようになっている。
     Windows 2000でFQDNを指定しなかった場合には,次の順序でDNSサフィックスを補い,名前解決を試みる。
    1. TCP/IPのプロパティに用意されている[以下のDNSサフィックスを順に追加する]で指定されたグローバルサフィックス
    2. プライマリDNSサフィックス
    3. ネットワークアダプタごとに指定されたDNSサフィックス
     もしDNSサフィックスを補う順序を自分でカスタマイズしたければ,TCP/IPのプロパティに用意されている[以下のDNSサフィックスを順に追加する]に指定すればよい(Fig.8-5)。この指定は,一見するとネットワークアダプタごとの設定であるかのように思えるが,実はそうではない。ここで指定する内容は,システム全体に影響を及ぼすグローバルサフィックスとなる。
    Fig.8-5 TCP/IPのプロパティ(クリックで拡大可能)
    fig.8-5
prev Chapter 8 5/13 next