Cisco IOS IP アドレッシング サービス コンフィギュ レーション ガイド
Cisco IOS DHCP サーバの設定
Cisco IOS DHCP サーバの設定
発行日;2012/02/04 | 英語版ドキュメント(2011/07/22 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 5MB) | フィードバック

目次

Cisco IOS DHCP サーバの設定

機能情報の入手方法

この章の構成

DHCP サーバ設定の前提条件

Cisco IOS DHCP サーバについて

DHCP サーバの概要

DHCP アトリビュートの継承

Option 82 を使用した DHCP サーバのアドレス割り当て

Cisco IOS DHCP サーバの設定方法

DHCP データベース エージェントの設定または競合のロギングのディセーブル化

データベース エージェント

アドレスの競合

制約事項

IP アドレスの除外

DHCP アドレス プールの設定

DHCP アドレス プールの設定

セカンダリ サブネットを使用した DHCP アドレス プールの設定

トラブルシューティングのヒント

DHCP アドレス プール設定の検証

手動バインディングの設定

アドレス バインディング

制約事項

トラブルシューティングのヒント

DHCP スタティック マッピング

DHCP データベース

スタティック マッピング テキスト ファイル

スタティック マッピング テキスト ファイルを読み取る DHCP サーバの設定

DHCP サーバの動作のカスタマイズ

ping パケットの設定

All BOOTP 要求を無視するオプション

DHCP サーバ オプションを集中管理 DHCP サーバからインポートするためのリモート ルータの設定

DHCP オプションを更新するための集中管理 DHCP サーバの設定

DHCP オプションをインポートするためのリモート ルータの設定

Option 82 を使用した DHCP アドレス割り当ての設定

Option 82 の機能設計を使用した DHCP アドレスの割り当て

Option 82 を使用した DHCP アドレス割り当ての例

DHCP クラスの機能

Option 82 を使用した DHCP アドレス割り当ての制限事項

DHCP アドレス割り当てにおける Option 82 のイネーブル化

トラブルシューティングのヒント

DHCP クラスおよびリレー エージェント情報パターンの定義

前提条件

トラブルシューティングのヒント

DHCP アドレス プールの定義

DHCP を通じてダイナミックに取得されるネクスト ホップを使用したスタティック ルートの設定

前提条件

制約事項

DHCP サーバ変数のクリア

Cisco IOS DHCP サーバの設定例

DHCP データベース エージェントの設定:例

IP アドレスの除外:例

DHCP アドレス プールの設定:例

連続していない複数のサブネットを使用した DHCP アドレス プールの設定:例

手動バインディングの設定:例

スタティック マッピングの設定:例

すべての BOOTP 要求を無視するためのオプションの設定:例

DHCP オプションのインポート:例

Option 82 を使用した DHCP アドレス割り当ての設定:例

DHCP を通じてダイナミックに取得したネクスト ホップを使用したスタティック ルートの設定:例

その他の関連資料

関連資料

規格

MIB

RFC

シスコのテクニカル サポート

Cisco IOS DHCP サーバの機能情報

Cisco IOS DHCP サーバの設定

Cisco IOS ソフトウェアを実行中の Cisco ルータには、Dynamic Host Configuration Protocol(DHCP)サーバおよびリレー エージェント ソフトウェアが含まれています。Cisco IOS DHCP サーバ機能は、DHCP クライアントに対して、ルータ内の指定されたアドレス プールからの IP アドレスの割り当てと管理を行う DHCP サーバのフル機能が実装されています。DHCP サーバは、Domain Name System(DNS; ドメイン ネーム システム)サーバおよびデフォルト ルータの IP アドレスなどの追加パラメータを割り当てるために設定できます。

このモジュールでは、Cisco IOS DHCP サーバの設定に必要な概念および作業について説明します。

機能情報の入手方法

ご使用のソフトウェア リリースで、このモジュールで説明されるすべての機能がサポートされているとは限りません。最新の機能情報と注意事項については、ご使用のプラットフォームとソフトウェア リリースに対応したリリース ノートを参照してください。この章に記載されている機能の詳細、および各機能がサポートされているリリースのリストについては、「Cisco IOS DHCP サーバの機能情報」 を参照してください。

プラットフォームのサポートと Cisco IOS および Catalyst OS ソフトウェア イメージのサポートに関する情報を検索するには、Cisco Feature Navigator を使用します。Cisco Feature Navigator には、 http://www.cisco.com/go/cfn からアクセスします。Cisco.com のアカウントは必要ありません。

DHCP サーバ設定の前提条件

Cisco IOS DHCP サーバを設定する前に、「DHCP の概要」モジュールで説明されている概念を理解する必要があります。

Cisco IOS DHCP サーバとリレー エージェントはデフォルトでイネーブルに設定されています。コンフィギュレーション ファイルをチェックすると、ディセーブルになっているか確認できます。ディセーブルになっている場合は、コンフィギュレーション ファイルに no service dhcp コマンドが表示されます。必要に応じて、 service dhcp コマンドでこの機能を再度イネーブルにします。

Cisco IOS DHCP/BOOTP のデフォルト設定では、ポート 67(サーバ ポート)は閉じています。 service dhcp コマンドには、サービスのイネーブル化とサービスの実行という 2 つの論理部分があります。DHCP サービスはデフォルトでイネーブルに設定されていますが、ポート 67 は DHCP サービスが実行するまでは開きません。サービスが実行している場合、 show ip sockets details コマンドまたは show sockets detail コマンドでポート 67 が開いていることが表示されます。

Cisco IOS DHCP リレー エージェントは、 ip helper-address が設定されている場合にだけインターフェイス上でイネーブルになります。このコマンドにより、DHCP ブロードキャストを設定済みの DHCP サーバに転送できるようになります。

Cisco IOS DHCP サーバについて

DHCP サーバを設定する前に、次の概念を理解する必要があります。

「DHCP サーバの概要」

「DHCP アトリビュートの継承」

「Option 82 を使用した DHCP サーバのアドレス割り当て」

DHCP サーバの概要

Cisco IOS DHCP サーバは、アドレス割り当て要求と更新を受け取り、DHCP アドレス プール内に含まれる事前定義されたアドレス グループからアドレスを割り当てます。また、これらのアドレス プールは、DNS サーバの IP アドレス、デフォルト ルータ、その他のコンフィギュレーション パラメータなどの追加情報を、要求元クライアントに提供するように設定することもできます。Cisco IOS DHCP サーバは、ローカル接続する LAN セグメントからのブロードキャスト、または、ネットワーク内の他の DHCP リレー エージェントから転送された DHCP 要求のブロードキャストを受け入れることができます。

DHCP アトリビュートの継承

DHCP サーバ データベースはツリー構造になっています。ツリーのルートはナチュラル ネットワークのアドレス プールで、ブランチはサブネットワークのアドレス プール、リーフはクライアントへの手動でのバインディングです。サブネットワークはネットワークのパラメータを引き継ぎ、クライアントはサブネットワークのパラメータを引き継ぎます。したがって、ドメイン名などの共通パラメータは、ツリーの最上位レベル(ネットワークまたはサブネットワーク)に設定する必要があります。

継承したパラメータは上書きされる場合があります。たとえば、パラメータがナチュラル ネットワークとサブネットワークの両方に定義されている場合、サブネットワークの定義が使用されます。

アドレス リースは継承されません。IP アドレスにリースが指定されていない場合、DHCP サーバはデフォルトでそのアドレスに 1 日間のリースを割り当てます。

Option 82 を使用した DHCP サーバのアドレス割り当て

Cisco IOS DHCP サーバは、リレー エージェントから送信されたリレー情報オプション(Option 82)の情報に基づいて、ダイナミック IP アドレスを割り当てることができます。

DHCP アドレスの自動割り当ては、通常、ゲートウェイ アドレス(DHCP パケットの giaddr フィールド)または着信インターフェイスの IP アドレスのいずれかの IP アドレスに基づいて行われます。一部のネットワークでは、割り当てる IP アドレスをさらに特定するための追加情報を使用する必要があります。Option 82 を使用することにより、Cisco IOS リレー エージェントは、クライアントが発信元の DHCP パケットを DHCP サーバに転送するときに、自身に関する追加情報を長期間保持できます。Cisco IOS DHCP サーバも、DHCP クライアントに IP アドレスを適切に割り当てるための追加情報を提供する手段として Option 82 を使用できます。

Cisco IOS DHCP サーバの設定方法

ここでは、次の作業について説明します。

「DHCP データベース エージェントの設定または競合のロギングのディセーブル化」(必須)

「IP アドレスの除外」(任意)

「DHCP アドレス プールの設定」(必須)

「手動バインディングの設定」(任意)

「DHCP スタティック マッピング」(任意)

「DHCP サーバの動作のカスタマイズ」(任意)

「DHCP サーバ オプションを集中管理 DHCP サーバからインポートするためのリモート ルータの設定」(任意)

「Option 82 を使用した DHCP アドレス割り当ての設定」(任意)

「DHCP を通じてダイナミックに取得されるネクスト ホップを使用したスタティック ルートの設定」(任意)

「DHCP サーバ変数のクリア」(任意)

DHCP データベース エージェントの設定または競合のロギングのディセーブル化

DHCP データベース エージェントを設定するには、この作業を実行します。

データベース エージェント

DHCP データベース エージェントには、任意のホスト(たとえば、FTP、TFTP、または rcp サーバ)または、DHCP バインディング データベースを保存する DHCP サーバ上のストレージ メディア(disk0 など)にすることができます。DHCP データベース エージェントは複数設定できます。また、データベースを更新する間隔や各エージェント間の転送の間隔も設定できます。

自動バインディングでは、DHCP データベースで検出されたホストの MAC アドレスに IP アドレスが自動的にマッピングされます。自動バインディング情報(リースの終了日時、インターフェイス インデックス、VPN Routing and Forwarding(VRF; VPN ルーティング/転送)名など)はデータベース エージェントに保存されます。バインディングはメンテナンスが容易なテキスト レコードで保存されます。

アドレスの競合

2 つのホストが同一の IP アドレスを使用するとアドレスの競合が発生します。アドレス割り当て時に、DHCP が ping と Gatuitous Address Resolution Protocol(ARP; アドレス解決プロトコル)を使用して競合をチェックします。競合が検出されると、該当するアドレスがプールから削除されます。管理者が競合を解決するまで、アドレスは割り当てられません。

制約事項

シスコではデータベース エージェントを使用することを強く推奨しています。ただし、Cisco IOS サーバはデータベース エージェントがなくても動作します。DHCP データベース エージェントを設定しないと選択する場合は、グローバル コンフィギュレーション モードで no ip dhcp conflict logging コマンドを実行して、DHCP サーバ上の DHCP アドレス競合の記録をディセーブルに設定します。競合のロギングが設定されているにもかかわらずデータベース エージェントが設定されていないと、ルータのリブート時にバインディングが失われます。偽りの競合が起きた場合、ネットワーク管理者が介入するまでの間、アドレス プールからアドレスが削除される事態になる場合があります。

手順の概要

1. enable

2. configure terminal

3. ip dhcp database url [ timeout seconds | write-delay seconds ]
または
no ip dhcp conflict logging

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp database url [ timeout seconds | write-delay seconds ]

または

no ip dhcp conflict logging

 

Router(config)# ip dhcp database ftp://user:password@172.16.1.1/router-dhcp timeout 80

または

 

Router(config)# no ip dhcp conflict logging

データベース エージェントと呼ばれるリモート ホスト上に自動バインディングを保存するように DHCP サーバを設定します。

または

DHCP アドレス競合ロギングをディセーブルにします。

このオプションは DHCP データベース エージェントを設定しない場合だけ選択してください。ガイドラインについては、「制約事項」を参照してください。

IP アドレスの除外

