PR

DHCPとは?IPアドレスを自動設定するDORAの仕組みを解説

DHCP ネットワーク
スポンサーリンク

はじめに

パソコンやスマートフォンを家庭や会社のネットワークへ接続すると、多くの場合はIPv4アドレスを手入力しなくても通信を始められます。端末が自動的に設定を受け取れるのは、DHCPがネットワーク内のサーバーとやり取りしているためです。

この記事では、DHCPv4がIPv4アドレスなどを自動設定する仕組みを解説します。読み終えると、Discover・Offer・Request・ACKの4段階と、取得したアドレスをリースとして更新する理由を説明できるようになります。

DHCPとは

DHCP(Dynamic Host Configuration Protocol)は、端末へIPv4アドレスと通信に必要な設定情報を自動的に渡す仕組みです。設定を要求する端末をDHCPクライアント、アドレスと設定情報を管理して応答する機器をDHCPサーバーと呼びます。

家庭用ルーターは、一般にDHCPサーバーの機能を備えています。端末をWi-FiやLANへ接続するたびにIPv4アドレスを手入力しなくてもよいため、設定の手間を減らし、管理している範囲からアドレスを割り当てられます。

IPv6にもDHCPv6という別の仕組みがありますが、メッセージやアドレス設定の考え方はDHCPv4と同一ではありません。この記事では、IPv4で使うDHCPv4を対象とします。

DHCPで自動設定される情報

DHCPはIPv4アドレスだけを配布するものではありません。DHCPオプションを使うことで、端末がネットワークで通信するための情報も通知できます。

  • IPv4アドレス:ネットワーク上で端末を識別する
  • サブネットマスク:ネットワーク部とホスト部の境界を示す
  • デフォルトゲートウェイ:別のネットワークへ送るときの中継先を示す
  • DNSサーバー:ドメイン名を名前解決するときの問い合わせ先を示す

IPv4アドレスとサブネットマスクの関係は、IPv4アドレスとは?ネットワーク部・ホスト部とサブネットマスクを解説で解説しています。DNSサーバーの役割は、DNSとは?ドメイン名からIPアドレスを調べる名前解決の仕組みを解説を参照してください。

DORAでIPv4アドレスを取得する流れ

DHCPクライアントが新しくIPv4設定を取得するときは、一般に4種類のメッセージを順番に交換します。頭文字を取ってDORAと呼ばれる流れです。

  1. DHCPDISCOVER:クライアントが、応答できるDHCPサーバーを探します。
  2. DHCPOFFER:サーバーが、利用可能なIPv4アドレスや設定情報を提案します。
  3. DHCPREQUEST:クライアントが利用する提案を選び、そのサーバーとほかのサーバーへ選択結果を知らせます。
  4. DHCPACK:選ばれたサーバーが割り当てを確定し、リース期間を含む設定情報を返します。
DHCPクライアントとサーバーがDiscover、Offer、Request、ACKを交換してIPv4設定を取得する流れ
図1 DORAによるIPv4設定取得の流れ

複数のサーバーからDHCPOFFERが届く場合、クライアントはその中から一つを選びます。DHCPREQUESTをブロードキャストすることで、選ばれたサーバーは処理を続け、選ばれなかったサーバーは自分の提案が採用されなかったことを判断できます。

最初の問い合わせでブロードキャストを使う理由

DHCPを開始する時点のクライアントは、まだ利用できるIPv4アドレスを持たず、DHCPサーバーのアドレスも知らない場合があります。そのため、最初のDHCPDISCOVERを同じネットワーク内へブロードキャストし、応答できるサーバーを探します。

DHCPREQUESTも初期割り当てではブロードキャストされます。これにより、提案した複数のサーバーへ、クライアントがどの提案を選んだかを一度に知らせられます。ブロードキャストとマルチキャストの違いは、ブロードキャストとマルチキャストとは?違いや用途を分かりやすく解説で解説しています。

リースと更新の仕組み

DHCPで割り当てるIPv4アドレスには、通常、利用できる期限が設定されます。この期限付きの割り当てをリースと呼びます。使われなくなったアドレスをサーバーが再び割り当てられるため、限られたアドレスを固定したままにせず管理できます。

クライアントは期限が切れるまで何もしないのではなく、途中でDHCPREQUESTを送り、リースの延長を試みます。まずは割り当て元のサーバーへユニキャストで更新を求め、応答がない状態が続くと、ほかのDHCPサーバーにも届くようブロードキャストで更新を試みます。

更新に成功すれば同じIPv4アドレスを継続して利用できます。リース期限までに更新できなければ、そのアドレスの利用を停止し、改めて設定を取得する必要があります。

DHCPリレーで別ネットワークのサーバーを利用する

ブロードキャストは通常、ルーターを越えて別のネットワークまでは届きません。そのため、ネットワークごとにDHCPサーバーを設置しなければ、離れた場所にある一台のサーバーへ問い合わせられないように見えます。

この問題を解決するのがDHCPリレーエージェントです。リレーエージェントはクライアント側のネットワークでDHCPメッセージを受け取り、別のネットワークにあるDHCPサーバーへ転送します。サーバーからの応答もクライアント側へ中継するため、複数のネットワークを一台または少数のDHCPサーバーで管理できます。

DHCP予約と端末への手動設定の違い

同じ端末に毎回同じIPv4アドレスを使わせたい場合でも、必ず端末側へ手動入力する必要はありません。DHCPサーバーでMACアドレスなどの識別情報とIPv4アドレスを対応付けるDHCP予約を使えます。

設定方法 アドレスを決める場所 主な特徴
通常のDHCP割り当て DHCPサーバー 管理範囲から自動的に割り当てる
DHCP予約 DHCPサーバー 特定の端末へ同じアドレスを割り当てやすい
端末への手動設定 各端末 DHCPを使わず、端末ごとに設定と重複を管理する

DHCP予約は端末がDHCPで設定を受け取る点では通常の割り当てと同じです。サーバーやプリンターなどでアドレスを固定したいときに、設定をサーバー側へ集約できる利点があります。

まとめ

DHCPは、端末へIPv4アドレスやサブネットマスク、デフォルトゲートウェイ、DNSサーバーなどを自動設定する仕組みです。新しい割り当てでは、DHCPDISCOVER、DHCPOFFER、DHCPREQUEST、DHCPACKの4段階でサーバーを探し、提案を選び、リースを確定します。

最初はクライアントが自身のIPv4アドレスやサーバーの場所を知らないため、ブロードキャストを使用します。取得後は期限が来る前にリースを更新し、別ネットワークのサーバーを利用する場合はDHCPリレーエージェントがメッセージを中継します。

関連記事


コメント

タイトルとURLをコピーしました