
【基礎から学び直すITインフラ入門】#7 DHCP
7記事目。今回でネットワーク周りのところは最後となります。
特に章立てはしていなかったけれど、次回からはOS編に入る予定です。
どうでもいいんですけど、前回の記事は一週間でインプレッションが7件でした。では、始めていきます。前回記事は ↓ から。
はじめに
前回は、DNSについて学び、ドメイン名とIPアドレスがどのように変換されるのか、その階層構造とキャッシュの仕組みを理解できました。
今回は、DHCP(Dynamic Host Configuration Protocol)について学びます。
デバイスをネットワークに繋ぐだけで、自動的にIPアドレスが設定されるのか、この仕組みを見ていきましょう。
DHCPの基礎
DHCPとは
DHCPは、ネットワークに接続したデバイスに、自動的にIPアドレスなどの設定情報を配布するプロトコルです。スマホをWi-Fiに接続したときや、PCをLANケーブルに繋いだとき、特に何もしなくても自動的にインターネットに繋がります。
これは、DHCPが裏側で以下の情報を自動的に設定してくれるからです。
・IPアドレス
・サブネットマスク
・デフォルトゲートウェイ(ルータのアドレス)
・DNSサーバーのアドレス
DHCPがなければ、これらを全て手動で設定する必要があります。
DHCPの仕組み
DHCPによるIPアドレスの割り当ては、4つのステップで行われます。この4つの頭文字を取ってDORAと言われてます。

ステップ1: Discover(発見)
クライアントがネットワークに接続されると、DHCPサーバーを探すためのメッセージをネットワーク全体にブロードキャストします。この時点ではまだIPアドレスを持っていないので、送信元は0.0.0.0、宛先は255.255.255.255(全体)となります。
ステップ2: Offer(提供)
DHCPサーバーが応答します。このIPアドレスを使いませんか、という提案です。この提案には、IPアドレスだけでなく、サブネットマスク、デフォルトゲートウェイ、DNSサーバー、リース期間も含まれています。
複数のDHCPサーバーが存在する場合、それぞれが提案を返す可能性がありますが、クライアントは通常、最初に届いた提案を採用します。
ステップ3: Request(要求)
クライアントは提案を受け入れる場合、そのIPアドレスをくださいという要求を送ります。複数のDHCPサーバーにどの提案を受け入れるかの通知をする必要があるため、この要求もブロードキャストで送られます。
ステップ4: Ack(確認応答)
DHCPサーバーは、要求に対して確認応答を返します。これで正式にIPアドレスの割り当てが完了し、クライアントはネットワーク通信ができるようになります。
リース期間
DHCPで割り当てられたIPアドレスにはリース期間があります。これは割り当てられたIPアドレスの有効期限です。
例えばリース期間が24時間の場合、クライアントは12時間後(リース期間の半分)に更新要求を送ります。DHCPサーバーが応答すれば、同じIPアドレスを引き続き使えて、リース期間がリセットされます。
リース期間の設定は、ネットワークの用途によって変わります。カフェやホテルのWi-Fiのように、デバイスの入れ替わりが激しい場所では短く(1時間程度)、オフィスのように固定的な場所では長く(数日〜1週間)設定します。
実際には、デバイスが常時接続されている場合、リース期間の半分で自動更新されるため、ユーザーがこのプロセスを意識することはほとんどありません。
DHCPが見つからなかった場合
DHCPサーバーが見つからなかったり、応答がなかったりすると、PCは自動的に169.254.x.xというIPアドレスを割り当てます。これをAPIPA(Automatic Private IP Addressing)と呼びます。
このIPアドレスが設定されている場合、通常はネットワーク接続に問題があることを示しています。よくある原因は、DHCPサーバーがダウンしている、LANケーブルが正しく接続されていない、Wi-Fiの認証に失敗している、などがあります。
まとめ
デバイスをネットワークに繋ぐだけでIPアドレスが自動設定される便利な仕組みの裏側で、DHCPというプロトコルが働いていることで、普段のネットワークへの接続で恩恵を受けていることが理解できましたね。
次回は、Linuxの基礎について学んでいきます。ディレクトリ構造、基本コマンド、権限管理など、OSに関する基本的な知識を身につけましょう。