ダイナミック ホスト コンフィギュレーション プロトコル(DHCP) は、ネットワーク プロトコルを指す英語の用語で、その役割はステーションの TCP/IP パラメータの自動構成、特にステーションにIP アドレスとサブネット マスクを自動的に割り当てることを保証することです。 DHCP は、デフォルト ゲートウェイ、DNS ネーム サーバー、および NBNS ネーム サーバー (Microsoft ネットワークではWINSサーバーとして知られています) のアドレスを構成することもできます。
IP の初期設計では、ネットワークに接続されている各コンピュータが適切な TCP/IP パラメータで事前構成されていることを前提としていました。これが静的アドレス指定です。大規模または拡張されたネットワークでは、変更が頻繁に発生するため、静的アドレス指定によりメンテナンスの負担が大きくなり、エラーのリスクが生じます。さらに、割り当てられたアドレスは、それを保持するコンピュータが稼働していない場合でも使用できません。これが問題となる典型的なケースは、一般に IP アドレスよりも多くのクライアントを有するインターネット アクセスプロバイダー (英語では ISP または ISP) です。ただし、すべてのクライアントが同時に接続されることはありません。
DHCP は、次の 2 つの欠点に対する解決策を提供します。
- 使用中のコンピュータのみがアドレス空間のアドレスを使用します。
- パラメータ (ゲートウェイ アドレス、ネーム サーバー) の変更は、再起動中にステーションに反映されます。
- これらのパラメータの変更は DHCP サーバーで集中的に行われます。
このプロトコルは 1993 年 10 月に初めて導入され、RFC 1531 によって定義され、 RFC 1534 、 RFC 2131 、およびRFC 2132によって修正および補足されています。
このプロトコルはIPv4で動作します。 IPv6でも動作します。
機能している
- TCP/IP を備えているが IP アドレスを持たないコンピュータは、このポートでリッスンしているサーバーのポート 67 にアドレス指定されたデータグラム (DHCP DISCOVER) をブロードキャストで送信します。このデータグラムには、特に顧客の物理アドレス (MAC) が含まれます。
- このデータグラムを受信したDHCPサーバーは、クライアントが属するネットワーク上でアドレス (DHCP オファー) を提供できる場合、その物理アドレスによって識別されるクライアント (ポート 68 上) に向けて DHCP オファーをブロードキャストします。住所。このオファーには、サーバーの IP アドレスに加えて、サーバーがクライアントに提供する IP アドレスとサブネットマスクが含まれます。いくつかのオファーが顧客に送信される場合があります。
- クライアントは、受信したオファーの 1 つ (最初に到達したオファー) を保持し、DHCP要求データグラム (DHCP REQUEST) をネットワーク上にブロードキャストします。このデータグラムには、サーバーの IP アドレスと、クライアントに提供されたばかりの IP アドレスが含まれています。これには、選択したサーバーにこのアドレスを割り当てるよう要求し、場合によってはパラメーター値を送信し、オファーを行った他のサーバーにそれが受け入れられなかったことを通知する効果があります。
- 選択された DHCP サーバーは、IP アドレスとそのサブネット マスク、このアドレスのリース期間、クライアントでの顧客の動作を決定する 2 つの値 T1 と T2 をクライアントに割り当てる確認応答データグラム ( DHCP ack ) を準備します。リースの終了、および場合によってはその他のパラメータ:
- デフォルトゲートウェイのIPアドレス
- DNSサーバーのIPアドレス
- NBNSサーバー(WINS)のIPアドレス
クライアントはNetBiosノード タイプを受け取ることもできます。
DHCP サーバーが受け入れることができるオプションのリストは、 「RFC 2132 : DHCP Options and BOOTP Provider Extensions」の「RFC 1497 : Provider Extensions」の章に記載されています。
もちろん、DHCP サーバーには静的 IP アドレスが提供される必要があります。

リースの更新
動的 IP アドレスは限られた期間だけ付与され、DHCP トランザクションを終了する確認応答としてクライアントに送信されます。
付随する T1 値によって、クライアントがアドレスを付与したサーバーに対して定期的にリースの更新を要求し始めるまでの期間が決まります (通常、リース期間の半分)。今回のトランザクションは、アドレスからアドレスへの古典的な IP 送信によって実行されます。
2 番目の値 T2 で設定された制限時間が経過し、リースを更新できなかった場合 (元の DHCP サーバーがサービス停止している場合など)、クライアントはブロードキャストによって新しいアドレス割り当てを要求します。
リースの終了時に顧客が更新を取得できなかったり、新しい割り当てを取得できなかった場合、アドレスは非アクティブ化され、TCP/IP ネットワークを通常に使用できなくなります。

異なるセグメント上のクライアントとサーバー
DHCP サーバーとクライアントが同じ IP セグメント上にない場合、ルーターは一般的なブロードキャストを送信しないため、後者によって送信されたブロードキャストはサーバーに届きません ( RFC 1542には、ルーターがDHCP ブロードキャストを通過させる可能性が記載されています)。この場合、DHCP リレー エージェントを使用します。
この特定のホストは静的 IP アドレスを使用して構成されており、ポート 68 (リレー エージェント プログラムがリッスンする) に到着する DHCP 要求の転送先となる DHCP サーバーのアドレスを認識しています。 DHCP サーバーから受信した応答をそのセグメント (クライアントのセグメントでもあります) 上でブロードキャストします。

DHCPサーバーの設定
DHCP サーバーが IP アドレスを提供できるようにするには、DHCP サーバーに、そこから取得できるアドレスの「貯蔵所」を与える必要があります。これがアドレス範囲(スコープ)です。複数の範囲を、別々または連続して定義することができます。
DHCP サーバーで使用できる範囲に含まれないセグメント アドレスは、いかなる状況でも配布されず、静的な割り当ての対象となる場合があります (一般的には、固定 IP アドレスを必要とするサーバー、ルーター、ネットワーク プリンターなど)。
静的アドレス指定で使用するために、範囲に含まれるアドレスやアドレス ブロックなどを除外することもできます。
最後に、特定の物理的住所を持つ顧客にこのアドレスを付与する可能性を制限することで、アドレス予約を行うことができます。これは、アドレスを固定しておく必要があるが、他の IP パラメータを集中的かつ自動的に制御したいマシンに役立ちます。
同じセグメント上で複数の DHCP サーバーを使用する場合、異なるサーバーのアドレス範囲の交差部分は空である必要があります。空でない場合、割り当てと更新が曖昧になります。実際、DHCP サーバーは、許可するリースに関する情報を一切交換しません。