DHCP サーバがクライアントに割り当てるべきでない IP アドレス(除外されるアドレス)を指定するには、この作業を実行します。

ルータ インターフェイスに設定された IP アドレスは DHCP アドレス プールから自動的に除外されます。DHCP サーバは、DHCP アドレス プール サブネットにある他のすべての IP アドレスは DHCP クライアントへの割り当てが可能と見なします。

DHCP サーバが割り当てるべきでない IP アドレスは、プールから除外する必要があります。使用例としては、冗長性を提供するために、2 つの DHCP サーバを同一ネットワーク セグメント(サブネット)に設定する場合などがあります。この 2 つの DHCP サーバが DHCP フェールオーバーなどのプロトコルを使用したサービス調整を相互に行わない場合、共有するサブネットからアドレス セットを重複しないように割り当てるための設定をそれぞれの DHCP サーバで行う必要があります。設定例については、「手動バインディングの設定:例」を参照してください。

手順の概要

1. enable

2. configure terminal

3. ip dhcp excluded-address low-address [ high-address ]

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp excluded-address low-address [ high-address ]

 

Router(config)# ip dhcp excluded-address 172.16.1.100 172.16.1.103

DHCP サーバが DHCP クライアントに対して割り当てるべきでない IP アドレスを指定します。

DHCP アドレス プールの設定

ここでは、次の作業について説明します。

「DHCP アドレス プールの設定」(必須)

「セカンダリ サブネットを使用した DHCP アドレス プールの設定」(任意)

「DHCP アドレス プール設定の検証」(任意)

DHCP アドレス プールの設定

DHCP アドレス プールを設定するには、この作業を実行します。必要に応じて、クライアントの DHCP オプションをアドレス プールごとに指定します。

DHCP アドレス プールの規定

DHCP アドレス プールの設定には、意味を表すストリング(「engineering」など)か、整数(0 など)を使用できます。また、DHCP アドレス プールを設定すると、ルータは DHCP プールのコンフィギュレーション モードになります。(dhcp-config)# プロンプトで識別されるこのコンフィギュレーション モードのプロンプトからプールのパラメータ(IP サブネット番号およびデフォルトのルータのリストなど)を設定できます。

DHCP アドレス プールの選択

DHCP は 1 つのプロセスを定義します。このプロセスにより、DHCP サーバは DHCP クライアントが存在する IP サブネットを認識し、サブネット内の有効な IP アドレスのプールから IP アドレスを割り当てることができます。DHCP サーバがクライアント要求を満たすサービスを提供するために使用する DHCP アドレス プールを特定するこのプロセスは、「DHCP アドレス プールの選択」に記載されています。

DHCP サーバは、クライアントの要求を処理するために使用する DHCP アドレス プールを次のように特定します。

クライアントが直接接続していない場合(DHCPDISCOVER ブロードキャスト メッセージの giaddr フィールドがゼロ以外)、DHCP サーバは DHCPDISCOVER を giaddr フィールドに IP アドレスが含まれているサブネットを持つ DHCP プールと照合します。

クライアントが直接接続する場合(giaddr フィールドがゼロ)、DHCP サーバは DHCPDISCOVER を DHCP プールと照合します。このプールに受信インターフェイスで設定済みのサブネットが含まれています。インターフェイスにセカンダリ IP アドレスがある場合は、セカンダリ IP アドレスが関連付けられているサブネットに対し、可能な割り当てがあるかどうか検証されます。ただし、これはサブネットに関連付けられているプライマリ IP アドレス(インターフェイス上)の空きがなくなった場合に限り行われます。

Cisco IOS DHCP サーバ ソフトウェアは、IP アドレスの割り当てを行う高度な機能をサポートします。詳細については、「Option 82 を使用した DHCP アドレス割り当ての設定」の項を参照してください。

前提条件

DHCP アドレス プールを設定する前に、次の作業が必要です。

該当するデバイスについて、次のような DHCP オプションを特定します。

デフォルトのブート イメージ名

デフォルト ルータ

DNS サーバ

NetBIOS ネーム サーバ

プライマリ サブネット

セカンダリ サブネットおよびサブネット固有のデフォルトのルータのリスト(詳細については、「セカンダリ サブネットを使用した DHCP アドレス プールの設定」を参照してください)。

NetBIOS ノード タイプ(b、p、m、または h)を決定します。

DNS ドメイン名を決定します。

制約事項

DHCP プール コンフィギュレーション コマンド network を使用して設定したプールと同一プール内に手動バインディングは設定できません。手動バインディングを設定するには、「手動バインディングの設定」を参照してください。

手順の概要

1. enable

2. configure terminal

3. ip dhcp pool name

4. utilization mark high percentage-number [ log ]

5. utilization mark low percentage-number [ log ]

6. network network-number [{ mask | / prefix-length } [ secondary ]]

7. domain-name domain

8. dns-server address [address2 ... address8]

9. bootfile filename

10. next-server address [ address2 ... address8 ]

11. netbios-name-server address [address2 ... address8]

12. netbios-node-type type

13. default-router address [address2 ... address8]

14. option code [ instance number ] { ascii string | hex string | ip-address }

15. lease { days [ hours [ minutes ]] | infinite }

16. end

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp pool name

 

Router(config)# ip dhcp pool 1

DHCP サーバのアドレス プールの名前を作成し、DHCP プールのコンフィギュレーション モードを開始します。

ステップ 4

utilization mark high percentage-number [ log ]

 

Router(dhcp-config)# utilization mark high 80 log

(任意)現在のアドレス プール サイズの高利用マークを設定します。

キーワード log を使用すると、システム メッセージのロギングがイネーブルになります。DHCP プールの利用率が設定された上限の利用率のしきい値を超過すると、このプールに関するシステム メッセージが生成されます。

ステップ 5

utilization mark low percentage-number [ log ]

 

Router(dhcp-config)# utilization mark low 70 log

(任意)現在のアドレス プール サイズの低利用マークを設定します。

キーワード log を使用すると、システム メッセージのロギングがイネーブルになります。DHCP プールの利用率が設定された下限の利用率のしきい値未満になると、このプールに関するシステム メッセージが生成されます。

ステップ 6

network network-number [{ mask | / prefix-length } [ secondary ]]

 

Router(dhcp-config)# network 172.16.0.0 /16

DHCP アドレス プールのサブネットのネットワーク番号およびマスクを指定します。

ステップ 7

domain-name domain

 

Router(dhcp-config)# domain-name cisco.com

クライアントのドメイン名を指定します。

ステップ 8

dns-server address [ address2 ... address8]

 

Router(dhcp-config)# dns server 172.16.1.103 172.16.2.103

DHCP クライアントが利用可能な DNS サーバの IP アドレスを指定します。

少なくとも 1 つの IP アドレスを指定する必要がありますが、1 行のコマンド ラインに最大 8 つの IP アドレスを指定できます。

サーバはプライオリティの高い順にリストする必要があります。

ステップ 9

bootfile filename

 

Router(dhcp-config)# bootfile xllboot

(任意)DHCP クライアントのデフォルトのブート イメージの名前を指定します。

ブート ファイルはクライアントのブート イメージを保存するために使用します。通常、ブート イメージはクライアントがロードに使用するオペレーティング システムです。

ステップ 10

next-server address [ address2 ... address8]

 

Router(dhcp-config)# next-server 172.17.1.103 172.17.2.103

(任意)DHCP クライアントのブート プロセスの次のサーバを設定します。

複数のサーバが指定されている場合、DHCP は、ラウンドロビン方式でクライアントに割り当てます。最初のクライアントが address 1 のアドレスを取得した場合は、次のクライアントが address 2 のアドレスを取得するという順序で割り当てられます。

このコマンドを指定していない場合、DHCP は、 ip helper address コマンドで指定されているサーバをブート サーバとして使用します。

ステップ 11

netbios-name-server address [ address2 ... address8]

 

Router(dhcp-config)# netbios-name-server 172.16.1.103 172.16.2.103

(任意)Microsoft DHCP クライアントが利用可能な NetBIOS WINS サーバを指定します。

少なくとも 1 つのアドレスを指定する必要がありますが、1 行のコマンド ラインに最大 8 つのアドレスを指定できます。

サーバはプライオリティの高い順にリストする必要があります。

ステップ 12

netbios-node-type type

 

Router(dhcp-config)# netbios-node-type h-node

(任意)Microsoft DHCP クライアント用の NetBIOS ノード タイプを指定します。

ステップ 13

default-router address [ address2 ... address8]

 

Router(dhcp-config)# default-router 172.16.1.100 172.16.1.101

(任意)DHCP クライアント用にデフォルト ルータの IP アドレスを指定します。

IP アドレスは、クライアントと同一のサブネット上に存在する必要があります。

少なくとも 1 つの IP アドレスを指定する必要がありますが、1 行のコマンド ラインに最大 8 つの IP アドレスを指定できます。このデフォルト ルータは、プライオリティの高い順にリストされます。 address が最も優先されるルータで、 address2 が次に優先されるルータといった順序になります。

DHCP クライアントが IP アドレスを要求すると、
DHCP サーバとして動作するルータはデフォルトのルータのリストにアクセスし、DHCP クライアントがメッセージを転送するためにファースト ホップとして使用する別のルータを選択します。DHCP クライアントはブート後に自身のデフォルトのルータへのパケット送信を開始します。

ステップ 14

option code [ instance number ] { ascii string | hex string | ip-address }

 

Router(dhcp-config)# option 19 hex 01

(任意)DHCP サーバのオプションを設定します。

ステップ 15

lease { days [ hours [ minutes ]] | infinite }

 

Router(dhcp-config)# lease 30

(任意)リースの期間を指定します。

デフォルトのリース期間は 1 日です。

キーワード infinite を指定すると、リースの期間が無期限に設定されます。

ステップ 16

end

 

Router(dhcp-config)# end

グローバル コンフィギュレーション モードに戻ります。

セカンダリ サブネットを使用した DHCP アドレス プールの設定

セカンダリ サブネットによる DHCP アドレス プールの設定を行うには、この作業を実行します。

連続していない複数のサブネットを使用した DHCP サーバ アドレス プール

任意の DHCP プールについて、ユーザは プライマリ サブネット および任意の数の セカンダリ サブネット を設定できます。それぞれのサブネットは、DHCP クライアントに IP アドレスを割り当てるためにルータが使用する IP アドレスの範囲です。DHCP サーバが持つ複数のサブネット機能により、Cisco IOS DHCP サーバのアドレス プールで追加の IP アドレスを管理できます。この場合、個々のアドレス プールを使用する代わりに、既存の DHCP アドレス プールのセカンダリ サブネットにアドレスを追加する方法が用いられます。

セカンダリ サブネットの規定

セカンダリ DHCP サブネットワークを設定すると、ルータは DHCP プールのセカンダリ サブネット コンフィギュレーション モードになります。(config-dhcp-subnet-secondary)# プロンプトで識別されるこのモードから、セカンダリ サブネット固有のデフォルトのアドレス リストを設定できます。セカンダリ サブネットの利用率も指定できます。これを指定すると、アドレスの利用率のレベルに応じて、IP アドレスのプール サイズをダイナミックに増加または削減できます。この設定はグローバルな利用率を上書きします。

セカンダリ サブネットを使用した DHCP サーバ アドレス プールからの IP アドレスの割り当て

DHCP サーバが複数のサブネットを含むアドレス プールを選択した場合、DHCP サーバによるサブネットからの IP アドレスの割り当ては次のようになります。

DHCP サーバがアドレス割り当て要求を受け取ると、サーバはプライマリ サブネットで空きアドレスを検索します。

