DHCPについて

今回は、DHCPについての知識を解説します。【連載コラム:Linuxシステム管理標準教科書を読む(15)】

最終更新日:2024年11月06日

Linuxの基本的なスキルを習得したら、Linuxサーバーをシステムとして長期に運用管理していくためのスキルを身につけるのはいかがでしょうか。このコラムでは、「Linuxシステム管理標準教科書」の全体調整を担当した筆者が改めて大切なポイントを解説していきます。

DHCPは、クライアントに対してIPアドレスやネットマスクなど、ネットワーク通信に必要なパラメーターを提供するプロトコルです。複数のクライアントが接続するネットワークにおいては、もちろんすべてのクライアントのIPアドレスなどを手動で設定してもよいのですが、作業が煩雑になるため現実的ではありません。ネットワーク管理をする上で、DHCPの知識は必須であるといってもよいでしょう。今回は、DHCPに関して知っておいて欲しい知識を解説します。


DHCPの動作

DHCPは、IPアドレスを取得したいDHCPクライアントがリクエストを送信し、DHCPサーバーがそれに応答してIPアドレスを割り当てる、という動作をします。IPアドレスを取得する前なので、クライアントから見てDHCPサーバーがどこにいるかわかりません。そこで、「ブロードキャスト」という仕組みを使ってリクエストを送信します。

ブロードキャストアドレス

ブロードキャストアドレスは、IPアドレスにおいて、ホスト部のビットがすべて1になっているアドレスのことを言います。このアドレスが送信先に設定されると、同じネットワーク内にいるすべての機器に対して通信が到達します。DHCPの場合、まだIPアドレスを取得できていないので、クライアントのIPアドレスは「0.0.0.0」に仮に設定します。そしてネットマスクが未設定でもあるので、ブロードキャストアドレスは「255.255.255.255」として送信します。このパケットをDHCPサーバーが受け取ることでIPアドレスの割当動作が始まります。

DHCPサーバーは1つだけにすること

ブロードキャストを使ってDHCPのリクエストが行えるのは、DHCPサーバーがネットワーク内に1つしか無い、という前提の上に成り立っています。間違えてDHCPサーバーを複数接続しないようにしてください。ルーターなどのネットワーク機器にDHCPサーバー機能が備わっている場合があります。これらの機能が重複している時は、いずれかの機能のオフにするなどの対応が必要になります。

IPアドレスのリース

DHCPサーバーは、自分が持っているIPアドレスの範囲内から、クライアントに割り当てるIPアドレスを決定します。これを「リース」と呼びます。リースは通常一定の期間を定めておき、その期間が過ぎるとクライアントはそのIPアドレスを放棄し、再度IPアドレスのリクエストを行います。サーバーも、リース期間が過ぎたIPアドレスは再度割当可能なIPアドレスとして回収を行います。
不特定多数の機器が接続するようなネットワークでは、リース期間を短くして早めに回収し、貸出可能なIPアドレスが枯渇しないようにします。教科書では、18000秒(5時間)、最大36000秒(10時間)として設定していますが、クライアントがどれぐらいの時間接続しているかを考えて設定した方がよいでしょう。逆に、業務時間内ずっと接続させておきたいような場合には、もっと長く設定してもよいかもしれません。

IPアドレスの固定

特定の機器に特定のIPアドレスを自動的に割り当てたい場合には、その機器のネットワークインターフェースのMACアドレスを確認し、DHCPサーバー側でMACアドレスとIPアドレスの対応関係を設定しておくことで、そのIPアドレスを割り当てることができます。ただし、最近ではセキュリティの関係上、MACアドレスを変更してしまう動作をすることもあるので、クライアント側のネットワーク設定を確認する必要があります。


筆者紹介
宮原 徹 氏

宮原 徹 氏

株式会社びぎねっと

Linux標準教科書、Linuxサーバー構築標準教科書などの監修者。LinuCレベル1/レベル2 Version10.0の改訂作業にも協力。また、幅広いOSSに関する情報提供の場として「オープンソースカンファレンス(OSC)」の企画運営も。

<Linuxシステム管理標準教科書とは>

Linuxシステム管理標準教科書」(システム管理教科書)は2015年4月にリリースされた標準教科書シリーズの1冊です。Linuxシステムの運用管理という観点で書かれており、システム管理者という業務において知っておかなければならない基本的なトピックが解説されています。「Linux標準教科書」「Linuxサーバー構築標準教科書」でコマンド操作やサーバー構築の基本を学んだら、このシステム管理教科書を読んで、単にLinuxを使うのではなく、システムとして長期的に管理運用していくためのスキルを身につけてください。

バックナンバー

第14回:firewalldによるパケットフィルタリングの設定
第13回:パケットフィルタリングについて
第12回:各種ネットワーク設定ファイルについて(後編)
第11回:各種ネットワーク設定ファイルについて(前編)
第10回:NetworkManagerの利用

ページトップへ