CCNA対策として、DHCPの基本を簡単にまとめました。
DHCPの基本
DHCPとは
DHCP は、ホストに対して IP アドレスなどの TCP/IP 設定を自動配布する仕組みです。手動設定を減らせるため、設定ミスを防ぎやすく、端末数が多い環境でも管理しやすくなります。
DHCP で配布できる主な情報は次の通りです。
- IP アドレス
- サブネットマスク
- デフォルトゲートウェイ
- DNS サーバ
- ドメイン名
- リース期間
DHCPの動作
DHCPによるIPアドレスの割り当ては、DORA と呼ばれる次の流れで行われます。
-
DHCP Discover
クライアントが DHCP サーバを探します。 -
DHCP Offer
DHCP サーバが、利用可能な IP アドレスを提案します。 -
DHCP Request
クライアントが、使用したい提案を選んで要求します。 -
DHCP Acknowledge
DHCP サーバが、そのアドレスの割り当てを確定します。
DHCP では IP アドレスを永久に渡すのではなく、一定期間だけ貸し出します。この貸し出し期間を リース といいます。リース期間が切れる前に、クライアントは同じアドレスを引き続き使えるよう更新を行います。
Gratuitous ARP
Gratuitous ARP は、自分自身の IP アドレスに対して送る ARP です。
主な目的は次の通りです。
- 自分が使おうとしている IP アドレスの重複確認
- 周囲の機器に対して、自分の IP アドレスと MAC アドレスの対応を通知すること
DHCP では、クライアントがアドレス取得後に Gratuitous ARP を送ることがあります。
これにより、同じ IP アドレスを使っている機器がいないか確認しやすくなります。
DHCPの設定
DHCPサーバーの設定
DHCP サーバーとして動作するルータでは、まず配布したくないアドレスを除外し、その後 DHCP プールを作成します。
-
除外アドレス
手動設定で使うアドレスや、ゲートウェイとして使うアドレスを配布対象から外します。 -
DHCPプール
配布するネットワークと各種オプションを設定します。
基本設定は次のようになります。
(config)# ip dhcp excluded-address <開始IPアドレス> <開始IPアドレス>
(config)# ip dhcp pool <pool名>
(dhcp-config)# network <IPアドレス> <サブネットマスク>
(dhcp-config)# default-router <IPアドレス>
(dhcp-config)# dns-server <IPアドレス>
(dhcp-config)# domain-name <ドメイン名>
(dhcp-config)# lease <日にち> [<時間> <分>]
主な設定項目は次の通りです。
-
ip dhcp excluded-address
配布しないアドレスを指定します。 -
ip dhcp pool
DHCP プールを作成します。 -
network
配布するネットワーク(IP 範囲)を指定 -
default-router
クライアントへ配布するデフォルトゲートウェイを指定します。 -
dns-server
クライアントへ配布する DNS サーバを指定します。 -
domain-name
クライアントへ配布するドメイン名を指定します。 -
lease
リース期間を指定します。
DHCPクライアントの設定
ルータ自身を DHCP クライアントとして動作させる場合は、インターフェースに DHCP を設定します。
(config)# interface g0/0
(config-if)# ip address dhcp
(config-if)# no shutdown
この設定により、そのインターフェースは DHCP サーバから IP アドレスなどの情報を取得します。
確認
DHCP サーバー側では、割り当て状況やプールの状態を確認します。
# show ip dhcp binding
# show ip dhcp pool
# show ip dhcp conflict
# show running-config
主な確認内容は次の通りです。
-
show ip dhcp binding
どのクライアントにどの IP アドレスを割り当てたか確認します。 -
show ip dhcp pool
プール内の使用状況を確認します。 -
show ip dhcp conflict
重複が検出されたアドレスを確認します。 -
show running-config
DHCP 設定全体を確認します。
DHCP クライアント側では、取得したアドレスを確認します。
# show ip interface brief
# show dhcp lease
-
show ip interface brief
インターフェースに設定された IP アドレスを確認します。 -
show dhcp lease
DHCP によって取得したリース情報を確認します。
DHCPリレーエージェント
概要
DHCP Discover はブロードキャストで送信されます。ブロードキャストはルータを越えられないため、別ネットワークにある DHCP サーバへはそのまま届きません。
このとき使うのが DHCP リレーエージェント です。
DHCP リレーエージェントは、クライアントから受け取った DHCP パケットを DHCP サーバへ転送します。つまり、DHCP リレーエージェントは次の役割を持ちます。
- 別ネットワークにある DHCP サーバを利用できるようにする
- クライアントのブロードキャストを中継する
設定
DHCP リレーエージェントは、クライアントが接続されている側のインターフェースに設定します。
(config)# interface g0/0
(config-if)# ip helper-address <DHCPのIPアドレス>
-
ip helper-address
転送先の DHCP サーバの IP アドレスを指定します。
この設定により、クライアントの DHCP Discover は指定した DHCP サーバへ中継されます。