プライマリ サブネットに空きがない場合、DHCP サーバは自身が管理する任意のセカンダリ サブネットで空いているアドレスを自動的に検索します(これは、giaddr がセカンダリ サブネットと必ずしも一致しない場合でも行われます)。サーバは、利用可能なアドレスがないか、サブネットがプールに追加された順序でサブネット内を調べます。

giaddr がプール内のセカンダリ サブネットと一致した場合は、DHCP サーバはこのセカンダリ サブネットから IP アドレスを割り当てます(これはプライマリ サブネット内に利用可能な IP アドレスがある場合でも、セカンダリ サブネットが追加された順序にかかわりなく行われます)。

手順の概要

1. enable

2. configure terminal

3. ip dhcp pool name

4. utilization mark high percentage-number [ log ]

5. utilization mark low percentage-number [ log ]

6. network network-number [ mask | / prefix-length ]

7. domain-name domain

8. dns-server address [address2 ... address8]

9. bootfile filename

10. next-server address [ address2 ... address8 ]

11. netbios-name-server address [address2 ... address8]

12. netbios-node-type type

13. default-router address [address2 ... address8]

14. option code [ instance number ] { ascii string | hex string | ip-address }

15. lease { days [ hours [ minutes ]] | infinite }

16. network network-number [{ mask | / prefix-length } [ secondary ]]

17. override default-router address [ address2 ... address8 ]

18. override utilization high percentage-number

19. override utilization low percentage-number

20. end

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp pool name

 

Router(config)# ip dhcp pool 1

DHCP サーバのアドレス プールの名前を作成し、DHCP プールのコンフィギュレーション モードを開始します。

ステップ 4

utilization mark high percentage-number [ log ]

 

Router(dhcp-config)# utilization mark high 80 log

(任意)現在のアドレス プール サイズの高利用マークを設定します。

キーワード log を使用すると、システム メッセージのロギングがイネーブルになります。DHCP プールの利用率が設定された上限の利用率のしきい値を超過すると、このプールに関するシステム メッセージが生成されます。

ステップ 5

utilization mark low percentage-number [ log ]

 

Router(dhcp-config)# utilization mark low 70 log

(任意)現在のアドレス プール サイズの低利用マークを設定します。

キーワード log を使用すると、システム メッセージのロギングがイネーブルになります。DHCP プールの利用率が設定された下限の利用率のしきい値未満になると、このプールに関するシステム メッセージが生成されます。

ステップ 6

network network-number [ mask | / prefix-length ]

 

Router(dhcp-config)# network 172.16.0.0 /16

DHCP アドレス プールのサブネットのネットワーク番号およびマスクを指定します。

ステップ 7

domain-name domain

 

Router(dhcp-config)# domain-name cisco.com

クライアントのドメイン名を指定します。

ステップ 8

dns-server address [ address2 ... address8]

 

Router(dhcp-config)# dns server 172.16.1.103 172.16.2.103

DHCP クライアントが利用可能な DNS サーバの IP アドレスを指定します。

少なくとも 1 つの IP アドレスを指定する必要がありますが、1 行のコマンド ラインに最大 8 つの IP アドレスを指定できます。

サーバはプライオリティの高い順にリストする必要があります。

ステップ 9

bootfile filename

 

Router(dhcp-config)# bootfile xllboot

(任意)DHCP クライアントのデフォルトのブート イメージの名前を指定します。

ブート ファイルはクライアントのブート イメージを保存するために使用します。通常、ブート イメージはクライアントがロードに使用するオペレーティング システムです。

ステップ 10

next-server address [ address2 ... address8]

 

Router(dhcp-config)# next-server 172.17.1.103 172.17.2.103

(任意)DHCP クライアントのブート プロセスの次のサーバを設定します。

複数のサーバが指定されている場合、DHCP は、ラウンドロビン方式でクライアントに割り当てます。最初のクライアントが address 1 のアドレスを取得した場合は、次のクライアントが address 2 のアドレスを取得するという順序で割り当てられます。

このコマンドを指定していない場合、DHCP は、 ip helper address コマンドで指定されているサーバをブート サーバとして使用します。

ステップ 11

netbios-name-server address [ address2 ... address8]

 

Router(dhcp-config)# netbios-name-server 172.16.1.103 172.16.2.103

(任意)Microsoft DHCP クライアントが利用可能な NetBIOS Windows Internet Naming Service(WINS)サーバを指定します。

少なくとも 1 つのアドレスを指定する必要がありますが、1 行のコマンド ラインに最大 8 つのアドレスを指定できます。

サーバはプライオリティの高い順にリストする必要があります。

ステップ 12

netbios-node-type type

 

Router(dhcp-config)# netbios-node-type h-node

(任意)Microsoft DHCP クライアント用の NetBIOS ノード タイプを指定します。

ステップ 13

default-router address [ address2 ... address8]

 

Router(dhcp-config)# default-router 172.16.1.100 172.16.1.101

(任意)DHCP クライアント用にデフォルト ルータの IP アドレスを指定します。

IP アドレスは、クライアントと同一のサブネット上に存在する必要があります。

少なくとも 1 つの IP アドレスを指定する必要がありますが、1 行のコマンド ラインに最大 8 つの IP アドレスを指定できます。このデフォルト ルータは、プライオリティの高い順にリストされます。 address が最も優先されるルータで、 address2 が次に優先されるルータといった順序になります。

DHCP クライアントが IP アドレスを要求すると、DHCP サーバとして動作するルータはデフォルトのルータのリストにアクセスし、DHCP クライアントがメッセージを転送するためにファースト ホップとして使用する別のルータを選択します。DHCP クライアントはブート後に自身のデフォルトのルータへのパケット送信を開始します。

ステップ 14

option code [ instance number ] { ascii string | hex string | ip-address }

 

Router(dhcp-config)# option 19 hex 01

(任意)DHCP サーバのオプションを設定します。

ステップ 15

lease {days [ hours ] [ minutes ]| infinite }

 

Router(dhcp-config)# lease 30

(任意)リースの期間を指定します。

デフォルトのリース期間は 1 日です。

キーワード infinite を指定すると、リースの期間が無期限に設定されます。

ステップ 16

network network-number [{ mask | / preix-length } [ secondary ]]

 
Router(dhcp-config)# network 10.10.0.0 255.255.0.0 secondary

(任意)セカンダリ DHCP サーバ アドレス プールのネットワーク番号およびマスクを指定します。

任意の数のセカンダリ サブネットを DHCP サーバ アドレス プールに追加できます。

このコマンドの実行中、コンフィギュレーション モードが DHCP プールのセカンダリ サブネット
のコンフィギュレーション モードに変化します。これは(config-dhcp-subnet-secondary)# プロンプトで識別されます。このモードで、管理者はサブネット固有のデフォルトのルータ リストを設定できます。

DHCP セカンダリ サブネットを持つループバック インターフェイスでセカンダリ IP アドレスを使用している場合は、「トラブルシューティングのヒント」を参照してください。

ステップ 17

override default-router address [ address2 ... address8 ]

 
Router(config-dhcp-subnet-secondary)# override default-router 10.10.0.100 10.10.0.101

(任意)このセカンダリ サブネットから DHCP クライアントに IP アドレスを割り当てるときに使用するデフォルトのルータ リストを指定します。

このサブネット固有の上書き値が指定されている場合、サブネットから IP アドレスを割り当てるときにこの値が使用されます。ネットワーク全体のデフォルトのルータ リストは、プライマリ サブネットにゲートウェイ ルータを設定するためにだけ使用されます。

このサブネット固有の上書き値が指定されていない場合は、サブネットから IP アドレスを割り当てるときにネットワーク全体のデフォルトのルータ リストが使用されます。

設定例については、「連続していない複数のサブネットを使用した DHCP アドレス プールの設定:例」を参照してください。

ステップ 18

override utilization high percentage-numer

 
Router(config-dhcp-subnet-secondary)# override utilization high 60

(任意)サブネット サイズの高利用マークを設定します。

このコマンドは、 utilization mark high グローバル
コンフィギュレーション コマンドで指定されているグローバル デフォルト設定を上書きします。

ステップ 19

override utilization low percentage-number

 
Router(config-dhcp-subnet-secondary)# override utilization low 40

(任意)サブネット サイズの低利用マークを設定します。

このコマンドは、 utilization mark low グローバル コンフィギュレーション コマンドで指定されているグローバル デフォルト設定を上書きします。

ステップ 20

end

 

Router(config-dhcp-subnet-secondary)# end

特権 EXEC モードに戻ります。

トラブルシューティングのヒント

単一ループバック インターフェイスでセカンダリ IP アドレスを使用し、DHCP プールでセカンダリ サブネットを使用している場合、セカンダリ サブネットごとに 1 つのプールを使用するのではなく、1 つの DHCP プールをすべてのセカンダリ サブネットのネットワークを設定するために使用します。 network network-number [{ mask | / prefix-length } [ secondary ]]コマンドは、複数の DHCP アドレス プールでなく、単一の DHCP アドレス プールで設定する必要があります。

次に、正しい設定例を示します。

!
ip dhcp pool dhcp_1
network 172.16.1.0 255.255.255.0
network 172.16.2.0 255.255.255.0 secondary
network 172.16.3.0 255.255.255.0 secondary
network 172.16.4.0 255.255.255.0 secondary
!
interface Loopback111
ip address 172.16.1.1 255.255.255.255 secondary
ip address 172.16.2.1 255.255.255.255 secondary
ip address 172.16.3.1 255.255.255.255 secondary
ip address 172.16.4.1 255.255.255.255 secondary
 
 

次に、不正な設定例を示します。

!
ip dhcp pool dhcp_1
network 172.16.1.0 255.255.255.0
lease 1 20 30
accounting default
!
ip dhcp pool dhcp_2
network 172.16.2.0 255.255.255.0
lease 1 20 30
accounting default
!
ip dhcp pool dhcp_3
network 172.16.3.0 255.255.255.0
lease 1 20 30
accounting default
!
ip dhcp pool dhcp_4
network 172.16.4.0 255.255.255.0
lease 1 20 30
accounting default
!
interface Loopback111
ip address 172.16.1.1 255.255.255.255 secondary
ip address 172.16.2.1 255.255.255.255 secondary
ip address 172.16.3.1 255.255.255.255 secondary
ip address 172.16.4.1 255.255.255.255 secondary
 

DHCP アドレス プール設定の検証

DHCP アドレス プールの設定を検証するには、この作業を実行します。次に示す各種の show コマンドは、特定の順序で入力する必要はありません。

手順の概要

1. enable

2. show ip dhcp pool [name]

3. show ip dhcp binding [address]

4. show ip dhcp conflict [address]

5. show ip dhcp database [url]

6. show ip dhcp server statistics [type number]

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

show ip dhcp pool [ name ]

 

Router# show ip dhcp pool

(任意)DHCP アドレス プールに関する情報を表示します。

ステップ 3

show ip dhcp binding [ address ]

 

Router# show ip dhcp binding

(任意)特定の DHCP サーバに作成されているすべてのバインディングのリストを表示します。

show ip dhcp binding コマンドを使用すると、すでに割り当てられている IP アドレスが表示されます。アドレス プールに空きがあることを確認します。必要に応じて、プールを再作成してより大きいアドレス プールを作成します。

show ip dhcp binding コマンドを使用すると、リースの終了日時とホストの IP アドレスが表示されます。

ステップ 4

show ip dhcp conflict [ address ]

 

Router# show ip dhcp conflict

(任意)すべてのアドレスの競合のリストを表示します。

ステップ 5

show ip dhcp database [ url ]

 

Router# show ip dhcp database

(任意)DHCP データベース上の最近のアクティビティを表示します。

ステップ 6

show ip dhcp server statistics [ type-number ]

 

Router# show ip dhcp server statistics

(任意)サーバの統計情報に関するカウント情報および
送受信したメッセージを表示します。

手動バインディングの設定

手動バインディングを設定するには、この作業を実行します。

