Windows Server 2003 DNS のネットマスク注文機能とラウンド ロビン機能の説明

この記事では、ネットマスクの順序付け機能とラウンド ロビン機能と、これらの機能を組み合わせて使用する方法について説明します。

適用対象: Window Server 2003
元の KB 番号: 842197

概要

この記事では、Windows Server 2003 ドメイン ネーム システム (DNS) のネットマスクの順序付け機能とラウンド ロビン機能について説明します。 さらに、この記事では、これらの機能を一緒に使用する方法について説明します。 これを行うと、ネットマスク順序付きサーバーから返される結果をランダム化できます。

注:

DNS のラウンド ロビン機能を使用すると、DNS は毎回別の順序で名前の IP アドレスを返すようになります。

詳細

ネットマスクの順序付け機能は、クライアントにローカル リソースの優先順位を付けるために、型 A DNS クエリのアドレスを返すために使用されます。 たとえば、次の条件が true の場合、インターネット プロトコル (IP) アドレスの近接性に基づいて、名前のクエリの結果がクライアントに返されます。

  • 同じ DNS 名に対して 8 種類の A レコードがあります。
  • 8 種類の A レコードはそれぞれ、個別のアドレスを持っています。

Microsoft Windows 2000 Server の最初のリリースでは、この近接性は、クライアントに割り当てられているアドレスのネイティブ クラスに基づいて計算されます。 クライアントにネイティブ クラス A アドレスが割り当てられている場合、クライアントに送信される応答は、クライアント クラス A ネットワーク メンバーシップに一致するエントリによって優先されます。 これは、ネイティブ クラス B とネイティブ クラス C アドレスにも当てはまります。

ラウンド ロビン機能は、同様の種類のクエリの結果をランダム化して、基本的な負荷分散機能を提供するために使用されます。 前の例では、同じ名前と異なる IP アドレスを持つ A レコードを 8 種類入力すると、クエリごとに異なる回答が上位に優先順位付けされます。 新しい IP アドレスは各クエリで上位に優先されるため、クライアントは同じサーバーに繰り返しルーティングされません。

Windows 2000 Server の最初のリリースでは、ネットマスクの順序付け機能とラウンド ロビン機能を同時にネイティブに使用することはできません。 ネットマスクの順序付け機能がオンになっている場合、回答は常に同じ順序でクライアントに提供されます。 Windows Server 2003 では、サブネット ベースのネットマスク順序付け機能とラウンド ロビン機能の両方を使用できるように、この動作が変更されました。 ネットマスク順序付け機能とラウンド ロビン機能の両方を使用すると、近接認識と負荷分散が実現されます。

現在の多くのネットワーク環境では、実際のアドレスにネイティブなサブネット マスクが存在することは珍しいです。 そのため、IP アドレスのネイティブ クラスに基づくネットマスク順序は、ネットワークがローカルであるかどうかを予測する際に信頼できません。 Windows Server 2003 は、ネイティブ アドレス クラスに関係なく、クラス C に近接性を基盤とします。

たとえば、会社には 126.45.x.x サブネットが割り当てられます。 内部ネットワークでこのサブネットを定義するために 8 ビット サブネット マスクが使用されることはほとんどありません。 さらに、会社はクラス A サブネットの一部のみを所有しています。 この範囲はクラス B またはより小さいネットワークに分割される可能性があるため、ネットマスクの順序はクライアントに近い結果を返さない可能性があります。 これは、ネットワーク構成が、ネイティブ クラスのアドレスによって暗黙的に示されるネットワーク構成と異なる場合に当てはまります。 Windows Server 2003 はクラス C に近接通信を基盤としているため、近いリソースはより検出可能です。

コマンドを Dnscmd /Config /LocalNetPriorityNetMask 0x000000FF Dnscmd.exe 使用して、Windows Server 2003 の設定を既定の設定に復元できます。

Windows Server 2003 の既定の設定はクラス C の基本近接性ですが、この設定を変更できます。 環境に基づいて、ネットマスクの順序付けに対してマスクの相対的な部分を定義できます。 /LocalNetPriorityNetMask スイッチを発行すると、ネットマスクの順序付け操作に重要なビットを指定できます。 コマンドを使用して、ネットマスクの Dnscmd /Config /LocalNetPriorityNetMask 0x0000FFFF 順序付けにクラス B (または 16 ビット) を使用できます。

次の表に、他のネットマスク順序付け設定を示します。

ネットマスク LocalPriorityNet
255.255.255.0 0x000000ff
255.255.0.0 0x0000ffff
255.0.0.0 0x00ffffff

ホストに 6 ビットしか使用しないと、マスクは 255.255.255.192 になります。 CIDR 表記では、クラスレスドメイン間ルーティングでは、これは /26 マスクになります。 コマンドを Dnscmd /Config /LocalNetPriorityNetMask 0x0000003F Dnscmd.exe 使用して、サブネット化されたクラス C アドレスを構成できます。

重要なビットは、アドレスのどの部分がホスト空間であるかを設定します。 0x3のバイナリ等価は 11 で、0xFのバイナリ等価は 1111 であるため、ホスト アドレスの一部として 6 ビットが設定されます。 7 ビット (255.255.255.128 または /25) が必要な場合、値は 0x7F のバイナリ等価値が 0111 1111 であるため、0x0000007Fになります。 5 ビット (255.255.255.224 または /27) のみが必要な場合、値は0x0000001Fされます。これは、0x1F のバイナリ等価値が 0001 1111 であるためです。

コマンドは Dnscmd /Config /LocalNetPriorityNetMask 0xFFFFFFFF 、クライアント ネイティブ IP アドレス クラスに基づいてラウンド ロビンとネットマスクの順序付けを使用するように Windows Server 2003 を構成します。