DHCPスコープとは、DHCPサーバー上の設定オブジェクトであり、単一のサブネット上のクライアントにリース可能なIPアドレスのプールおよび関連設定(アドレス範囲、除外、リース期間、デフォルトゲートウェイやDNSサーバーなどのオプションを含む)を定義するものです。 スコープはDHCP管理の基礎であり、その適切な設定は極めて重要です。なぜなら、プールの枯渇、範囲の重複、ゲートウェイやDNSオプションの誤設定、スコープとサブネットの不一致といった設定ミスは、クライアントがアドレスの取得に失敗したり、断続的な接続障害が発生したり、ネットワーク接続が失われたりする原因となるからです。 スコープをIPアドレス管理システムと連携させることで、アドレス範囲、利用状況、所有権に関する単一の信頼できる記録が提供され、より信頼性の高い監査やキャパシティプランニングが可能になるほか、数百から数千のサブネットを持つ企業ネットワーク全体での設定のずれを軽減できます。
DHCPスコープの仕組み
DHCP サーバーは、スコープを使用して、クライアントに提供するアドレスやオプションを決定します。サーバーは、クライアントのネットワーク上の位置をスコープと照合し、そのスコープのプールからアドレスを割り当てます。
- スコープの定義:管理者は、サブネット、アドレス範囲の開始値と終了値、およびサブネットマスクを設定します。ルーターや静的アドレスを持つサーバーなど、リースしてはならないアドレスは、除外として指定されます。
- オプションとリース期間の設定:管理者は、デフォルトゲートウェイ、DNSサーバー、ドメイン名などのオプションと、リース期間を設定します。オプションの形式については、RFC 2132 に記載されています。
- クライアントとスコープの照合:クライアントがリクエストをブロードキャストすると、サーバーは、リクエストが到着したインターフェース、または中継されたリクエストの場合は中継エージェントのゲートウェイアドレスを使用して、スコープを選択します。
- アドレスのリース:サーバーはプールから空きアドレスを選択し、スコープのオプションとともにそれを提示します。クライアントがこれを受け入れると、サーバーはリースを記録し、そのアドレスを「使用中」としてマークします。
- 更新または解放:クライアントは、リース期限が切れる前にリースを更新します。更新しない場合、そのアドレスはプールに戻り、別のデバイスにリースされる可能性があります。
スコープには、特定のアドレスをクライアント識別子に紐付ける予約を含めることもでき、これによりデバイスは常に同じアドレスを受け取ることができます。用語は様々で、同じ仕組みを「プール」や「サブネット宣言」と呼ぶサーバーもあります。サーバー間のフェイルオーバーや負荷分散のために、複数のスコープをグループ化することができます。
DHCPスコープに関する一般的な問題
ゲスト用Wi-Fiなどの混雑したネットワーク上のクライアントは、アドレスを取得できず、自己割り当てされた169.254のアドレスに切り替わります。一般的な原因としては、デバイス数に対して範囲が狭すぎる場合や、すでに接続を解除したデバイスのアドレスを保持し続けるリース時間が長すぎる場合などが挙げられます。
静的デバイスは、そのアドレスが範囲から除外されていなかった場合、接続が切断されたり、重複アドレスの警告が発生したりすることがあります。その場合、スコープは、ルーターやサーバーによってすでに使用されているアドレスをリースしてしまいます。
クライアントはアドレスを取得できますが、他のネットワークにアクセスしたり、ホスト名を解決したりすることはできません。これは、デフォルトゲートウェイまたはDNSサーバーのオプションが別のスコープからコピーされた場合、あるいはサブネットの番号変更後に変更されなかった場合に発生します。
クライアントは、誤ったサブネットマスクのアドレスを受け取るか、あるいはアドレスがまったく提供されないことがあります。スコープがルーターインターフェースまたはリレーエージェント上の実際のサブネットと一致しないため、サーバーは誤ったスコープを選択するか、スコープを指定しないことになります。
フェイルオーバーや手動編集の後、2台のサーバーでスコープ設定が異なるため、クライアントは応答したサーバーに応じて異なるオプションを受け取ります。これは、1台のサーバーで行われた変更がレプリケーションされていないことが原因です。