アドレス バインディング

アドレス バインディングは、クライアントの IP アドレスおよび MAC アドレス間のマッピングです。クライアントの IP アドレスは、管理者が手動で割り当てることも、DHCP サーバによってプールから自動的に割り当てることもできます。

手動バインディングでは、DHCP データベースで検出されたホストの MAC アドレスに IP アドレスを手動でマッピングします。手動バインディングは、DHCP サーバの NVRAM に保存されます。手動バインディングは単なる特殊なアドレス プールです。手動バインディングの数に制限はありませんが、1 つのホスト プールに設定できる手動バインディングは 1 つだけです。

自動バインディングでは、DHCP データベースで検出されたホストの MAC アドレスに IP アドレスが自動的にマッピングされます。バインディングは DHCP サーバの揮発性メモリに保存されるため、電源障害やその他の理由でルータがリロードする状況が発生した場合、バインディング情報は失われます。DHCP データベース エージェントと呼ばれるリモート ホストに自動バインディング情報のコピーを保存して、このような状況で自動バインディング情報が失われないようにします。バインディングは定期的にデータベース エージェントに書き込まれます。ルータがリロードすると、バインディングはデータベース エージェントから DHCP サーバの DHCP データベースに再び読み込まれます。


) シスコではデータベース エージェントを使用することを強く推奨しています。ただし、Cisco IOS DHCP サーバはデータベース エージェントを使用しなくても実行できます。


一部の DHCP クライアントは DHCP パケットにクライアント識別情報(DHCP Option 61)を送信します。このようなクライアントに手動バインディングを設定するには、DHCP プール コンフィギュレーション コマンドの client-identifier を、DHCP クライアントを識別する適切な 16 進値とともに入力する必要があります。クライアント識別情報のオプションを送信しないクライアントに手動バインディングを設定するには、DHCP プール コンフィギュレーション コマンドの hardware-address をクライアントの適切な 16 進ハードウェア アドレスとともに入力する必要があります。

制約事項

DHCP プール コンフィギュレーション モードの network コマンドを使用して設定したプールと同一プール内に手動バインディングは設定できません。DHCP アドレス プールおよび network コマンドの詳細については、「DHCP アドレス プールの設定」を参照してください。

手順の概要

1. enable

2. configure terminal

3. ip dhcp pool pool-name

4. host address [ mask | / prefix-length ]

5. client-identifier unique-identifier

6. hardware-address hardware-address [ protocol-type | hardware-number ]

7. client-name name

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp pool pool-name

 

Router(config)# ip dhcp pool pool1

DHCP サーバのアドレス プールの名前を作成し、DHCP プール コンフィギュレーション モードを開始します。

ステップ 4

host address [ mask | / prefix-length ]

 

Router(dhcp-config)# host 172.16.0.1

クライアントの IP アドレスおよびサブネット マスクを指定します。

手動バインディングの数に制限はありませんが、1 つのホスト プールに設定できる手動バインディングは 1 つだけです。

ステップ 5

client-identifier unique-identifier

 

Router(dhcp-config)# client-identifier 01b7.0813.8811.66

 

DHCP クライアントに一意の ID を指定します。

このコマンドは DHCP 要求で使用されます。

DHCP クライアントにはクライアントの ID が必要です。クライアントの一意の ID は、ドット付き 16 進表記で指定されます。たとえば、01b7.0813.8811.66 では、01 がイーサネットのメディア タイプを表します。

DHCP クライアントのクライアント ID を判別する詳細については、「トラブルシューティングのヒント」を参照してください。

(注) ここで指定する ID は、パケットでクライアント ID を送信する DHCP クライアントの ID を想定しています。

ステップ 6

hardware-address hardware-address [ protocol-type | hardware-number ]

 

Router(dhcp-config)# hardware-address b708.1388.f166 ethernet

クライアントのハードウェア アドレスを指定します。

このコマンドは BOOTP 要求で使用されます。

(注) ここで指定するハードウェア アドレスは、パケットでクライアント ID を送信しない DHCP クライアントのアドレスを想定しています。

ステップ 7

client-name name

 

Router(dhcp-config)# client-name client1

(任意)クライアントの名前を、任意の標準 ASCII 文字で指定します。

クライアント名にドメイン名を含めることはできません。たとえば、 client1 という名前は、 client1.cisco.com として指定できません。

トラブルシューティングのヒント

debug ip dhcp server packet コマンドを使用するとクライアント ID を判別できます。次の例では、クライアントは 0b07.1134.a029 という値で識別されます。

Router# debug ip dhcp server packet
 
DHCPD:DHCPDISCOVER received from client 0b07.1134.a029 through relay 10.1.0.253.
DHCPD:assigned IP address 10.1.0.3 to client 0b07.1134.a029.
.
.
.

DHCP スタティック マッピング

DHCP のスタティック マッピング機能を使用すると、カスタマー作成のテキスト ファイルを DHCP サーバが読み取る手動バインディングを行って多数のホスト プールを作成しなくても、スタティック IP アドレスを割り当てることができます。この機能の利点は、長いコンフィギュレーション ファイルが不要になることで、NVRAM がアドレス プールを維持するために必要な領域を減らすことができる点です。

ここでは、次の作業について説明します。

「スタティック マッピング テキスト ファイルを読み取る DHCP サーバの設定」(必須)

DHCP データベース

DHCP データベースには、バインディングと呼ばれる、クライアントの IP アドレスとハードウェア アドレス間のマッピングが含まれています。バインディングには、単一のハードウェア アドレスを単一の IP アドレスにマッピングする手動バインディングと、ハードウェア アドレスを IP アドレスのプールから IP アドレスにダイナミックにマッピングする自動バインディングの 2 種類があります。手動(スタティックとも言います)バインディングは、ルータ上にそれぞれ個々に直接設定することも、DHCP スタティック マッピング機能を使用して設定することもできます。このスタティック バインディングは個別のスタティック マッピング テキスト ファイルから読み取ることができます。スタティック マッピング テキスト ファイルは、ルータのリロード時または DHCP サービスが再起動したときに読み取られます。このファイルは読み取り専用です。

スタティック バインディングの読み取りは、次の点において手動バインディングと同じように扱われます。

クライアントからの DHCPRELEASE を通じて維持される。

タイムアウトしない。

プールが削除された場合に限り削除される。

プールに含まれているアドレスに対し、適切な除外が提供される。除外するアドレスは読み取りの時点で作成されます。

自動バインディングおよび手動バインディングと同様、スタティック マッピング テキスト ファイルからのスタティック バインディングも、 show ip dhcp binding コマンドを使用すると表示されます。

スタティック マッピング テキスト ファイル

スタティック マッピング テキスト ファイルを作成するには、この作業を実行します。テキスト ファイルにアドレスを入力すると、アドレスは DHCP サーバが読み取るために DHCP データベースに保存されます。ファイルに入力するアドレスの数に制限はありません。このファイルのファイル形式には次の要素があります。

ファイルが作成された時刻

データベースのバージョン番号

IP アドレス

ハードウェア タイプ

ハードウェア アドレス

リースの終了日

ファイル終了の指定子

テキスト ファイル形式の詳細については、 表 1 を参照してください。

次に、スタティック マッピング テキスト ファイルの例を示します。

*time* Jan 21 2005 03:52 PM
*version* 2
!IP address Type Hardware address Lease expiration
10.0.0.4 /24 1 0090.bff6.081e Infinite
10.0.0.5 /28 id 00b7.0813.88f1.66 Infinite
10.0.0.2 /21 1 0090.bff6.081d Infinite
*end*

 

表 1 スタティック マッピング テキスト ファイルのフィールドの説明

フィールド
説明

*time*

ファイルが作成された時刻を指定します。このフィールドを使用すると、複数のエージェントが設定されている場合に、DHCP が新旧のデータベースを区別できます。時刻の有効な形式は、Mm dd yyyy hh:mm AM/PM です。

*version* 2

データベースのバージョン番号。

IP address

スタティック IP アドレス。サブネット マスクが指定されていない場合は、IP アドレスに従って元のマスクが予測されます。IP アドレスとマスクの間には 1 つのスペースが必要です。

Type

ハードウェア タイプを指定します。たとえば、タイプ「1」はイーサネットを表します。タイプ「id」は、このフィールドが DHCP クライアントの ID であることを示します。正規の値は、 http://www.iana.org/assignments/arp-parameters の「Number Hardware Type」のリストからオンラインで入手できます。

Hardware address

ハードウェア アドレスを指定します。

タイプが数字のときは、ハードウェア メディアであることを意味します。正規の値は、 http://www.iana.org/assignments/arp-parameters の「Number Hardware Type」のリストからオンラインで入手できます。

タイプが「id」のときは、クライアント ID との照合が行われることを意味します。

クライアント ID の詳細については、 http://www.ietf.org/rfc/rfc2132.txt の RFC 2132 の 9.14 項「 DHCP Options and BOOTP Vendor Extensions 」または、 http://www.cisco.com/en/US/docs/ios/ipaddr/command/reference/iad_dhc1.html#wp1011901 client-identifier コマンド リファレンス ページを参照してください。

照合に使用するクライアント ID が不明な場合は、 debug dhcp detail コマンドを実行して、クライアントから DHCP サーバに送信されているクライアント ID を表示します。

Lease expiration

リースの終了期限を指定します。「Infinite」は、リース期間を無期限に指定します。

*end*

ファイルの終端。DHCP は *end* 指定子を使用してファイルの切り捨てを検出します。

スタティック マッピング テキスト ファイルを読み取る DHCP サーバの設定

スタティック マッピング テキスト ファイルを読み取る DHCP サーバを設定するには、この作業を実行します。

前提条件

管理者は、この作業を行う前に、正しい形式でスタティック マッピング テキスト ファイルを作成し、アドレス プールを設定する必要があります。

ファイルを編集する前に、 no service dhcp コマンドを使用して DHCP サーバをディセーブルにする必要があります。

制約事項

スタティック バインディングは DHCPRELEASE を受信しても削除されず、また、DHCP タイマーによってタイムアウトもされません。スタティック バインディングは、 ip dhcp pool コマンドを使用して作成される手動バインディングと同様に扱われる必要があります。

手順の概要

1. enable

2. configure terminal

3. ip dhcp pool name

4. origin file url

5. end

6. show ip dhcp binding [ address ]

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp pool name

 

Router(config)# ip dhcp pool pool1

DHCP プールに名前を割り当て、DHCP コンフィギュレーション モードを開始します。

コマンドを使用して再び読み取りを行う必要があります。

ステップ 4

origin file url

 

Router(dhcp-config)# origin file tftp://10.1.0.1/static-bindings

DHCP サーバがテキスト ファイルを検索できる URL を指定します。

ステップ 5

end

 

Router(dhcp-config)# end

特権 EXEC モードに戻ります。

ステップ 6

show ip dhcp binding [ address ]

 

Router# show ip dhcp binding

(任意)特定の DHCP サーバに作成されているすべてのバインディングのリストを表示します。

次に、設定済みのアドレス バインディングを表示する例を示します。

Router# show ip dhcp binding
 
00:05:14:%SYS-5-CONFIG_I: Configured from console by console
 
Bindings from all pools not associated with VRF:
IP address Client-ID/ Ls expir Type Hw address User name
10.9.9.4/8 0063.7363.2d30.3036. Infinite Static 302e.3762.2e39.3634. 632d.4574.8892.
10.9.9.1/24 0063.6973.636f.2d30. Infinite Static 3036.302e.3437.3165. 2e64.6462.342d.
 

次に、スタティック マッピング テキスト ファイルの各エントリを表示する例を示します。

