DHCP リレー エージェント設定方法
ここでは、次の作業について説明します。
• 「パケット転送アドレスの指定」(必須)
• 「リレー エージェント情報オプション サポートの設定」(任意)
• 「インターフェイスごとのリレー エージェント情報オプション設定のサポート」(任意)
• 「リレー エージェント情報オプションの加入者 ID サブオプションの設定」(任意)
• 「クライアント ID の DHCP リレー クラス サポートの設定」(任意)
• 「MPLS VPN の DHCP リレー エージェント サポートの設定」(任意)
• 「リレー エージェント情報オプションのカプセル化サポートの設定」(任意)
• 「スマート リレー エージェント転送を使用したセカンダリ アドレスへの DHCP ブロードキャストのゲートウェイ アドレス設定」(任意)
• 「プライベートおよび標準のサブオプション番号のサポート設定」(任意)
• 「DHCP リレー エージェントのトラブルシューティング」(任意)
パケット転送アドレスの指定
パケットを DHCP サーバに転送するよう DHCP リレー エージェントを設定するには、この作業を実行します。
DHCP クライアントは、最初の DHCPDISCOVER メッセージを送信するために UDP ブロードキャストを使用する必要があります。接続されたネットワークについての情報がクライアントにはないためです。クライアントがサーバを含まないネットワーク セグメント上に位置する場合、UDP ブロードキャストは正常に転送されません。ほとんどのルータはブロードキャスト トラフィックを転送するよう設定されていないからです。また、DHCP クライアントが DHCPDISCOVER メッセージをブロードキャストする場合、リレー エージェントはクライアントに向けてもブロードキャスト メッセージを送信します。ACK メッセージの受信後に不要な ARP チェックがクライアントによって実行されるため、Address Resolution Protocol(ARP; アドレス解決プロトコル)エントリが作成されます。ARP テーブルに 2 つのエントリがある場合、ARP タイムアウトの後に一方がタイムアウトになります。
この状況は、特定のクラスのブロードキャストをヘルパー アドレスに転送するよう、ブロードキャストを受信するルータのインターフェイスを設定することで解決できます。インターフェイスごとに、複数のヘルパー アドレスを使用できます。
ルータがこれらのアドレスの割り当てやパラメータ要求を転送するとき、ルータは DHCP リレー エージェントとして機能しています。Cisco ルータの DHCP リレー エージェントは、 ip helper-address インターフェイス コンフィギュレーション コマンドを介して実装されます。
図 1 では、DHCP クライアントが IP アドレスの要求と追加設定パラメータをローカル LAN 上でブロードキャストしています。DHCP リレー エージェントとして機能しているルータ B は、ブロードキャストをピックアップし、別のインターフェイス上で送信するために新しい DHCP メッセージを生成します。この DHCP メッセージの一部として、リレー エージェントは ip helper-address コマンドを含むインターフェイスの IP アドレスを、DHCP パケットの IP アドレス(giaddr)フィールドに挿入します。この IP アドレスによって、DHCP サーバは、提示を受信する必要があるサブネットと、提示する IP アドレスの適切な範囲とを決定できます。DHCP リレー エージェントは、ローカル ブロードキャストを、 ip helper-address インターフェイス コンフィギュレーション コマンドで指定された DHCP サーバ アドレスである 172.16.1.2 へと IP ユニキャストを介して送信します。
図 1 ヘルパー アドレスを使用した UDP ブロードキャストの DHCP サーバへの転送
手順の概要
1. enable
2. configure terminal
3. interface type number
4. ip helper-address address
5. exit
6. ip dhcp relay prefer known-good-server
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
interface type number
Router(config)# interface FastEthernet0/0 |
インターフェイスを設定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 4 |
ip helper-address address
Router(config-if)# ip helper-address 172.16.1.2 |
BOOTP や DHCP など、UPD ブロードキャストを転送します。 • address 引数は特定の DHCP サーバ アドレスにするか、他の DHCP サーバが宛先ネットワーク セグメントにある場合は、ネットワーク アドレスにできます。ネットワーク アドレスを使用することで、他のサーバも DHCP 要求に応答できるようになります。 • 複数のサーバがある場合、各サーバに 1 つのヘルパー アドレスを設定できます。 |
ステップ 5 |
exit
Router(config-if)# exit |
(任意)インターフェイス コンフィギュレーション モードを終了し、グローバル コンフィギュレーション モードを開始します。 |
ステップ 6 |
ip dhcp relay prefer known-good-server
Router(config)# ip dhcp relay prefer known-good-server |
(任意)DHCP クライアントがアドレスを変更する頻度を減少させ、クライアント要求を前の要求を処理したサーバに転送します。 • DHCP リレーはアンナンバード インターフェイス上の DHCP クライアントに提示されるアドレスの ARP エントリを削除します。 |
リレー エージェント情報オプション サポートの設定
DHCP リレー エージェント情報オプションのサポートをイネーブルにするには、次の作業を実行します。
リレー エージェント情報オプション
自動 DHCP アドレス割り当ては通常、IP アドレスがゲートウェイ IP アドレス(DHCP パケットの giaddr フィールド)または着信インターフェイス IP アドレスになるかどうかに基づいています。一部のネットワークでは、割り当てる IP アドレスを決定するために追加情報を使用する必要があります。Cisco IOS リレー エージェントでは、クライアントが発信した DHCP パケットを DHCP サーバに転送する際に、リレー エージェント情報オプション(Option 82)を使用して、自身についての追加情報を含めることが可能です。
Cisco IOS は、 ip dhcp relay information option コマンドを使用してこの機能をサポートします。リレー エージェントは、回線識別子サブオプションとリモート ID サブオプションを自動的にリレー エージェント情報オプションへ追加し、DHCP サーバに転送します。
DHCP サーバは、この情報を使用して、IP アドレスの割り当て、アクセス コントロールの実施、およびサービス プロバイダー ネットワークの各加入者への Quality of Service(QoS)とセキュリティ ポリシー(または他のパラメータ割り当てポリシー)の設定を行えます。
図 2 に、リレー エージェント情報オプションがどのように DHCP パケットに挿入されるかを示します。次のようにして挿入されます。
1. DHCP クライアントは DHCP 要求を生成し、ネットワーク上でブロードキャストします。
2. DHCP リレー エージェントはブロードキャスト DHCP 要求パケットを代行受信し、パケット内にリレー エージェント情報オプション(Option 82)を挿入します。リレー エージェント情報オプションには、関連するサブオプションが含まれています。
3. DHCP リレー エージェントは DHCP パケットを DHCP サーバにユニキャストします。
4. DHCP サーバはパケットを受信し、サブオプションを使用して IP アドレスや他の設定パラメータを割り当て、クライアントに転送します。
5. サブオプション フィールドは、クライアントへの転送の際にリレー エージェントによってパケットから取り除かれます。
図 2 リレー エージェント情報オプションの動作
リレー エージェント情報の再転送ポリシー
DHCP リレー エージェントは、すでにリレー情報を持つ別の DHCP リレー エージェントからのメッセージを受信する場合があります。デフォルトでは、以前のリレー エージェントからのリレー情報は置き換えられます。ご使用のネットワークでこの動作が適切でない場合、 ip dhcp relay information policy { drop | keep | replace } グローバル コンフィギュレーション コマンドを使用して変更できます。
再転送ポリシーの動作が正しいことを確認するには、 no ip dhcp relay information check グローバル コンフィギュレーション コマンドを使用して、リレー エージェント情報チェックがディセーブルであることを確認します。
制約事項
• ip dhcp relay information コマンドがグローバル コンフィギュレーション モードでは設定されていて、インターフェイス コンフィギュレーション モードでは設定されていない場合、グローバル コンフィギュレーションがすべてのインターフェイスに適用されます。
• ip dhcp relay information コマンドがグローバル コンフィギュレーション モードとインターフェイス コンフィギュレーション モードの両方で設定された場合、インターフェイス コンフィギュレーション コマンドがグローバル コンフィギュレーション コマンドより優先されます。ただし、インターフェイス コンフィギュレーションがないインターフェイスにはグローバル コンフィギュレーションが適用されます。
• ip dhcp relay information コマンドがグローバル コンフィギュレーション モードでは設定されておらず、インターフェイス コンフィギュレーション モードでは設定されている場合、コンフィギュレーション オプションが適用されたインターフェイスだけが影響を受けます。他のすべてのインターフェイスはコンフィギュレーションの影響を受けません。
リレー エージェント情報オプションのインターフェイスごとのサポートについて詳しくは、「インターフェイスごとのリレー エージェント情報オプション設定のサポート」セクションを参照してください。
手順の概要
1. enable
2. configure terminal
3. ip dhcp relay information option
4. ip dhcp relay information check
5. ip dhcp relay information policy { drop | keep | replace }
6. ip dhcp relay information trust-all
7. end
8. show ip dhcp relay information trusted-sources
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
ip dhcp relay information option
Router(config)# ip dhcp relay information option |
DHCP サーバへの転送された BOOTREQUEST メッセージに、システムが DHCP リレー エージェント情報オプション(Option 82 フィールド)を挿入できるようにします。 • この機能は、デフォルトではディセーブルです。 |
ステップ 4 |
ip dhcp relay information check
Router(config)# ip dhcp relay information check |
(任意)転送された BOOTREPLY メッセージ内のリレー エージェント情報オプションが有効かチェックするよう DHCP を設定します。 • デフォルトでは、DHCP は DHCP サーバから受信した DHCP 応答パケット内の Option 82 フィールドが有効かをチェックします。無効なメッセージを受信すると、リレー エージェントはメッセージをドロップします。有効なメッセージを受信すると、リレー エージェントは Option 82 フィールドを削除し、パケットを転送します。この機能がディセーブルにされている場合、 ip dhcp relay information check コマンドを使用して再度イネーブルにします。 |
ステップ 5 |
ip dhcp relay information policy { drop | keep | replace }
Router(config)# ip dhcp relay information policy replace |
(任意)DHCP リレー エージェントの再転送ポリシー(メッセージにすでにリレー情報が含まれている場合のリレー エージェントによる処理方法)を設定します。 • 詳細については、「リレー エージェント情報の再転送ポリシー」の項を参照してください。 |
ステップ 6 |
ip dhcp relay information trust-all
Router(config)# ip dhcp relay information trust-all |
(任意)ルータ上のインターフェイスすべてを、DHCP リレー情報オプションの信頼できるソースとして設定します。 • デフォルトでは、DHCP パケット内のゲートウェイ アドレスがすべてゼロに設定され、リレー エージェント情報オプションがすでにパケット内に存在する場合、DHCP リレー エージェントはパケットを廃棄します。この動作をオーバーライドしてパケットを受け入れるようにするには、 ip dhcp relay information trust-all コマンドを使用します。 • このコマンドは、クライアントと、Option 82 を挿入する場合があるリレー エージェントとの間にスイッチがある場合に役立ちます。このコマンドを使用して、パケットがドロップされないようにします。 • ip dhcp relay information trusted インターフェイス コンフィギュレーション モード コマンドを使用して、インターフェイスを個別に DHCP リレー情報オプションの信頼できるソースとして設定できます。 |
ステップ 7 |
end
Router(config)# end |
特権 EXEC モードに戻ります。 |
ステップ 8 |
show ip dhcp relay information trusted-sources
Router# show ip dhcp relay information trusted-sources |
(任意)DHCP リレー情報オプションの信頼できるソースとして設定されたインターフェイスをすべて表示します。 |
インターフェイスごとのリレー エージェント情報オプション設定のサポート
個別のインターフェイス ベースで DHCP リレー エージェント情報オプション(Option 82)のサポートをイネーブルにするには、次の作業を実行します。
インターフェイス コンフィギュレーションにより、DHCP Option 82 要求が異なる、複数のインターフェイス上の加入者へ、1 つの Cisco ルータから到達可能になります。
制約事項
• ip dhcp relay information コマンドがグローバル コンフィギュレーション モードでは設定されていて、インターフェイス コンフィギュレーション モードでは設定されていない場合、グローバル コンフィギュレーションがすべてのインターフェイスに適用されます。
• ip dhcp relay information コマンドがグローバル コンフィギュレーション モードとインターフェイス コンフィギュレーション モードの両方で設定された場合、インターフェイス コンフィギュレーション コマンドがグローバル コンフィギュレーション コマンドより優先されます。ただし、インターフェイス コンフィギュレーションがないインターフェイスにはグローバル コンフィギュレーションが適用されます。
• ip dhcp relay information コマンドがグローバル コンフィギュレーション モードでは設定されておらず、インターフェイス コンフィギュレーション モードでは設定されている場合、コンフィギュレーション オプションが適用されたインターフェイスだけが影響を受けます。他のすべてのインターフェイスはコンフィギュレーションの影響を受けません。
手順の概要
1. enable
2. configure terminal
3. interface type number
4. ip dhcp relay information option-insert [ none ]
5. ip dhcp relay information check-reply [ none ]
6. ip dhcp relay information policy-action { drop | keep | replace }
7. exit
8. 別のインターフェイス上でリレー エージェント情報オプション設定を行うには、ステップ 3 から 7 までを繰り返します。
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
interface type number
Router(config)# interface FastEthernet0/0 |
インターフェイスを設定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 4 |
ip dhcp relay information option-insert [ none ]
Router(config-if)# ip dhcp relay information option-insert |
DHCP サーバへの転送された BOOTREQUEST メッセージに、システムが DHCP リレー エージェント情報オプション(Option 82 フィールド)を挿入できるようにします。 • この機能は、デフォルトではディセーブルです。ただし、リレー エージェント情報オプションのサポートが、グローバル コンフィギュレーション モードで設定されていて、インターフェイス コンフィギュレーション モードでは設定されていない場合、インターフェイスはグローバル コンフィギュレーションを継承します。 • ip dhcp relay information option-insert none インターフェイス コンフィギュレーション コマンドが実行コンフィギュレーションに保存されます。このコマンドは、どのようなグローバル リレー エージェント情報コンフィギュレーションよりも優先されます。 |
ステップ 5 |
ip dhcp relay information check-reply [ none ]
Router(config-if)# ip dhcp relay information check-reply |
転送された BOOTREPLY メッセージ内のリレー情報オプションを検証するよう、DHCP サーバを設定します。 • デフォルトでは、DHCP は DHCP サーバから受信した DHCP 応答パケット内の Option 82 フィールドが有効かをチェックします。無効なメッセージを受信すると、リレー エージェントはメッセージをドロップします。有効なメッセージを受信すると、リレー エージェントは Option 82 フィールドを削除し、パケットを転送します。この機能がディセーブルにされている場合、再びイネーブルにするには ip dhcp relay information check-reply コマンドを使用します。 • ip dhcp relay information check-reply none インターフェイス コンフィギュレーション コマンド オプションが実行コンフィギュレーションに保存されます。このコマンドは、どのようなグローバル リレー エージェント情報コンフィギュレーションよりも優先されます。 |
ステップ 6 |
ip dhcp relay information policy-action { drop | keep | replace }
Router(config-if)# ip dhcp relay information policy-action replace |
DHCP リレー エージェントの情報再転送ポリシー(メッセージにすでにリレー情報が含まれている場合のリレー エージェントによる処理方法)を設定します。 • 詳細については、「リレー エージェント情報の再転送ポリシー」を参照してください。 |
ステップ 7 |
exit
Router(config-if)# exit |
インターフェイス コンフィギュレーション モードを終了します。 |
ステップ 8 |
別のインターフェイス上でリレー エージェント情報設定を行うには、ステップ 3 から 7 までを繰り返します。 |
(任意) |
リレー エージェント情報オプションの加入者 ID サブオプションの設定
Internet Service Provider(ISP; インターネット サービス プロバイダー)がリレー エージェント情報オプションの加入者 ID サブオプションに固有識別情報を追加できるようにするには、次の作業を実行します。
固有識別情報によって、ISP は加入者の識別、加入者への特定のアクションの割り当て(例:ホスト IP アドレス、サブネット マスク、ドメイン ネーム システム DNS の割り当て)、アカウンティングのトリガーが行えます。
この機能の導入前は、加入者が移動する場合、各 ISP が変更について知らされている必要があり、すべての ISP が影響を受けるカスタマーの DHCP 設定が同時に再設定される必要がありました。サービスが変更されない場合でも、すべての移動が ISP 環境の管理の変更につながっていました。この機能の導入により、加入者があるネットワーク アクセス サーバから別のサーバへ移動する場合でも、DHCP サーバや ISP の側のコンフィギュレーションに変更を加える必要がなくなります。
前提条件
各加入者に固有識別情報を設定する必要があります。
クライアントに接続されるインターフェイス上に、設定可能な新しい加入者 ID オプションが設定される必要があります。サブスクライバがあるインターフェイスから別のインターフェイスへ移動する場合、インターフェイス コンフィギュレーションも変更する必要があります。
サーバは新しいサブオプションを認識できる必要があります。
手順の概要
1. enable
2. configure terminal
3. ip dhcp relay information option
4. interface type number
5. ip dhcp relay information option subscriber-id string
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
ip dhcp relay information option
Router(config)# ip dhcp relay information option |
DHCP サーバへの転送された BOOTREQUEST メッセージに、システムが DHCP リレー エージェント情報オプション(Option 82 フィールド)を挿入できるようにします。 • この機能は、デフォルトではディセーブルです。 |
ステップ 4 |
interface type number
Router(config)# interface atm4/0.1 |
インターフェイスを設定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 5 |
ip dhcp relay information option subscriber-id string
Router(config-if)# ip dhcp relay information option subscriber-id newsubscriber123 |
DHCP リレー エージェントが加入者 ID サブオプションをリレー情報オプションに追加するよう指定します。 • string 引数は、最大 50 字までの英数字です。 (注) 50 字を超える文字列が設定された場合、切り捨てられます。 コマンドは、逆方向への機能の確保のため、デフォルトではディセーブルです。 |
クライアント ID の DHCP リレー クラス サポートの設定
クライアント ID の DHCP リレー クラス サポートを設定するには、次の作業を実行します。
リレー クラス サポートの概要
クライアント ID の DHCP リレー クラス サポートにより、Cisco IOS リレー エージェントは、次の 4 つのオプションの内容に基づいて、クライアントで生成された DHCP メッセージを異なる DHCP サーバへ転送できます。
• Option 60:ベンダー クラス ID
• Option 77:ユーザ クラス
• Option 124:ベンダー識別用ベンダー クラス
• Option 125:ベンダー識別用ベンダー固有情報
それぞれのオプションが、DHCP メッセージを送信するクライアントのタイプを識別します。
リレー プールを使用すると、アドレス割り当てに使用されていない DHCP プールを定義できます。リレー プールによって、特定のサブネット上のクライアントからの DHCP メッセージを、特定の DHCP サーバに転送するよう指定できます。リレー プールは、転送動作の決定を助けるプール内部のリレー クラスによって設定できます。
たとえば、DHCP DISCOVER メッセージ内のオプションを受信した後、リレー エージェントはリレー プールからリレー クラスのマッチングと特定を行い、それから DHCP DISCOVER メッセージを特定されたリレー クラスに関連付けられた DHCP サーバへ送ります。
リレー クラス サポートの使用シナリオ
例となるアプリケーションでは、DHCP リレー エージェントとして動作する Cisco ルータは 2 つの VoIP サービス(H323 と SIP)から DHCP 要求を受信します。要求元デバイスは Option 60 で識別されます。
VoIP サービスは両方ともに異なるバックオフィス インフラストラクチャを持つため、同じ DHCP サーバにサービスを行わせることはできません。H323 デバイスの要求は H323 サーバへ、SIP デバイスからの要求は SIP サーバへ転送される必要があります。
解決策となるのは、クライアント デバイスによって送信される Option 60 の値のマッチングを行うよう設定されたリレー クラスを使用して、リレー エージェントを設定することです。オプション値に基づいて、リレー エージェントはリレー クラスをマッチングにより特定し、DHCP DISCOVER メッセージを特定されたリレー クラスに関連付けられた DHCP サーバに転送します。
Cisco IOS DHCP サーバは、プールに適用可能なリレー クラスを調べ、その後、コンフィギュレーション順序にかかわらず、完全一致クラスを使用します。完全一致が見つからなかった場合、DHCP サーバは最初に見つかったデフォルトの一致を使用します。
前提条件
DHCP オプションのはたらきを理解しておくことは重要です。詳しくは、「DHCP の概要」モジュールを参照してください。
option hex コマンドの設定では、オプション内の各バイト位置の 16 進数の値を知っておく必要があります。フォーマットは製品ごとに異なる場合があります。この情報については、リレー エージェントのベンダーにお問い合わせください。
手順の概要
1. enable
2. configure terminal
3. ip dhcp class class-name
4. option code hex hex-pattern [ * ] [ mask bit-mask-pattern ]
5. exit
6. 設定が必要な DHCP クラスごとにステップ 3 ~ 5 を繰り返します。
7. ip dhcp pool name
8. relay source ip-address subnet-mask
9. class class-name
10. relay target [ vrf vrf-name | global ] ip-address
11. exit
12. 設定する必要がある各 DHCP クラスについて、ステップ 9 から 11 までを繰り返します。
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
ip dhcp class class-name
Router(config)# ip dhcp class SIP |
DHCP クラスを定義し、DHCP クラス コンフィギュレーション モードを開始します。 |
ステップ 4 |
option code hex hex-pattern [ * ][ mask bit-mask-pattern ]
Router(dhcp-class)# option 60 hex 010203 |
リレー エージェントが DHCP メッセージ内に挿入された DHCP オプションに基づいて転送を判定できるようにします。 |
ステップ 5 |
exit
Router(dhcp-class)# exit |
DHCP クラス コンフィギュレーション モードを終了します。 |
ステップ 6 |
設定が必要な DHCP クラスごとにステップ 3 ~ 5 を繰り返します。 |
-- |
ステップ 7 |
ip dhcp pool name
Router(config)# ip dhcp pool ABC |
DHCP サーバ上の DHCP プールを設定し、DHCP プール コンフィギュレーション モードを開始します。 |
ステップ 8 |
relay source ip-address subnet-mask
Router(dhcp-config)# relay source 10.2.0.0 255.0.0.0 |
リレー ソースを設定します。 ip-address および subnet-mask 引数はリレー ソースの IP アドレスおよびサブネット マスクです。 • このコマンドは、アドレス プールの使用を、リレー ソースの設定と一致する IP アドレスおよびマスクが設定されているインターフェイスに到着するパケットに制限するため、通常の DHCP ネットワーク プールの network コマンドと類似しています。 |
ステップ 9 |
class class-name
Router(dhcp-config)# class SIP |
クラスを DHCP プールに関連付け、DHCP プール クラス コンフィギュレーション モードを開始します。 |
ステップ 10 |
relay target [ vrf vrf-name | global ] ip-address
Router(config-dhcp-pool-class)# relay target 10.21.3.1 |
パケットが転送される DHCP サーバの IP アドレスを設定します。 |
ステップ 11 |
exit
Router(dhcp-class)# exit |
DHCP プール クラス コンフィギュレーション モードを終了します。 |
ステップ 12 |
設定する必要がある各 DHCP クラスについて、ステップ 9 から 11 までを繰り返します。 |
-- |
MPLS VPN の DHCP リレー エージェント サポートの設定
MPLS VPN の DHCP リレー エージェント サポートを設定するには、次の作業を実行します。
MPLS VPN の DHCP リレー エージェント サポート
MultiProtocol Label Switching(MPLS; マルチプロトコル ラベル スイッチング)Virtual Private Network(VPN; バーチャル プライベート ネットワーク)の DHCP リレーのサポートを使用すると、ネットワーク管理者は重複するアドレスを許容することで、アドレス空間を節約できます。リレー エージェントは、異なる VPN 上の複数のクライアントをサポートできます。また、異なる VPN の多数のクライアントで同じ IP アドレスを共有できます。
VPN の設定には、通常の DHCP ホスト IP アドレス指定に調整を加えることが関係します。VPN で使用するプライベート アドレス空間は、インターネット全体から見て一意ではない場合があります。
環境によっては、1 つ以上の MPLS VPN へもアクセスできるネットワーク要素内にリレー エージェントが存在することがあります。それら異なる VPN 上の DHCP クライアントへサービスを提供する DHCP サーバは、各クライアントが存在する VPN に位置している必要があります。リレー エージェントを含んでいるネットワーク要素は、通常 DHCP クライアントの VPN アソシエーションをキャプチャし、この情報を DHCP パケットのリレー エージェント情報オプション内に含めます。
MPLS VPN の DHCP リレー サポートにより、リレー エージェントは DHCP リレー エージェント情報オプションの次の 3 つのサブオプションを使用して、この VPN 関連の必須情報を DHCP サーバに転送できます。
• VPN 識別子
• サブネット選択
• サーバ識別子オーバーライド
VPN 識別子サブオプションは、DHCP サーバに対し、DHCP サーバに回す各 DHCP 要求の VPN について知らせるために、リレー エージェントによって使用されます。また、DHCP サーバがリレー エージェントへ送り返す DHCP 応答を正しく転送するためにも使用されます。VPN 識別子サブオプションは、クライアントが接続されている着信インターフェイス上に設定された VPN ID を含んでいます。VPN ID ではなく VRF 名を設定した場合、VRF 名が VPN 識別子サブオプションとして使用されます。インターフェイスがグローバル ルーティング空間内にある場合、VPN サブオプションは付加されません。
サブネット選択サブオプションを使用すると、クライアントが存在するサブネットを、リレー エージェントとの通信に使用される IP アドレスから分離させられます。通常の DHCP 処理では、DHCP クライアントが存在するサブネットと、リレー エージェントへの通信のためにサーバが使用可能な IP アドレスの両方が、ゲートウェイ アドレスによって指定されます。状況によっては、DHCP クライアントが存在するサブネットに対して、リレー エージェントへの通信のためにサーバが使用可能な IP アドレスとは異なるアドレスをリレー エージェントに指定する必要がある場合があります。サブネット選択サブオプションは、リレー エージェント情報オプション内に含まれ、DHCP サーバに送られます。ゲートウェイ アドレスは、DHCP サーバ向けのリレー エージェントの発信インターフェイスへ変更されます。DHCP サーバはこのゲートウェイ アドレスを使用して、応答パケットをリレー エージェントに送り返します。
サーバ識別子オーバーライド サブオプション値は、通常のサーバ ID アドレスの代わりに DHCP サーバからの応答パケット内にコピーされます。サーバ識別子オーバーライド サブオプションには着信インターフェイスの IP アドレスが含まれています。クライアントからアクセス可能なリレー エージェント上の IP アドレスです。この情報を使用して、DHCP クライアントは renew および release パケットをすべてリレー エージェントへ送ります。リレー エージェントは VPN サブオプションをすべて付加した後、renew および release パケットを元の DHCP サーバに転送します。
DHCP リレー エージェント情報オプションにこれらのサブオプションが付加された後、ゲートウェイ アドレスが DHCP サーバ向けのリレー エージェントの発信インターフェイスに変更されます。パケットが DHCP サーバに戻って来ると、リレー エージェントはリレー エージェント情報オプションを削除し、パケットを正しい VPN の DHCP クライアントに転送します。
図 3 は、各クライアントが内部に存在している VPN を DHCP リレー エージェントおよび DHCP サーバから認識可能な VPN シナリオです。DHCP クライアント 1 は VPN green の、DHCP クライアント 2 は VPN red のそれぞれ一部であり、同一のプライベート IP アドレス 192.168.1.0/24 を両方が使用しています。2 つのクライアントが同一の IP アドレスを持っているため、DHCP リレー エージェントと DHCP サーバはリレー エージェント情報オプションの VPN 識別子、サブネット選択、サーバ識別子オーバーライドという各サブオプションを使用して、クライアントの正しい VPN を判別します。
図 3 バーチャル プライベート ネットワーク DHCP コンフィギュレーション
前提条件
MPLS VPN の DHCP リレー サポートを設定する前に、標準の MPLS VPN を設定しておく必要があります。
制約事項
• ip dhcp relay information option vpn グローバル コンフィギュレーション コマンドが設定され、 ip dhcp relay information option vpn-id インターフェイス コンフィギュレーション コマンドが設定されていない場合、すべてのインターフェイスにグローバル コンフィギュレーションが適用されます。
• ip dhcp relay information option vpn グローバル コンフィギュレーション コマンドが設定され、 ip dhcp relay information option vpn-id インターフェイス コンフィギュレーション コマンドも設定されている場合、インターフェイス コンフィギュレーション コマンドがグローバル コンフィギュレーション コマンドより優先されます。ただし、インターフェイス コンフィギュレーションがないインターフェイスにはグローバル コンフィギュレーションが適用されます。
• ip dhcp relay information option vpn グローバル コンフィギュレーション コマンドが設定されておらず、 ip dhcp relay information option vpn-id インターフェイス コンフィギュレーション コマンドは設定されている場合、コンフィギュレーション オプションが適用されているインターフェイスだけが影響を受けます。他のすべてのインターフェイスはコンフィギュレーションの影響を受けません。
手順の概要
1. enable
2. configure terminal
3. ip dhcp relay information option vpn
4. interface type number
5. ip helper-address vrf name [ global ] address
6. ip dhcp relay information option vpn-id [ none ]
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
ip dhcp relay information option vpn
Router(config)# ip dhcp relay information option vpn |
転送された DHCP サーバへの BOOTREQUEST メッセージ内の DHCP リレー エージェント情報オプションに、システムが VPN サブオプションを挿入できるようにし、DHCP サーバへの発信インターフェイスをゲートウェイ アドレスに設定します。 • コマンドが設定されるときには、VPN サブオプションも BOOTP ブロードキャスト パケットに付加されます。 |
ステップ 4 |
interface type number
Router(config)# interface FastEthernet0/0 |
インターフェイスを設定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 5 |
ip helper-address vrf name [ global ] address
Router(config-if)# ip helper-address vrf blue 172.27.180.232 |
インターフェイスで受信した UDP ブロードキャスト(BOOTP を含む)を転送します。 • DHCP サーバが別の VPN または今の VPN とは異なるグローバル空間に存在する場合、 vrf name または global オプションを使用して、VRF の名前または DHCP サーバが存在するグローバル空間を指定できます。 |
ステップ 6 |
ip dhcp relay information option vpn-id [ none ]
Router(config-if)# ip dhcp relay information option vpn-id |
(任意)転送された DHCP サーバへの BOOTREQUEST メッセージ内の DHCP リレー エージェント情報オプションに、システムが VPN サブオプションを挿入できるようにし、DHCP サーバへの発信インターフェイスをゲートウェイ アドレスに設定します。 • コマンドが設定されるときには、VPN サブオプションも BOOTP ブロードキャスト パケットに付加されます。 • ip dhcp relay information option vpn-id none コマンドを使用して、インターフェイス上の VPN 機能をディセーブルにできます。このコマンドを使用する必要がある唯一のケースは、 ip dhcp relay information option vpn グローバル コンフィギュレーション コマンドが設定されている場合に、グローバル コンフィギュレーションより優先させる必要があるときだけです。 • no ip dhcp relay information option vpn-id コマンドは、実行コンフィギュレーションからそのコンフィギュレーションを削除します。この場合、インターフェイスはグローバル コンフィギュレーション(VPN サブオプションを挿入するよう設定されている場合も、されていない場合もある)を継承します。 |
リレー エージェント情報オプションのカプセル化サポートの設定
DHCP リレー エージェント情報オプション(Option 82)のカプセル化のサポートをイネーブルにするには、次の作業を実行します。
Option 82 カプセル化の DHCP リレー サポート
2 つのリレー エージェントが DHCP クライアントと DHCP サーバとの間でメッセージをリレーしているとき、デフォルトでは、2 番めのリレー エージェント(サーバに近いほう)が、当初の Option 82 情報を自身の Option 82 で置き換えます。1 番めのリレー エージェントからのリモート ID および回線 ID 情報は失われます。導入シナリオによっては、2 番めのリレー エージェントからの Option 82 だけでなく、1 番めのリレー エージェントからの初期の Option 82 も保持しておく必要がある場合があります。たとえば、2 番めのリレー エージェントとして動作する Intelligent Service Gateway(ISG; インテリジェント サービス ゲートウェイ)がレイヤ 2 デバイスに接続されているとします。レイヤ 2 デバイスは家庭に接続され、家庭を Option 82 で識別します。
DHCP リレー Option 82 のカプセル化機能を使用すると、自身の Option 82 情報も付加するよう設定してある場合に、2 番めのリレー エージェントは 1 番めのリレー エージェントから受信したメッセージ内の Option 82 情報をカプセル化できます。この設定によって、DHCP サーバは両方のリレー エージェントからの Option 82 情報を使用できます。DHCP サーバは、2 番めのリレー エージェントからの VPN 情報と 1 番めのリレー エージェントからの Option 82 情報とを使用することにより、VRF、Option 60、カプセル化された Option 82 に基づいて、正しいアドレス割り当てや他の設定パラメータをクライアント デバイスに送信できます。DHCP サーバから DHCP クライアントへの応答メッセージは、要求メッセージと同様の経路を通り、2 つのリレー エージェントを介して DHCP クライアントに送られます。
図 4 に、この機能が設定されたときに 2 つのリレー エージェントと DHCP サーバとで発生する処理を示します。
1. DHCP クライアントが DHCP メッセージ(Option 60 を含む)を生成し、ネットワークにブロードキャストします。
2. 1 番めの DHCP リレー エージェントがブロードキャスト DHCP 要求パケットをインターセプトし、自身の Option 82 をパケットに挿入します。
3. リレー エージェントは自動的に回線 ID サブオプションとリモート ID サブオプションとを Option 82 に付加し、2 番めのリレー エージェントへ転送します。
4. 2 番めのリレー エージェントは、1 番めのリレー エージェントの Option 82 をカプセル化して自身の Option 82 へ挿入します。
5. ゲートウェイ IP アドレス(giaddr)は 2 番めのリレー エージェントの着信インターフェイスに設定され、1 番めのリレー エージェントからの giaddr はカプセル化されます。
6. 2 番めの DHCP リレー エージェントは DHCP パケットを DHCP サーバにユニキャストします。
7. DHCP サーバはパケットを受信し、2 番めのリレーからの VPN サブオプションと 1 番めのリレー エージェントからの Option 82 情報とを使用して IP アドレスや他の設定パラメータを割り当て、パケットを 2 番めのリレー エージェントへと再度転送します。
8. 2 番めのリレー エージェントは、サーバからの応答メッセージを受信すると、1 番めのリレー エージェントからのカプセル化された Option 82 と元の giaddr とを回復します。それから、応答メッセージは元の giaddr に送られます。
9. Option 82 は、クライアントへの転送前に 1 番めのリレー エージェントによってパケットから取り除かれます。
図 4 DHCP リレー エージェント情報オプションのカプセル化サポートの処理
手順の概要
1. enable
2. configure terminal
3. ip dhcp relay information option
4. ip dhcp relay information option vpn
5. ip dhcp relay information policy encapsulate
6. interface type number
7. ip dhcp relay information option policy-action encapsulate
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
ip dhcp relay information option
Router(config)# ip dhcp relay information option |
DHCP サーバへの転送された BOOTREQUEST メッセージに、システムが DHCP リレー エージェント情報オプション(Option 82 フィールド)を挿入できるようにします。 • この機能は、デフォルトではディセーブルです。 |
ステップ 4 |
ip dhcp relay information option vpn
Router(config)# ip dhcp relay information option vpn |
(任意)転送された DHCP サーバへの BOOTREQUEST メッセージ内の DHCP リレー エージェント情報オプションに、システムが VPN サブオプションを挿入できるようにし、DHCP サーバへの発信インターフェイスをゲートウェイ アドレスに設定します。 • コマンドが設定されるときには、VPN サブオプションも BOOTP ブロードキャスト パケットに付加されます。 |
ステップ 5 |
ip dhcp relay information policy encapsulate
Router(config)# ip dhcp relay information policy encapsulate |
DHCP サーバに転送された BOOTREQUEST メッセージ内にある、前のリレー エージェントから受信した DHCP リレー エージェント情報オプション(Option 82 フィールド)のカプセル化をイネーブルにします。 • 2 つのリレー エージェントからの Option 82 情報は、両方とも DHCP サーバに転送されることになります。 |
ステップ 6 |
interface type number
Router(config)# interface FastEthernet0/0 |
(任意)インターフェイスを設定し、インターフェイス コンフィギュレーション モードを開始します。 • グローバル コンフィギュレーション コマンドを設定する場合、特定のインターフェイスに異なるコンフィギュレーションを適用するのでない限り、インターフェイス コンフィギュレーション コマンドを設定する必要はありません。 |
ステップ 7 |
ip dhcp relay information policy-action encapsulate
Router(config-if)# ip dhcp relay information policy-action encapsulate |
(任意)インターフェイス上の DHCP サーバに転送された BOOTREQUEST メッセージ内にある、インターフェイス上で前のリレー エージェントから受信した DHCP リレー エージェント情報オプション(Option 82 フィールド)のカプセル化をイネーブルにします。 • この機能は、デフォルトではディセーブルです。このコマンドは、すべてのグローバル コンフィギュレーションより優先されます。ただし、リレー エージェント情報オプションカプセル化のサポートがグローバル コンフィギュレーション モードで設定され、インターフェイス コンフィギュレーション モードでは設定されない場合、インターフェイスはグローバル コンフィギュレーションを継承します。 |
スマート リレー エージェント転送を使用したセカンダリ アドレスへの DHCP ブロードキャストのゲートウェイ アドレス設定
スマート リレー エージェント転送を設定するには、次の作業を実行します。
設定が必要なのは、DHCP サーバに転送する UDP ブロードキャストを受信しているインターフェイス上のヘルパー アドレスだけです。また、 ip dhcp smart-relay コマンドが設定されている必要があるのは、そのインターフェイス上にセカンダリ アドレスがあり、DHCP 要求の転送時に各 IP ネットワークを通らせるようルータを設定する場合だけです。スマート リレー エージェントを設定していない場合、要求はすべてインターフェイスのプライマリ IP アドレスを使用して転送されます。
ip dhcp smart-relay コマンドが設定されると、DHCP サーバからの DHCPOFFER メッセージがない場合に、リレー エージェントはクライアントが DHCP サーバへの要求送信を再試行する回数を数えます。3 回の再試行の後、リレー エージェントはセカンダリ アドレスをゲートウェイ アドレスとして設定します。さらに 3 回再試行しても DHCP サーバが応答しない場合、ゲートウェイ アドレスとして、次のセカンダリ アドレスが使用されます。
この機能は、セカンダリ プールを使用するよう DHCP サーバを設定できない場合に役立ちます。
手順の概要
1. enable
2. configure terminal
3. ip dhcp smart-relay
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
ip dhcp smart-relay
Router(config)# ip dhcp smart-relay |
DHCP サーバからの DHCPOFFER メッセージがない場合に、DHCP リレー エージェントがゲートウェイ アドレス(DHCP パケットの giaddr フィールド)をセカンダリ アドレスへスイッチできるようにします。 |
プライベートおよび標準のサブオプション番号のサポート設定
標準化されていない一部の機能では、プライベートな Cisco リレー エージェント サブオプション番号が使用されます。機能が標準化されると、リレー エージェント サブオプションには Internet Assigned Numbers Authority(IANA; インターネット割り当て番号局)の番号が割り当てられます。Cisco IOS は、サブオプション番号としてプライベート番号と IANA 番号の両方をサポートしています。
プライベートまたは IANA 標準のリレー エージェント サブオプション番号を使用するよう DHCP クライアントを設定するには、次の作業を実行します。
手順の概要
1. enable
2. configure terminal
3. ip dhcp compatibility suboption link-selection { cisco | standard }
4. exit
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
configure terminal
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
ip dhcp compatibility suboption link-selection { cisco | standard }
Router(config)# ip dhcp compatibility suboption link-selection standard |
プライベートまたは IANA 標準のリレー エージェント サブオプション番号を使用するよう、DHCP クライアントを設定します。 |
ステップ 4 |
exit
Router(config)# exit |
(任意)グローバル コンフィギュレーション モードを終了します。 |
DHCP リレー エージェントのトラブルシューティング
DHCP リレー エージェントのトラブル シューティングを行うには、次の作業を実行します。
DHCP リレー エージェントでアンナンバード インターフェイスからクライアントへルートを追加している場合、 show ip route dhcp コマンドが問題点を明らかにするために役立ちます。DHCP サーバとリレー エージェントによってルーティング テーブルに追加されたルートすべてが表示されます。
手順の概要
1. enable
2. show ip route dhcp
3. show ip route dhcp ip-address
4. show ip route vrf vrf-name dhcp
5. clear ip route [ vrf vrf-name ] dhcp [ ip-address ]
手順の詳細
|
|
|
ステップ 1 |
enable
Router> enable |
特権 EXEC モードをイネーブルにします。 • プロンプトが表示されたら、パスワードを入力します。 |
ステップ 2 |
show ip route dhcp
Router# show ip route dhcp |
Cisco IOS DHCP サーバおよびリレー エージェントによって追加されたルートをすべて表示します。 |
ステップ 3 |
show ip route dhcp ip-address
Router# show ip route dhcp 172.16.1.3 |
IP アドレスに関連付けられた Cisco IOS DHCP サーバとリレー エージェントによって追加されたルートをすべて表示します。 |
ステップ 4 |
show ip route vrf vrf-name dhcp
Router# show ip route vrf vrf1 dhcp |
名前付き VRF に関連付けられた Cisco IOS DHCP サーバとリレー エージェントによって追加されたルートをすべて表示します。 |
ステップ 5 |
clear ip route [ vrf vrf-name ] dhcp [ ip-address ]
Router# clear ip route dhcp |
アンナンバード インターフェイス上の DHCP クライアントに対して DHCP サーバやリレー エージェントによって追加されたルートをルーティング テーブルから削除します。 |