Cisco IOS IP アドレッシング サービス コンフィギュ レーション ガイド リリース 15.1S
Cisco IOS DHCP サーバ設定
Cisco IOS DHCP サーバ設定
発行日;2012/01/09 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 4MB) | フィードバック

目次

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 サーバを実装し、ルータ内の指定されたアドレス プールから DHCP クライアントへの IP アドレスの割り当てと管理を行います。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 アドレスを決定するために追加情報を使用する必要があります。Cisco IOS リレー エージェントは Option 82 を使用することにより、クライアントが発信する DHCP パケットを DHCP サーバに転送するときに、Cisco IOS リレー エージェントの追加情報を長期間保持できます。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 データベース エージェントとは、DHCP バインディング データベースが格納されている任意のホスト(FTP、TFTP、rcp サーバなど)や DHCP サーバ上のストレージ メディア(disk0 など)です。DHCP データベース エージェントは複数設定でき、データベースを更新する間隔や各エージェント間の転送の間隔も設定できます。

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

アドレスの競合

2 つのホストが同一の IP アドレスを使用すると、アドレスの競合が発生します。アドレスの割り当て中、DHCP は ping と 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 サーバは giaddr フィールドに IP アドレスが含まれているサブネットを持つ DHCP プールと DHCPDISCOVER を照合します。

クライアントが直接接続している場合(giaddr フィールドがゼロ)、DHCP サーバは受信インターフェイスに設定されているサブネットが含まれる DHCP プールと DHCPDISCOVER を照合します。インターフェイスにセカンダリ 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 サーバはその 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 パケットでクライアント ID(DHCP Option 61)を送信します。このようなクライアントに手動バインディングを設定するには、DHCP プール コンフィギュレーション コマンドの client-identifier を、DHCP クライアントを識別する適切な 16 進値とともに入力する必要があります。クライアント ID オプションを送信しないクライアントに手動バインディングを設定するには、DHCP プール コンフィギュレーション コマンドの hardware-address を、クライアントの適切な 16 進ハードウェア アドレスとともに入力する必要があります。

Cisco IOS Release 12.4(22)T 以降のリリースでは、DHCP サーバは手動バインディングが設定されているクライアントに無期限のリース時間を送信します。

制約事項

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

照合に使用するクライアント 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 サーバはデフォルトで、要求しているクライアントに特定のアドレスを割り当てる前に、1 つのプール アドレスに 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 サーバからアドレスが提供される場合があります。DHCP サーバからアドレスが提供されると、BOOTP クライアントは BOOTP サーバからのアドレスではなく、DHCP サーバからのアドレスで起動します。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 内に含まれている個々のサブオプションについては解析しません。代わりに、設定されたパターンをバイト単位で照合して、アドレスを割り当てます。

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

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

例として、単一のスイッチの 2 つのポートに 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 クラスを使用して、アクセスを制御したり(プールにデフォルト クラスを設定しない)、より多くのアドレス範囲パーティションをプールのサブネットに提供したりできます。

複数のプールを同じクラスで設定できるため、複数のプールに同じパターンを設定する必要はありません。

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

新規リレー エージェント情報コンフィギュレーション モードで relay-information hex コマンドを使用して、フル リレー エージェント情報オプション値を 16 進の raw 文字列として指定。

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

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 パケット内に存在する必要があります。

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

ステップ 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 プール コンフィギュレーション モードを開始します。

複数のプールを同じクラスで設定できるため、複数のプールに同じパターンを設定する必要はありません。

ステップ 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

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

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 プロセスで処理できます。この場合、origin file 行の 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 のアドレスが割り当てられる場合があります。

複数のプールを同じクラスで設定できるため、複数のプールに同じパターンを設定する必要はありません。将来的に、さらに詳しい分類方式が導入される可能性があります。たとえば、特定のデバイス(ケーブル モデムや IP Phone など)のクラスに対してだけサービスを提供するために 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 モジュール

Edge-Session 管理用の 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』

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

説明
リンク

右の URL にアクセスして、シスコのテクニカル サポートを最大限に活用してください。

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

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

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

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

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

Product Alert の受信登録

Field Notice の受信登録

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

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

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

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

この Web サイト上のツールにアクセスする際は、Cisco.com のログイン ID およびパスワードが必要です。

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