*time* Jan 21 2005 22:52 PM
!IP address Type Hardware address Lease expiration
10.19.9.1 /24 id 0063.6973.636f.2d30.3036.302e.3437
10.9.9.4 id 0063.7363.2d30.3036.302e.3762.2e39.3634.632d Infinite
*end*
 

次に、TFTP サーバから読み取るスタティック マッピング テキスト ファイルを表示するデバッグ出力の例を示します。

Router# debug ip dhcp server
 
Loading abc/static_pool from 10.19.192.33 (via Ethernet0):
[OK - 333 bytes]
 
*May 26 23:14:21.259: DHCPD: contacting agent tftp://10.19.192.33/abc/static_pool (attempt 0)
*May 26 23:14:21.467: DHCPD: agent tftp://10.19.192.33/abc/static_pool is responding.
*May 26 23:14:21.467: DHCPD: IFS is ready.
*May 26 23:14:21.467: DHCPD: reading bindings from tftp://10.19.192.33/abc/static_pool.
*May 26 23:14:21.707: DHCPD: read 333 / 1024 bytes.
*May 26 23:14:21.707: DHCPD: parsing text line
*time* Apr 22 2002 11:31 AM
*May 26 23:14:21.707: DHCPD: parsing text line ““
*May 26 23:14:21.707: DHCPD: parsing text line
!IP address Type Hardware address Lease expiration
*May 26 23:14:21.707: DHCPD: parsing text line
“10.9.9.1 /24 id 0063.6973.636f.2d30.3036.302e.3437”
*May 26 23:14:21.707: DHCPD: creating binding for 10.9.9.1
*May 26 23:14:21.707: DHCPD: Adding binding to radix tree (10.9.9.1)
*May 26 23:14:21.707: DHCPD: Adding binding to hash tree
*May 26 23:14:21.707: DHCPD: parsing text line
“10.9.9.4 id 0063.7363.2d30.3036.302e.3762.2e39.3634.632d”
*May 26 23:14:21.711: DHCPD: creating binding for 10.9.9.4
*May 26 23:14:21.711: DHCPD: Adding binding to radix tree (10.9.9.4)
*May 26 23:14:21.711: DHCPD: Adding binding to hash tree
*May 26 23:14:21.711: DHCPD: parsing text line “Infinite”
*May 26 23:14:21.711: DHCPD: parsing text line “”
*May 26 23:14:21.711: DHCPD: parsing text line
!IP address Interface-index Lease expiration VRF
*May 26 23:14:21.711: DHCPD: parsing text line “*end*”
*May 26 23:14:21.711: DHCPD: read static bindings from tftp://10.19.192.33/abcemp/static_pool.

DHCP サーバの動作のカスタマイズ

DHCP サーバの動作をカスタマイズするには、この作業を実行します。

ping パケットの設定

DHCP サーバはデフォルトで、要求しているクライアントに特定のアドレスを割り当てる前に、プール アドレスに関する ping を 2 回送信します。ping の応答がない場合、DHCP サーバは、このアドレスが未使用である可能性が高いと見なして、要求しているクライアントにアドレスを割り当てます。

デフォルトでは、DHCP サーバは ping パケットのタイムアウト前に 2 秒間待機します。

All BOOTP 要求を無視するオプション

管理者は、受信した Bootstrap Protocol(BOOTP; ブートストラップ プロトコル)要求を無視して応答しないように DHCP サーバを設定できます。この機能は、BOOTP クライアントと DHCP クライアントがネットワーク セグメントに混在し、サービスを提供する BOOTP サーバと Cisco IOS DHCP サーバがネットワーク セグメントある場合に便利です。BOOTP サーバには BOOTP クライアントのためのスタティック バインディングが設定され、BOOTP クライアントは自分用のアドレスが BOOTP サーバから提供されると期待します。ただし、DHCP サーバでも BOOTP 要求に応答できるため、DHCP サーバからアドレスが提供される場合があり、これが BOOTP サーバからのアドレスではなく DHCP サーバからのアドレスで BOOTP クライアントが起動する結果を引き起こします。DHCP サーバに BOOTP 要求を無視するように設定するということは、BOOTP クライアントが BOOTP サーバからアドレス情報を受け取ることを意味し、DHCP サーバからこれを不用意に受け取ることがなくなります。

ip helper-address インターフェイス コンフィギュレーション コマンドが着信インターフェイス上に設定されている場合、Cisco IOS ソフトウェアは、この無視された BOOTP 要求パケットを別の DHCP サーバに転送できます。

手順の概要

1. enable

2. configure terminal

3. ip dhcp ping packets number

4. ip dhcp ping timeout milliseconds

5. ip dhcp bootp ignore

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp ping packets number

 

Router(config)# ip dhcp ping packets 5

(任意)要求しているクライアントに DHCP サーバがアドレスを割り当てる前に、サーバからアドレス プールに送信する ping パケットの数を指定します。

デフォルトは 2 パケットです。引数 number を値 0 に設定すると、DHCP サーバの ping 動作は完全にディセーブルになります。

ステップ 4

ip dhcp ping timeout milliseconds

 

Router(config)# ip dhcp ping timeout 850

(任意)アドレス プールからの ping 応答を DHCP サーバが待機する時間の長さを指定します。

ステップ 5

ip dhcp bootp ignore

 

Router(config)# ip dhcp bootp ignore

(任意)受信した BOOTP 要求を DHCP サーバが選択的に無視して応答しないようにできます。

ip dhcp bootp ignore コマンドは、ルータ上に設定されているすべての DHCP プールに適用されます。DHCP プール単位で選択的に BOOTP 要求を無視することはできません。

DHCP サーバ オプションを集中管理 DHCP サーバからインポートするためのリモート ルータの設定

Cisco IOS DHCP サーバは、Customer Premises Equipment(CPE; 加入者宅内機器)が接続するローカル クライアントからの DHCP 要求に応じて DNS および WINS アドレスなどのオプションをダイナミックに設定できます。以前は、ネットワーク管理者がデバイスごとに Cisco IOS DHCP サーバを手動で設定する必要がありました。現在は、Cisco IOS DHCP サーバ機能が拡張され、設定情報を自動的に更新できるようになりました。ネットワーク管理者は、1 つ以上の集中管理 DHCP サーバに対し、DHCP プール内の特定の DHCP オプションを更新するように設定できます。リモート サーバは、集中管理サーバにこのオプションのパラメータを要求したり、サーバから「インポート」したりできます。

ここでは、次の作業について説明します。

「DHCP オプションを更新するための集中管理 DHCP サーバの設定」

「DHCP オプションをインポートするためのリモート ルータの設定」

DHCP オプションを更新するための集中管理 DHCP サーバの設定

DHCP オプションを更新するように集中管理 DHCP サーバを設定するには、この作業を行います。

手順の概要

1. enable

2. configure terminal

3. ip dhcp pool pool-name

4. network network-number [ mask | / prefix-length ]

5. dns-server address [ address2 ... address8 ]

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp pool name

 

Router(config)# ip dhcp pool 1

DHCP サーバのアドレス プールの名前を作成し、DHCP プールのコンフィギュレーション モードを開始します。

ステップ 4

network network-number [ mask | / prefix-length ]

 

Router(dhcp-config)# network 172.16.0.0 /16

DHCP アドレス プールのサブネットのネットワーク番号およびマスクを指定します。

ステップ 5

dns-server address [ address2 ... address8 ]

 

Router(dhcp-config)# dns server 172.16.1.103 172.16.2.103

(任意)DHCP クライアントが利用可能な DNS サーバの IP アドレスを指定します。

少なくとも 1 つの IP アドレスを指定する必要がありますが、1 行のコマンド ラインに最大 8 つの IP アドレスを指定できます。

サーバはプライオリティの高い順にリストする必要があります。

DHCP オプションをインポートするためのリモート ルータの設定

集中管理 DHCP サーバからリモート ルータが DHCP オプションをインポートするように設定するには、この作業を実行します。

手順の概要

1. enable

2. configure terminal

3. ip dhcp pool pool-name

4. network network-number [ mask | / prefix-length ]

5. import all

6. exit

7. interface type number

8. ip address dhcp

9. end

10. show ip dhcp import

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp pool pool-name

 

Router(config)# ip dhcp pool pool1

DHCP サーバのアドレス プールの名前を作成し、DHCP プールのコンフィギュレーション モードを開始します。

ステップ 4

network network-number [ mask | / prefix-length ]

 

Router(dhcp-config)# network 172.30.0.0 /16

DHCP アドレス プールのサブネットのネットワーク番号およびマスクを指定します。

ステップ 5

import all

 

Router(dhcp-config)# import all

DHCP オプション パラメータを DHCP サーバ データベースにインポートします。

ステップ 6

exit

 

Router(dhcp-config)# exit

DHCP プール コンフィギュレーション モードを終了します。

ステップ 7

interface type number

 

Router(config)# interface FastEthernet 0/0

インターフェイスを設定し、インターフェイス コンフィギュレーション モードを開始します。

ステップ 8

ip address dhcp

 

Router(config-if)# ip address dhcp

インターフェイスが DHCP を通じて IP アドレスを取得するように指定します。

ステップ 9

end

 

Router(config-if)# end

特権 EXEC モードに戻ります。

ステップ 10

show ip dhcp import

 

Router# show ip dhcp import

集中管理 DHCP サーバからインポートされたオプションを表示します。

Option 82 を使用した DHCP アドレス割り当ての設定

ここでは、次の作業について説明します。

「DHCP アドレス割り当てにおける Option 82 のイネーブル化」(任意)

「DHCP クラスおよびリレー エージェント情報パターンの定義」(必須)

「DHCP アドレス プールの定義」(必須)

Option 82 の機能設計を使用した DHCP アドレスの割り当て

DHCP は、TCP/IP ネットワーク上のホストに設定情報を渡すためのフレームワークを提供します。コンフィギュレーション パラメータおよびその他の制御情報は、DHCP メッセージのオプション フィールドに格納される、タグ付けされたデータ項目内で送受信されます。データ項目それ自体もオプションと呼ばれています。Option 82 は、リレー エージェントが知っている情報が含まれた単一の DHCP オプションとして構成されます。

この機能は、Cisco IOS DHCP サーバがクライアントに割り当てる IP アドレスを Option 82 情報を使用して判別するために役立つよう設計されたものです。Option 82 を介して送信される情報は、DHCP 要求が着信したポートを識別するために使用されます。この機能は、Option 82 内に含まれている個々のサブオプションについては解析しません。代わりに、設定されたパターンを照合する方法により、1 バイト単位でアドレスが割り当てられます。

これにより、DHCP クラスの新機能が導入されています。クライアントが常駐するサブネットとは異なる、一定の共通の特性に基づいて DHCP クライアントをグループ化するための方法です。

Option 82 を使用した DHCP アドレス割り当ての例

例として、単一のスイッチ ポートに複数の DHCP クライアントが接続しているとします。それぞれのポートは、VLAN1 および VLAN2 という、2 つの VLAN の一部として設定できます。DHCP クライアントは、VLAN1 または VLAN2 のいずれかに属し、特定の DHCP Discover メッセージが属している VLAN をスイッチで区別できる(おそらくレイヤ 2 のカプセル化を通じて)と見なされます。それぞれの VLAN は固有のサブネットを持ち、同一 VLAN(同一スイッチ)から送信されるすべての DHCP メッセージには、VLAN のサブネットを表す同一値が設定されている giaddr フィールドがあります。

問題は、VLAN1 のポート 1 に接続する DHCP クライアントには VLAN のサブネット内の 1 つの範囲から IP アドレスを割り当てる必要があり、VLAN1 のポート 2 に接続する DHCP クライアントには、別の範囲から IP アドレスを割り当てる必要があることです。この 2 つの IP アドレス範囲は両方とも、同じサブネットの一部であり、同じサブネット マスクを持ちます。通常の DHCP アドレス割り当てでは、DHCP サーバは giaddr フィールドだけを調べることから、2 つの範囲を区別することはできません。

