Windows 7 は DHCP から割り当てられたイントラネット DNS を使用しません

Windows 7 は DHCP から割り当てられたイントラネット DNS を使用しません

私は Windows 7 Pro ボックスを使用していますが、DNS サーバーの使用に関して奇妙な問題が発生しています。

ボックスには、ローカル ネットワーク上の Linux ベースの DHCP サーバーから IP アドレスと 2 つの DNS サーバーが割り当てられます。2 つの DNS サーバーは、ローカル DNS サーバー (プライベート ホスト用) と、社内 DNS に障害が発生した場合の冗長性のための ISP の DNS サーバーです。

Win7のIPCONFIGではDNSアドレスが適切に発行されていると表示されますが、解決は期待通りに機能していません。内部Webサーバーからホスト名経由でページを起動しようとすると、Win7のブラウザ(Chrome、IE)はアドレスを解決できないと表示します。netmonトレースは、Windowsが実際にDNS要求を直接転送していることを示しています。ISPのDNS、および一度もない私のネットワークのローカルDNSサーバーに接続します。いつもまずローカル DNS サーバーを試してください。奇妙なことに、nslookup を使用すると、解決は期待どおりに機能します (ローカルが最初)。

私は、DHCP によって発行された DNS サーバーが順番に使用される、つまりローカル DNS が常に最初の選択肢となるサーバーであると想定していますが、これは正しくありませんか?

これを調査する中で、これに非常によく似たいくつかの問題が、通常、マニュアルDNS サーバーの使用順序を構成する必要があり、DHCP の利便性が損なわれるように思われます。

Windows 7 には、DHCP で指定された順序で DNS サーバーを強制的に使用する IP/レジストリ設定がありますか?

よろしくお願いします。

答え1

基本設定

私の記憶が正しければ、DNS エントリは同等に扱われます。Windows が 1 つの DNS に接続できない場合は、もう 1 つの DNS が使用されます。したがって、1 つの DNS から「ホストが見つかりません」という応答が返されても、Windows はもう 1 つの DNS に問い合わせることはありません。この応答は接続成功を意味します。DNS ルックアップはその時点で停止します。

あなたの状況では、DNS と DHCP は次のように設定する必要があります。

  1. DHCPは内部DNSのみ割り当てる
  2. 内部 DNS は内部アドレスとインターネット アドレスの両方を解決します。

BIND9 はデフォルトで、まずローカルゾーンファイルに基づいて解決し、次にトップレベルドメインを照会します (ボックスがインターネットにアクセスできる場合)。Windows ボックスから次の操作を実行してテストできます。

nslookup
> server <IP of your internal dns box>
> <internal hostname>
> google.com

Bind は内部ホスト名と google.com の両方を解決できる必要があります。

ISP の DNS を利用したい場合は、転送セクションに入力します。 にする必要があります/etc/bind/named.option

デュアル/バックアップ DNS

複数の DNS サーバーを手動または DHCP 経由で提供する場合、クライアント マシンはそれらを同等に扱います。「プライマリ」や「セカンダリ」はありません。これは Windows と Linux の両方で同じです。

冗長性を提供するための「簡単な方法」は、2 つの内部 DNS を設定し、1 つをマスター、もう 1 つをスレーブにすることです。この方法であれば、更新する必要があるのは 1 つだけです。DHCP は、これらの 2 つの DNS サーバーの IP を内部使用のために提供します。

外部 DNS の冗長性に関しては、内部 DNS サーバーの転送セクションに複数の外部 DNS を配置します。

PS: 上記のすべてを踏まえると、内部マシン/サーバーの DNS ルックアップが必要であると想定しています。必要ない場合は、はるかに簡単にできます。

関連情報