この問題を解決するために、スイッチに常駐するリレー エージェントがリレー情報オプション(Option 82)を挿入して、そのポートに特有の情報が伝達されるようにします。DHCP サーバは、アドレス選択プロセスの間、giaddr フィールドと挿入された Option 82 の両方を検査する必要があります。

DHCP クラスの機能

Cisco IOS ソフトウェアは、IP アドレス(giaddr または着信インターフェイスの IP アドレス)を基にプールを検索してから、プールに設定されている 1 つ以上のクラスと要求とを、DHCP プールに指定されたクラスの順序に従って照合します。

1 つの DHCP アドレス プールに 1 つ以上の DHCP クラスが設定されると、このプールはアクセスが制限されたプールになります。これは、クラスの 1 つ以上がプールで一致した場合を除き、このプールからはアドレスが割り当てられないことを意味します。この設計により、DHCP クラスを使用して、アクセスを制御したり(プールにデフォルト クラスを設定しない)、より多くのアドレス範囲パーティションをプールのサブネットに提供したりできます。

複数のプールを 1 つのクラスに設定できることから、複数のプールに同一のパターンを設定する必要はありません。

DHCP のクラスベースのアドレス割り当てに関してサポートされている機能は次のとおりです。

新規リレー エージェント情報コンフィギュレーション モードの relay-information hex コマンドによる、フル リレー エージェント情報オプション値のロー 16 進ストリングでの指定。

ロー リレー情報 16 進値のビットマスキングのサポート。

relay-information hex コマンドを使用して指定した、16 進ストリングの末尾のワイルドカードのサポート。

Option 82 を使用した DHCP アドレス割り当ての制限事項

リレー エージェントが DHCP パケットに Option 82 を挿入したが giaddr フィールドを設定しなかった場合、 ip dhcp relay information trusted グローバル コンフィギュレーション コマンドを使用して DHCP サーバ インターフェイスを信頼されたインターフェイスとして設定する必要があります。この設定を行うと、サーバで DHCP メッセージが削除されることがなくなります。

DHCP アドレス割り当てにおける Option 82 のイネーブル化

デフォルトでは、Cisco IOS DHCP サーバは Option 82 で提供された情報を使用して IP アドレスを割り当てることができます。この機能がディセーブルに設定された後で再度イネーブルにするには、後述の作業を行います。

手順の概要

1. enable

2. configure terminal

3. ip dhcp use class

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp use class

 

Router(config)# ip dhcp use class

アドレスの割り当てに DHCP クラスを使用するかどうか制御します。

この機能はデフォルトでイネーブルになっています。

このコマンドの no 形式を使用すると、DHCP クラスの設定を削除しなくてもこの機能がディセーブルになります。

トラブルシューティングのヒント

DHCP クラスがプールに設定済みであるにもかかわらず DHCP サーバがクラスを使用していない場合は、 no ip dhcp use class コマンドが設定されていないか確認します。

DHCP クラスおよびリレー エージェント情報パターンの定義

DHCP クラスおよびリレー エージェント情報パターンを定義するには、この作業を実行します。

前提条件

relay-information hex コマンドを設定できるようにするには、Option 82 の各バイト位置を示す 16 進値を把握している必要があります。Option 82 の形式は製品によって異なる場合があります。この情報については、リレー エージェントのベンダーに問い合せてください。

手順の概要

1. enable

2. configure terminal

3. ip dhcp class class-name

4. relay agent information

5. relay-information hex pattern [ * ] [ bitmask mask ]

6. 設定が必要な DHCP クラスごとにステップ 3 ~ 5 を繰り返します。

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp class class-name

 

Router(config)# ip dhcp class CLASS1

DHCP クラスを定義し、DHCP クラス コンフィギュレーション モードを開始します。

ステップ 4

relay agent information

 

Router(dhcp-class)# relay agent information

リレー エージェント情報オプション コンフィギュレーション モードを開始します。

この手順を省略すると、DHCP クラスは、リレー エージェント情報オプションが存在するかどうかにかかわらず、すべてのリレー エージェント情報オプションに一致します。

ステップ 5

relay-information hex pattern [*] [ bitmask mask ]

 

Router(dhcp-class-relayinfo)# relay-information hex 01030a0b0c02050000000123

(任意)フル リレー情報オプションの 16 進値を指定します。

pattern 引数を指定すると、DHCP クラスとの照合で使用するパターンが作成されます。

この手順を省略すると、パターンは設定されず、すべてのリレー エージェント情報オプション値に一致すると見なされます。ただし、リレー情報オプションは DHCP パケット内に存在する必要があります。

複数の relay-information hex コマンドを DHCP クラスに設定できます。

ステップ 6

設定が必要な DHCP クラスごとにステップ 3 ~ 5 を繰り返します。

--

トラブルシューティングのヒント

debug ip dhcp server class コマンドを使用してクラス照合の結果を表示します。

DHCP アドレス プールの定義

DHCP アドレス プールを定義するには、この作業を実行します。

手順の概要

1. enable

2. configure terminal

3. ip dhcp pool name

4. network network-number [ mask | / prefix-length ]

5. class class-name

6. address range start-ip end-ip

7. DHCP プールに関連付ける必要がある DHCP クラスごとにステップ 5 と 6 を繰り返します。

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip dhcp pool name

 

Router# ip dhcp pool ABC

Cisco IOS DHCP サーバで DHCP アドレス プールを設定し、DHCP プール コンフィギュレーション モードを開始します。

複数のプールを 1 つのクラスに設定できることから、複数のプールに同一のパターンを設定する必要はありません。

ステップ 4

network network-number [ mask | / prefix-length ]

 

Router(dhcp-config)# network 10.0.20.0

Cisco IOS DHCP サーバ上の DHCP アドレス プールにサブネット番号とマスクを設定します。

ステップ 5

class class-name

 

Router(dhcp-config)# class CLASS1

クラスをプールに関連付け、DHCP プール クラス コンフィギュレーション モードを開始します。

DHCP クラスが定義されていない場合は、このコマンドで DHCP クラスも作成されます。

ステップ 6

address range start-ip end-ip

 

Router(dhcp-pool-class)# address range 10.0.20.1 10.0.20.100

(任意)DHCP サーバのアドレス プールに DHCP クラスのアドレス範囲を設定します。

このコマンドがクラスに設定されていない場合、デフォルト値はプールのサブネット全体になります。

ステップ 7

DHCP プールに関連付ける必要がある DHCP クラスごとにステップ 5 と 6 を繰り返します。

DHCP プールの各クラスは、設定された順序で一致しているか検証されます。

DHCP を通じてダイナミックに取得されるネクスト ホップを使用したスタティック ルートの設定

DHCP のデフォルト ゲートウェイをネクスト ホップ ルータとして使用するためのスタティック ルートを設定するには、この作業を実行します。

この作業により、DHCP のデフォルト ゲートウェイをネクスト ホップ ルータとして使用してスタティック ルートを割り当てることができます。DHCP のアドレス割り当てが実行されるまでは、ゲートウェイの IP アドレスは未知のため、今回この機能が導入されるまではこの作業はできませんでした。スタティック ルートは、DHCP 提供のアドレスを使用した Command-Line Interface(CLI; コマンドライン インターフェイス)では設定できませんでした。

デフォルトのゲートウェイが DHCP サーバで割り当てられると、スタティック ルートがルーティング テーブルにインストールされます。DHCP のリースが期限切れになるまではこのルートはルーティング テーブルにとどまり、リースが期限切れになると削除されます。

DHCP クライアントがアドレスを解放すると、対応するスタティック ルート( ip route コマンドで設定されたルート)はルーティング テーブルから自動的に削除されます。DHCP ルータのオプション(DHCP パケットの Option 3)がクライアントの更新中に変更された場合は、DHCP のデフォルトのゲートウェイはこの更新で提供された新しい IP アドレスに切り替わります。

この機能は、Dynamic Multipoint VPN(DMVPN; ダイナミック マルチポイント VPN)などの VPN を展開する場合に特に便利です。この機能は、Multipoint Generic Routing Encapsulation(mGRE; マルチポイント総称ルーティング カプセル化)トンネルなどの非物理インターフェイスがルータに設定されている場合、および、特定のトラフィックをトンネル インターフェイスを通過しないようにする必要がある場合にも有効です。

前提条件

すべての DHCP クライアントおよびサーバの設定手順を確認します。DHCP クライアントおよびサーバが DHCP ルータの Option 3 を提供するように適切に定義されていることを確認します。

制約事項

DHCP クライアントが IP アドレスまたはデフォルト ルータの IP アドレスを取得できない場合、スタティック ルートはルーティング テーブルにインストールされません。

リースが期限切れになり、DHCP クライアントがアドレスを更新できない場合は、このクライアントに割り当てられている DHCP IP アドレスは解放され、関連付けられている任意のスタティック ルートがルーティング テーブルから削除されます。

手順の概要

1. enable

2. configure terminal

3. ip route prefix mask { ip- address | interface-type interface-number [ ip-address ]} dhcp [ distance ]

4. end

5. show ip route

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

configure terminal

 

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 3

ip route prefix mask {ip-address | interface-type interface-number [ip-address]} dhcp [distance]

 

Router(config)# ip route 209.165.200.225 255.255.255.255 dhcp

DHCP サーバが IP アドレスにアクセスすると、デフォルトのネクストホップ ルータのスタティック ルートを割り当てます。

DHCP サーバから IP アドレスを取得するためにルータ上に複数のインターフェイスが設定されている場合は、インターフェイスごとに、 ip route prefix mask interface-type interface-number dhcp コマンドを実行します。インターフェイスが指定されていない場合は、いずれかのインターフェイスが IP アドレスおよびデフォルトのルータを取得するとすぐに、ルーティング テーブルにルートが追加されます。

ステップ 4

end

 

Router(config)# end

特権 EXEC モードに戻ります。

ステップ 5

show ip route

 

Router# show ip route

(任意)ルーティング テーブルの現在のステータスを表示します。

このコマンドを使用すると、DHCP クライアントが DHCP サーバからアドレスおよびデフォルト ルータのアドレスを取得したときに割り当てられているスタティック ルートが表示されます。

DHCP サーバ変数のクリア

DHCP サーバ変数をクリアするには、この作業を実行します。

手順の概要

1. enable

2. clear ip dhcp binding { address | *}

3. clear ip dhcp conflict { address | *}

4. clear ip dhcp server statistics

手順の詳細

コマンドまたはアクション
目的

ステップ 1

enable

 

Router> enable

特権 EXEC モードをイネーブルにします。

プロンプトが表示されたら、パスワードを入力します。

ステップ 2

clear ip dhcp binding { address | * }

 

Router# clear ip dhcp binding *

DHCP データベースから自動アドレス バインディングを削除します。

address 変数を指定すると、特定の(クライアント)IP アドレスの自動バインディングがクリアされます。アスタリスク( * )を指定するとすべての自動バインディングがクリアされます。

ステップ 3

clear ip dhcp conflict { address | * }

 

Router# clear ip dhcp conflict 172.16.1.103

DHCP データベースのアドレス競合をクリアします。

address 引数を指定すると、特定の IP アドレスの競合がクリアされ、アスタリスク( * )を指定するとすべてのアドレスの競合がクリアされます。

ステップ 4

clear ip dhcp server statistics

 

Router# clear ip dhcp server statistics

すべての DHCP サーバのカウンタを 0 にリセットします。

Cisco IOS DHCP サーバの設定例

ここでは、次の設定例について説明します。

「DHCP データベース エージェントの設定:例」

「IP アドレスの除外:例」

「DHCP アドレス プールの設定:例」

「連続していない複数のサブネットを使用した DHCP アドレス プールの設定:例」

「手動バインディングの設定:例」

「スタティック マッピングの設定:例」

「すべての BOOTP 要求を無視するためのオプションの設定:例」

「DHCP オプションのインポート:例」

「Option 82 を使用した DHCP アドレス割り当ての設定:例」

「DHCP を通じてダイナミックに取得したネクスト ホップを使用したスタティック ルートの設定:例」

DHCP データベース エージェントの設定:例

次に、ホスト 172.16.4.253 へのバインディングの保存方法の例を示します。ファイル転送プロトコルは FTP です。データベースに変更を書き込むまでのサーバの待機時間は 2 分間(120 秒)とします。

ip dhcp database ftp://user:password@172.16.4.253/router-dhcp write-delay 120

IP アドレスの除外:例

次に、サーバ A およびサーバ B がサブネット 10.0.20.0/24 にサービスを提供する例を示します。2 つのサーバ間で均等にサブネットを分割した上で、サーバ A に 10.0.20.1 ~ 10.0.20.125 の IP アドレスを割り当てるように設定し、サーバ B に 10.0.20.126 ~ 10.0.20.254 の IP アドレスを割り当てるように設定します。

サーバ A

ip dhcp excluded-address 10.0.20.126 10.0.20.255
!
ip dhcp pool A
network 10.0.20.0 255.255.255.0

サーバ B

ip dhcp excluded-address 10.0.20.0 10.0.20.125
!
ip dhcp pool B
network 10.0.20.0 255.255.255.0

DHCP アドレス プールの設定:例

次に、ネットワーク 172.16.0.0、サブネットワーク 172.16.1.0、およびサブネットワーク 172.16.2.0 にそれぞれ 1 つずつ計 3 つの DHCP アドレス プールを作成する例を示します。ネットワーク 172.16.0.0 のアトリビュートであるドメイン名、DNS サーバ、NetBIOS ネーム サーバ、NetBIOS ノード タイプは、サブネットワークの 172.16.1.0 および 172.16.2.0 に継承されます。各プールで、クライアントには 30 日間のリース期間が付与され、各サブネットワークの除外済みアドレスを除くすべてのアドレスは、DHCP サーバがクライアントに割り当てるために使用できます。 表 2 に、3 つの DHCP アドレス プールにある、デバイス用の IP アドレスをリストします。

 

表 2 DHCP アドレス プールの設定例

プール 0(ネットワーク 172.16.0.0)
プール 1(サブネットワーク 172.16.1.0)
プール 2(サブネットワーク 172.16.2.0)
デバイス
IP アドレス
デバイス
IP アドレス
デバイス
IP アドレス

デフォルト ルータ

-

デフォルト ルータ

172.16.1.100

172.16.1.101

デフォルト ルータ

172.16.2.100

172.16.2.101

DNS サーバ

172.16.1.102

172.16.2.102

--

--

--

--

NetBIOS ネーム サーバ

172.16.1.103

172.16.2.103

--

--

--

--

NetBIOS ノード タイプ

h-node

--

--

--

--

ip dhcp database ftp://user:password@172.16.4.253/router-dhcp write-delay 120
ip dhcp excluded-address 172.16.1.100 172.16.1.103
ip dhcp excluded-address 172.16.2.100 172.16.2.103
!
ip dhcp pool 0
network 172.16.0.0 /16
domain-name cisco.com
dns-server 172.16.1.102 172.16.2.102
netbios-name-server 172.16.1.103 172.16.2.103
netbios-node-type h-node
!
ip dhcp pool 1
network 172.16.1.0 /24
default-router 172.16.1.100 172.16.1.101
lease 30
!
ip dhcp pool 2
network 172.16.2.0 /24
default-router 172.16.2.100 172.16.2.101
lease 30

連続していない複数のサブネットを使用した DHCP アドレス プールの設定:例

DHCP プール内の連続していない複数のサブネットは、次のネットワーク トポロジで使用できます。

IP アドレス プーリング:DHCP クライアントおよびサーバが同一サブネットに常駐します。

DHCP リレー:DHCP クライアントおよび DHCP サーバは DHCP リレー エージェント経由で通信します。この場合、リレー インターフェイスはセカンダリ IP アドレスで設定済みです。

階層構造 DHCP:DHCP サーバは、DHCP サブネット割り当てサーバとして設定され、DHCP クライアントと DHCP サブネット割り当てサーバは、On-demand Address Pool(ODAP; オンデマンド アドレス プール)ルータ経由で通信します。

次に、「pool3」という名前の DHCP アドレス プールが 1 つ作成され、そのプライマリ サブネットに 172.16.0.0/16、セカンダリ サブネットの 1 つに 172.16.1.0/24、別のセカンダリ サブネットに 172.16.2.0/24 がそれぞれ割り当てられる例を示します。

プライマリ サブネットの IP アドレスに空きがなくなると、DHCP サーバは、サブネットがプールに追加された順にセカンダリ サブネットを検索します。

DHCP サーバがセカンダリ サブネットの 172.16.1.0/24 から IP アドレスを割り当てるときは、このサーバは、IP アドレス 172.16.1.100 および 172.16.1.101 で構成されるサブネット固有のデフォルト ルータ リストを使用します。しかし、DHCP サーバがサブネット 172.16.2.0/24 から IP アドレスを割り当てるときは、このサーバは、172.16.0.100 ~ 172.16.0.103 までの 4 つの IP アドレスで構成されるプール全体のリストを使用します。

プライマリ サブネット 172.16.0.0/16 の他のアトリビュートである、ドメイン名、DNS サーバ、NetBIOS ネーム サーバ、NetBIOS ノード タイプなどは、両方のセカンダリ サブネットから継承されます。

DHCP クライアントには、プールの IP アドレスに対する 30 日間のリース期間が付与されます。各サブネットでは、除外済みアドレスを除いたすべてのアドレスが、DHCP サーバがクライアントに割り当てるために使用できます。

表 3 は、3 つの連続していないサブネットで構成される DHCP アドレス プールにあるデバイス用の IP アドレスをリストします。

 

表 3 連続していない複数のサブネットを使用した DHCP アドレス プールの設定例

プライマリ サブネット
(172.16.0.0/16)
最初のセカンダリ サブネット
(172.16.1.0/24)
2 番目のセカンダリ サブネット(172.16.2.0/24)
デバイス
IP アドレス
デバイス
IP アドレス
デバイス
IP アドレス

デフォルト ルータ

172.16.0.100

172.16.0.101

172.16.0.102

172.16.0.103

デフォルト ルータ

172.16.1.100

172.16.1.101

デフォルト ルータ

172.16.0.100

172.16.0.101

172.16.0.102

172.16.0.103

DNS サーバ

172.16.1.102

172.16.2.102

--

--

--

--

NetBIOS ネーム サーバ

172.16.1.103

172.16.2.103

--

--

--

--

NetBIOS ノード タイプ

h-node

--

--

--

--

ip dhcp database ftp://user:password@172.16.4.253/router-dhcp write-delay 120
ip dhcp excluded-address 172.16.0.100 172.16.1.103
ip dhcp excluded-address 172.16.1.100 172.16.1.101
!
ip dhcp pool pool3
network 172.16.0.0 /16
default-router 172.16.0.100 172.16.2.101 172.16.0.102 172.16.0.103
domain-name cisco.com
dns-server 172.16.1.102 172.16.2.102
netbios-name-server 172.16.1.103 172.16.2.103
netbios-node-type h-node
lease 30
!
network 172.16.1.0 /24 secondary
override default-router 172.16.1.100 172.16.1.101
end
!
network 172.16.2.0 /24 secondary
 

手動バインディングの設定:例

次に、DHCP パケットでクライアント ID を送信する example1.cisco.com という名前のクライアントの手動バインディングを作成する例を示します。クライアントの MAC アドレスは 02c7.f800.0422、クライアントの IP アドレスは 172.16.2.254 です。

ip dhcp pool pool1
host 172.16.2.254
client-identifier 01b7.0813.8811.66
client-name example1
 

次に、DHCP パケットでクライアント ID を送信しない example2.cisco.com という名前のクライアントの手動バインディングを作成する例を示します。クライアントの MAC アドレスは 02c7.f800.0422、クライアントの IP アドレスは 172.16.2.253 です。

ip dhcp pool pool2
host 172.16.2.253
hardware-address 02c7.f800.0422 ethernet
client-name example1
 

アトリビュートは継承されるため、上記の 2 種類の設定と次に示す設定は等価です。

ip dhcp pool pool1
host 172.16.2.254 255.255.255.0
hardware-address 02c7.f800.0422 ieee802
client-name client1
default-router 172.16.2.100 172.16.2.101
domain-name cisco.com
dns-server 172.16.1.102 172.16.2.102
netbios-name-server 172.16.1.103 172.16.2.103
netbios-node-type h-node

スタティック マッピングの設定:例

次に、DHCP サーバを再起動し、プールを設定し、スタティック マッピング テキスト ファイルの保存先の URL を指定するという一連の操作例を示します。

no service dhcp
service dhcp
ip dhcp pool abcpool
origin file tftp://10.1.0.1/staticfilename
 

) スタティック マッピング テキスト ファイルは、ルータのフラッシュ メモリにコピーでき、ルータの TFTP プロセスで処理できます。この場合、最初のファイルの IP アドレスは、ルータが所有するアドレスでなければならず、ルータの設定に次の 1 行を追加する必要があります。

tftp-server flash static-filename


すべての BOOTP 要求を無視するためのオプションの設定:例

次に、2 つの DHCP プールがルータに設定され、受信するすべての BOOTP 要求を無視するようにルータの DHCP サーバを設定する例を示します。サブネット 10.0.18.0/24 から BOOTP 要求を受信すると、この要求は、ルータによって削除されます( ip helper-address コマンドが設定されていないため)。サブネット 192.168.1.0/24 からの BOOTP 要求があった場合、この要求は ip helper-address コマンドを経由して 172.16.1.1 に転送されます。

 
version 12.2
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname Router
!
ip subnet-zero
!
ip dhcp bootp ignore
!
ip dhcp pool ABC
network 192.168.1.0 255.255.255.0
default-router 192.168.1.3
lease 2
!
ip dhcp pool DEF
network 10.0.18.0 255.255.255.0
!
ip cef
!
interface FastEthernet0/0
no ip address
shutdown
duplex half
!
interface Ethernet1/0
ip address 10.0.18.68 255.255.255.0
duplex half
!
interface Ethernet1/1
ip address 192.168.1.1 255.255.255.0
ip helper-address 172.16.1.1
duplex half
!
interface Ethernet1/2
shutdown
duplex half
!
interface Ethernet1/3
no ip address
shutdown
duplex half
!
interface FastEthernet2/0
no ip address
shutdown
duplex half
!
ip route 172.16.1.1 255.255.255.255 e1/0
no ip http server
no ip pim bidir-enable
!
call rsvp-sync
!
mgcp profile default
!
dial-peer cor custom
!
gatekeeper
shutdown
!
line con 0
line aux 0
line vty 0 4
!
end

DHCP オプションのインポート:例

次に、DHCP オプションのインポートをサポートするようにリモートおよび集中管理サーバを設定する例を示します。集中管理サーバは、DNS および WINS のアドレスなどの DHCP オプションを DHCP プール内で自動的に更新するように設定されます。CPE 機器を使用するローカル クライアントからの DHCP 要求に応じて、リモート サーバは、このオプションのパラメータを中央サーバから「インポート」できます。図 1 に、ネットワーク トポロジを図で示します。

図 1 DHCP のネットワーク トポロジ例

 

中央ルータ

!do not assign this range to DHCP clients
ip dhcp-excluded address 10.0.0.1 10.0.0.5
!
ip dhcp pool central
! Specifies network number and mask for DHCP clients
network 10.0.0.0 255.255.255.0
! Specifies the domain name for the client
domain-name central
! Specifies DNS server that will respond to DHCP clients when they need to correlate host ! name to ip address
dns-server 10.0.0.2
!Specifies the NETBIOS WINS server
netbios-name-server 10.0.0.2
!
interface FastEthernet0/0
ip address 10.0.0.1 255.255.255.0
duplex auto
speed auto
 

リモート ルータ

ip dhcp pool client
! Imports DHCP option parameters into DHCP server database
import all
network 172.16.2.254 255.255.255.0
!
interface FastEthernet0/0
ip address dhcp
duplex auto
speed auto

Option 82 を使用した DHCP アドレス割り当ての設定:例

次に、2 種類の DHCP クラスを設定する例を示します。CLASS1 は、特定の 16 進値とリレー エージェント情報オプションがアドレス要求に含まれる DHCP クライアントのグループを定義します。CLASS2 は、リレー エージェント情報のサブオプションがアドレス要求に含まれる DHCP クライアントのグループを定義します。CLASS3 には設定済みのパターンはなく、「すべてのクラスに一致する」と見なされます。このタイプのクラスは「デフォルト」のクラスを指定する場合に便利です。

次の例では、10.0.20.0/24 サブネットをさらにサブネット化せずに、プール ABC のサブネットが 3 つの範囲に分割されています。Option 82 を使用してクラス CLASS1 との照合を行った 10.0.20.0/24 サブネットから DHCP Discover メッセージを受け取ると、10.0.20.1 ~ 10.0.20.100 の範囲で利用可能なアドレスが割り当てられます。CLASS1 のアドレス範囲に空いているアドレスがない場合、DHCP Discover メッセージで CLASS2 との照合が行われ、次はまた別のクラス、という具合に進みます。

このように、DHCP プールの各クラスはユーザの設定順序に従って一致するかどうか検証されます。プール ABC では、CLASS1、CLASS2、最後に CLASS3 という順に照合します。プール DEF では、CLASS2 にはアドレス範囲は設定されません。デフォルトでは、特定の 1 つのクラスのアドレス範囲はプールのサブネット全体です。このため、CLASS2 と照合するクライアントに 11.0.20.1 ~ 11.0.20.254 のアドレスが割り当てられる場合があります。

複数のプールを 1 つのクラスに設定できることから、複数のプールに同一のパターンを設定する必要はありません。将来的に、さらに詳しい分類方式が導入される可能性があります。たとえば、特定のデバイス(ケーブル モデムや IP 電話など)のクラスに対してだけサービスを提供するために 1 つ以上のプールを指定する必要が生じる可能性があります。

! Defines the DHCP classes and relay information patterns
ip dhcp class CLASS1
relay agent information
relay-information hex 01030a0b0c02050000000123
relay-information hex 01030a0b0c02*
relay-information hex 01030a0b0c02050000000000 bitmask 0000000000000000000000FF
 
ip dhcp class CLASS2
relay agent information
relay-information hex 01040102030402020102
relay-information hex 01040101030402020102
 
ip dhcp class CLASS3
relay agent information
 
! Associates the DHCP pool with DHCP classes
ip dhcp pool ABC
network 10.0.20.0 255.255.255.0
class CLASS1
address range 10.0.20.1 10.0.20.100
class CLASS2
address range 10.0.20.101 10.0.20.200
class CLASS3
address range 10.0.20.201 10.0.20.254
 
ip dhcp pool DEF
network 172.64.2.2 255.255.255.0
class CLASS1
address range 172.64.2.3 172.64.2.10
class CLASS2

DHCP を通じてダイナミックに取得したネクスト ホップを使用したスタティック ルートの設定:例

次に、ネクストホップ ルータの IP アドレスを DHCP サーバから取得するために 2 つのイーサネット インターフェイスを設定する方法の例を示します。

ip route 10.10.10.0 255.255.255.0 dhcp 200
ip route 10.10.20.1 255.255.255.255 ethernet 1 dhcp

その他の関連資料

Cisco IOS DHCP サーバの設定に関する関連資料を示します。

関連資料

関連項目
参照先

DHCP コマンド:コマンド構文の詳細、コマンド モード、コマンド履歴、デフォルト、使用に関する注意事項および例

『Cisco IOS IP Addressing Services Command Reference』

DHCP の概念的な説明

DHCP Overview 」モジュール

DHCP リレー エージェントの設定

「Configuring the Cisco IOS DHCP Relay Agent」 モジュール

DHCP サーバ オンデマンド アドレス プール

Configuring the DHCP Server On-Demand Address Pool Manager 」モジュール

DHCP クライアントの設定

Configuring the Cisco IOS DHCP Client 」モジュール

DHCP の拡張機能

Configuring DHCP Services for Accounting and Security 」モジュール

エッジセッション管理用 DHCP 機能拡張

Configuring DHCP Enhancements for Edge-Session Management 」モジュール

DHCP オプション

Network Registrar User's Guide , Release 6.1.1』の付録「DHCP Options」

規格

規格
タイトル

この機能によってサポートされる新しい規格や変更された規格はありません。

--

MIB

MIB
MIB リンク

この機能によってサポートされる新しい MIB または変更された MIB はありません。またこの機能による既存 MIB のサポートに変更はありません。

選択したプラットフォーム、Cisco IOS リリース、および機能セットの MIB を検索してダウンロードする場合は、次の URL にある Cisco MIB Locator を使用します。

http://www.cisco.com/go/mibs

RFC

RFC
タイトル

RFC 951

Bootstrap Protocol (BOOTP)

RFC 1542

Clarifications and Extensions for the Bootstrap Protocol

RFC 2131

Dynamic Host Configuration Protocol

RFC 2132

DHCP Options and BOOTP Vendor Extensions

シスコのテクニカル サポート

説明
リンク

Cisco Support Web サイトには、資料やツールなど幅広いオンライン リソースが用意されており、シスコの製品およびテクノロジーに関するトラブルシューティングや技術的な問題の解決などに役立てることができます。

以下を含むさまざまな作業にこの Web サイトが役立ちます。

テクニカル サポートを受ける

ソフトウェアをダウンロードする

セキュリティの脆弱性を報告する、またはシスコ製品のセキュリティ問題に対する支援を受ける

ツールおよびリソースへアクセスする

Product Alert の受信登録

Field Notice の受信登録

Bug Toolkit を使用した既知の問題の検索

Networking Professionals(NetPro)コミュニティで、技術関連のディスカッションに参加する

トレーニング リソースへアクセスする

TAC Case Collection ツールを使用して、ハードウェアや設定、パフォーマンスに関する一般的な問題をインタラクティブに特定および解決する

Japan テクニカル サポート Web サイトでは、Technical Support Web サイト(http://www.cisco.com/techsupport)の、利用頻度の高いドキュメントを日本語で提供しています。Japan テクニカル サポート Web サイトには、次の URL からアクセスしてください。http://www.cisco.com/jp/go/tac

http://www.cisco.com/cisco/web/support/index.html

Cisco IOS DHCP サーバの機能情報

表 4 に、このモジュールに記載されている機能および具体的な設定情報へのリンクを示します。この表には、Cisco IOS Release 12.2(1) 以降のリリースで導入または変更された機能だけを示します。

ご使用の Cisco IOS ソフトウェア リリースによっては、コマンドの中に一部使用できないものがあります。特定のコマンドのサポートの導入時期に関する詳細については、コマンド リファレンス マニュアルを参照してください。

ここに記載されていないこのテクノロジーの機能情報については、「 DHCP Features Roadmap 」を参照してください。

Cisco Feature Navigator を使用すると、プラットフォームおよびソフトウェア イメージのサポート情報を検索できます。Cisco Feature Navigator を使用すると、Cisco IOS ソフトウェア イメージおよび Catalyst OS ソフトウェア イメージがサポートする特定のソフトウェア リリース、機能セット、またはプラットフォームを確認できます。Cisco Feature Navigator には、 http://www.cisco.com/go/cfn からアクセスします。Cisco.com のアカウントは必要ありません。


表 4 には、一連の Cisco IOS ソフトウェア リリースのうち、特定の機能が初めて導入された Cisco IOS ソフトウェア リリースだけが記載されています。特に明記していない限り、その機能は、一連の Cisco IOS ソフトウェア リリースの以降のリリースでもサポートされます。


 

表 4 Cisco IOS DHCP サーバの機能情報

機能名
リリース
機能設定情報

Option 82 を使用した DHCP アドレス割り当て

12.3(4)T
12.2(28)SB
12.2(33)SRB

Cisco IOS DHCP サーバは、リレー エージェントから送信されたリレー情報オプション(Option 82)の情報に基づいて、ダイナミック IP アドレスを割り当てることができます。

この機能に関する詳細については、次の各項を参照してください。

Option 82 を使用した DHCP サーバのアドレス割り当て

Option 82 を使用した DHCP アドレス割り当ての設定

Option 82 を使用した DHCP アドレス割り当ての設定:例

導入または変更されたコマンドは次のとおりです。 address range class ip dhcp class ip dhcp use class relay agent information relay-information hex

DHCP サーバの拡張機能 Import All

12.2(15)T
12.2(33)SRC

これは import all グローバル コンフィギュレーション コマンドの拡張機能です。この機能が追加される前、 import all コマンドでインポートされたオプションは、他のサブシステムでインポートされたオプションで上書きされました。この機能がある一方で、複数のサブシステムによってインポートされたオプションは DHCP アドレス プールに共存できます。セッションが終了したとき、またはリースがリリースされたとき、インポートされたオプションはクリアされます。

この機能に関する詳細については、次の各項を参照してください。

DHCP サーバ オプションを集中管理 DHCP サーバからインポートするためのリモート ルータの設定

「DHCP オプションのインポート:例」

DHCP サーバの複数のサブネット

12.4(15)T
12.2(33)SRB

この機能は、複数のサブネットを同一の DHCP アドレス プールに設定できます。

この機能に関する詳細については、次の各項を参照してください。

DHCP アドレス プールの設定

「連続していない複数のサブネットを使用した DHCP アドレス プールの設定:例」

導入または変更されたコマンドは次のとおりです。 network (DHCP)、 override default-router

すべての BOOTP 要求を無視するための DHCP サーバ オプション

12.2(8)T
12.2(28)SB

この機能を使用して、受信した Bootstrap Protocol(BOOTP; ブートストラップ プロトコル)要求パケットを、Cisco IOS DHCP サーバが選択的に無視し、応答しないように設定できます。

この機能に関する詳細については、次の各項を参照してください。

DHCP サーバの動作のカスタマイズ

すべての BOOTP 要求を無視するためのオプションの設定:例

導入または変更されたコマンドは、 ip dhcp bootp ignore です。

DHCP スタティック マッピング

12.3(11)T
12.2(28)SB
12.2(33)SRC

スタティック マッピング プールを設定すると、特定のプールに保存されている個々のテキスト ファイル(DHCP データベース ファイルと類似した形式)から DHCP サーバがスタティック バインディングを読み取ることができます。

この機能に関する詳細については、次の各項を参照してください。

DHCP スタティック マッピング

スタティック マッピングの設定:例

導入または変更されたコマンドは、 origin です。

DHCP ゲートウェイを使用した DHCP のスタティックなルート設定

12.3(8)T
12.2(28)S
12.2(33)SRC

この機能を使用すると、割り当てられた DHCP ネクストホップ ルータをポイントするスタティック ルートを設定できます。

この機能に関する詳細については、次の各項を参照してください。

DHCP を通じてダイナミックに取得されるネクスト ホップを使用したスタティック ルートの設定

DHCP を通じてダイナミックに取得したネクスト ホップを使用したスタティック ルートの設定:例

導入または変更されたコマンドは、次のとおりです。 ip route show ip route