Catalyst 2950/2955 スイッチ ソフトウェア コンフィギュレーション ガイド Cisco IOS Release 12.1(22)EA5
DHCP機能の設定
DHCP機能の設定
発行日;2012/02/04 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 8MB) | フィードバック

目次

DHCP機能の設定

DHCP機能の概要

DHCPサーバ

DHCPリレー エージェント

DHCPスヌーピング

オプション82のデータ書き込み

DHCP機能の設定

DHCPのデフォルト設定

DHCPスヌーピング設定時の注意事項

DHCPサーバの設定

DHCPスヌーピングおよびオプション82のイネーブル化

DHCP情報の表示

DHCP機能の設定

この章では、Catalyst 2950またはCatalyst 2955スイッチ上でのDynamic Host Configuration Protocol(DHCP)スヌーピングおよびオプション82データの書き込み機能を設定する方法について説明します。


) この章で使用するコマンドの構文および使用方法の詳細については、このリリースに対応するスイッチ コマンド リファレンスおよび『Cisco IOS IP and IP Routing Command Reference』Release 12.1の「IP Addressing and Services」を参照してください。


この章の内容は、次のとおりです。

「DHCP機能の概要」

「DHCP機能の設定」

「DHCP情報の表示」

DHCP機能の概要

DHCPは1つのサーバからホストのIPアドレスをダイナミックに割り当てる機能で、LAN環境で幅広く使用されています。この機能を使用すると、IPアドレス管理のオーバーヘッドを大幅に減少できます。また、DHCPではIPアドレスをホストに永続的に割り当てる必要がなく、ネットワークに接続されたホストにだけIPアドレスを使用するため、限られたIPアドレス空間を節約するのにも役立ちます。

スイッチは次のDSCP機能をサポートします。

「DHCPサーバ」

「DHCPリレー エージェント」

「DHCPスヌーピング」

「オプション82のデータ書き込み」

DCHPクライアントの詳細については、『 Cisco IOS IP and IP Routing Configuration Guide』Release 12.1 の「 IP Addressing and Services 」を参照してください。

DHCPサーバ

DHCPサーバは、スイッチまたはルータの指定のアドレス プールからDHCPクライアントにIPアドレスを割り当て、管理します。DHCPサーバが要求されたコンフィギュレーション パラメータをデータベースから取得してDHCPクライアントに渡すことができない場合、ネットワーク管理者が定義した1台または複数台のセカンダリDHCPサーバにその要求が転送されます。


) DHCPサーバ機能はCatalyst 2955スイッチでのみ使用できます。


DHCPリレー エージェント

DHCPリレー エージェントはレイヤ3の装置で、DHCPパケットをサーバとクライアントの間で転送します。リレー エージェントは、クライアントとサーバが同じ物理サブネット上にない場合、クライアントとサーバの間で要求と応答を転送します。通常のレイヤ2転送ではIPデータグラムがネットワーク間でトランスペアレントにスイッチングされますが、リレー エージェントの転送方法は、これとは異なります。リレー エージェントはDHCPメッセージを受信し、出力インターフェイスで送信するための新しいDHCPメッセージを生成します。

DHCPスヌーピング

DHCPスヌーピングは、信頼できないDHCPメッセージをフィルタリングし、DHCPスヌーピング バインディング データベース(DHCPスヌーピング バインディング テーブルとも呼ぶ)を構築および維持することでネットワーク セキュリティを確保するDHCPのセキュリティ機能です。

DHCPスヌーピングは、信頼できないホストとDHCPサーバ間でファイアウォールのように機能します。また、DHCPスヌーピングはエンドユーザに接続する信頼できないインターフェイスと、DHCPサーバまたは別のスイッチに接続する信頼できるインターフェイスとの識別を可能にします。


) DHCPスヌーピングが正しく機能するようにするには、すべてのDHCPサーバを、信頼できるインターフェイスを介してスイッチに接続する必要があります。


信頼できないメッセージとは、ネットワークまたはファイアウォール外部から受信したメッセージです。サービス プロバイダー環境でDHCPスヌーピングを使用すると、カスタマーのスイッチなど、サービス プロバイダーのネットワーク外にある装置から信頼できないメッセージを受信します。不明な装置から受信するメッセージは、トラフィック攻撃の原因になることがあるため、信頼できません。

DHCPスヌーピング バインディング データベースには、MAC(メディア アクセス制御)アドレス、IPアドレス、リース時間、バインディング タイプ、VLAN番号、およびスイッチの信頼性の低いローカル インターフェイスに対応するインターフェイス情報が格納されています。信頼できるインターフェイスと相互接続されているホストに関する情報は格納されません。

サービス プロバイダーのネットワークでは、信頼できるインターフェイスが同じネットワーク内の装置のポートに接続されます。信頼性の低いインターフェイスは、ネットワーク内の信頼性の低いインターフェイスか、またはネットワークに接続されていない装置のインターフェイスに接続されます。

スイッチは、信頼性の低いインターフェイス、およびDHCPスヌーピングがイネーブルになっているVLANに属するインターフェイスでパケットを受信すると、送信元MACアドレスとDHCPクライアントのハードウェア アドレスを比較します。アドレスが一致した場合(デフォルト)、スイッチはパケットを転送します。アドレスが一致しなかった場合、スイッチはパケットを廃棄します。

次のいずれかの状況が発生すると、スイッチはDHCPパケットを廃棄します。

DHCPサーバのパケット、つまりDHCPOFFER、DHCPACK、DHCPNAK、DHCPLEASEQUERYなどを、ネットワークやファイアウォールの外部から受信した場合

信頼性の低いインターフェイスでパケットを受信し、送信元MACアドレスとDHCPクライアントのハードウェア アドレスが一致しない場合

DHCPスヌーピング バインディング テーブルにMACアドレスが記載されたDHCPRELEASEまたはDHCPDECLINEブロードキャスト メッセージをスイッチが受信したが、バインディング テーブルのインターフェイス情報がメッセージを受信したインターフェイスと一致しない場合

DHCPリレー エージェントが、リレー エージェントIPアドレスが0.0.0.0以外のDHCPパケットを転送した、あるいはリレー エージェントがオプション82の情報を含むパケットを信頼性の低いポートに転送した場合

スイッチがDHCPスヌーピングをサポートする集約スイッチで、DHCPオプション82情報を挿入するエッジ スイッチに接続されている場合、信頼性の低いインターフェイスでパケットが受信されると、スイッチはオプション82情報を含むパケットを廃棄します。DHCPスヌーピングがイネーブルで、パケットが信頼できるポートで受信された場合、集約スイッチは接続装置のDHCPスヌーピング バインディングを学習しないため、DHCPスヌーピング バインディングのデータベースを完全に構築することはできません。

Cisco IOS Release 12.1(22)EA3より前のソフトウェア リリースで、エッジ スイッチによりオプション82情報が挿入されると、DHCPスヌーピング バインディングのデータベースは正しく入力されないため、集約スイッチ上でDHCPスヌーピングを設定できません。また、スタティック バインディングまたはAddress Resolution Protocol(ARP;アドレス解決プロトコル)のAccess Control List(ACL;アクセス制御リスト)を使用しないかぎり、IP送信元ガードおよびダイナミックARPも設定できません。

Cisco IOS Release 12.1(22)EA3で、集約スイッチが信頼性の低いインターフェイスを介してエッジ スイッチと接続でき、 ip dhcp snooping information option allow-untrusted グローバル コンフィギュレーション コマンドを入力した場合、集約スイッチはエッジ スイッチからのオプション82情報を含むパケットを受け入れます。集約スイッチは、信頼性の低いスイッチのインターフェイスを介して接続されたホストのバインディングを学習します。スイッチが、ホストに接続された信頼性の低い入力インターフェイス上でオプション82を含むパケットを受信しても、DHCPのセキュリティ機能(ダイナミックARPまたはIP送信元ガードなど)は、集約スイッチ上でイネーブルにできます。集約スイッチと接続するエッジ スイッチ上のポートは、信頼できるインターフェイスとして設定される必要があります。

オプション82のデータ書き込み

住地域のあるメトロポリタン イーサネット アクセス環境で、DHCPは多数の加入者のIPアドレス割り当てを一元的に管理できます。スイッチ上でDHCPオプション82の機能をイネーブルにすると、加入者の装置は、MACアドレスに加えて、ネットワークに接続するスイッチ ポートによって識別されます。加入者LAN上の複数のホストをアクセス スイッチの同一ポートに接続でき、各ホストは一意に識別されます。


) DHCPのオプション82機能は、DHCPスヌーピングがグローバルにイネーブルになっている場合のみ、この機能を使用する加入者の装置が割り当てられているVLANでサポートされます。また、DHCPがディセーブルの場合、スイッチはDHCPのオプション82機能もサポートします。


図19-1は、メトロポリタン イーサネット ネットワークの構成例です。この例では、DHCPサーバがアクセス レイヤのスイッチに接続した加入者にIPアドレスを一元的に割り当てます。DHCPクライアントとそれに対応するDHCPサーバが同一IPネットワークまたはサブネット上にないので、ヘルパー アドレスを使用してDHCPリレー エージェント(Catalystスイッチ)を設定し、ブロードキャスト転送をイネーブルにしてDHCPメッセージをクライアントとサーバ間で伝送します。

図19-1 メトロポリタン イーサネット ネットワークのDHCPリレー エージェント

 

スイッチ上でDHCPスヌーピング情報のオプション82をイネーブルにすると、次のようなイベント シーケンスが発生します。

ホスト(DHCPクライアント)がDHCP要求を生成し、ネットワーク上でブロードキャストします。

スイッチがDHCP要求を受信すると、スイッチはオプション82の情報をパケットに追記します。オプション82の情報には、スイッチのMACアドレス(リモートIDサブオプション)およびパケットを受信したポートID( vlan-mod-port )(回線IDサブオプション)が含まれます。

リレー エージェントのIPアドレスが設定されている場合、スイッチはDHCPパケットにIPアドレスを付加します。

スイッチがオプション82フィールドを含むDHCP要求をDHCPサーバに転送します。

DHCPサーバがパケットを受信します。DHCPサーバがオプション82に対応している場合、リモートID、回線ID、またはその両方を使用してIPアドレスを割り当て、ポリシー(1つのリモートIDまたは回線IDに割り当て可能なIPアドレス数の制限など)を実施します。そのあと、DHCPサーバはDHCP応答でオプション82フィールドをそのまま返します。

スイッチによって要求がサーバに中継された場合、DHCPサーバはスイッチに応答をユニキャストします。クライアントとサーバが同一サブネット上にある場合、サーバは応答をブロードキャストします。スイッチは、リモートIDフィールドと可能な場合は回線IDフィールドを調べて、最初に書き込まれたオプション82が含まれていることを確認します。スイッチはオプション82フィールドを削除して、DHCP要求を送信したDHCPクライアントが接続されているスイッチ ポートにパケットを転送します。

前述のイベントが発生した場合、図19-2に示す次のフィールドの値は変わりません。

回線IDサブオプション フィールド

サブオプション タイプ

サブオプション タイプの長さ

回線IDタイプ

回線IDタイプの長さ

リモートIDサブオプション フィールド

サブオプション タイプ

サブオプション タイプの長さ

リモートIDタイプ

リモートIDタイプの長さ

回線IDサブオプションのポート フィールドにあるポート番号は0から始まります。たとえば、Catalyst 2950G-24-EIスイッチでは、ポート0はファスト イーサネット ポート0/1、ポート1はファスト イーサネット ポート0/2、ポート2はファスト イーサネット ポート0/3となります。ポート24はGBIC(ギガビット インターフェイス コンバータ)ベースのギガビット モジュール スロット0/1、およびポート25はGBICベースのギガビット モジュール スロット0/2となります。

図19-2に、リモートIDサブオプションと回線IDサブオプションのパケット フォーマットを示します。スイッチは、DHCPスヌーピングがグローバルにイネーブルになっていて、 ip dhcp snooping information option グローバル コンフィギュレーション コマンドが入力された場合、このパケット フォーマットを使用します。回線IDサブオプションの場合、モジュール フィールドは常にゼロとなります。

図19-2 サブオプション パケット フォーマット

 

DHCP機能の設定

ここでは、スイッチでDHCPスヌーピングおよびオプション82を設定する手順について説明します。

「DHCPのデフォルト設定」

「DHCPスヌーピング設定時の注意事項」

「DHCPサーバの設定」

「DHCPスヌーピングおよびオプション82のイネーブル化」

DHCPのデフォルト設定

表19-1 に、DHCPのデフォルト設定を示します。

 

表19-1 DHCPのデフォルト設定

機能
デフォルト値

DHCPサーバ

IOSソフトウェアでイネーブルで、設定が必要1

DHCPリレー エージェント

イネーブル2

DHCPパケット転送アドレス

設定なし

リレー エージェント情報のチェック

イネーブル(無効なメッセージを廃棄)2

DHCPリレー エージェント転送ポリシー

既存のリレー エージェント情報の置換2

DHCPスヌーピング(グローバルにイネーブル)

ディセーブル

DHCPスヌーピング情報オプション

イネーブル

信頼性の低い入力インターフェイス上でパケットを受け入れるDHCPスヌーピング オプション3

ディセーブル

DHCPスヌーピングの制限レート

設定なし

DHCPスヌーピングの信頼性

untrusted(信頼できない)

DHCPスヌーピングのVLAN

ディセーブル

DHCPスヌーピングのMACアドレス検証

イネーブル

1.スイッチは、DHCPサーバとして設定されている場合のみ、DHCP要求への応答を行います。

2.スイッチは、DHCPサーバのIPアドレスがDHCPクライアントのSVIに設定されている場合のみ、DHCPパケットをリレーします。

3.この機能は、スイッチがエッジ スイッチからのオプション82情報を含むパケットを受信する集約スイッチである場合に使用します。

DHCPスヌーピング設定時の注意事項

DHCPスヌーピング設定時の注意事項は次のとおりです。

スイッチ上でDHCPをグローバルにイネーブルに設定する必要があります。

VLAN上でDHCPスヌーピングをイネーブルにするまで、DHCPスヌーピングはアクティブになりません。

スイッチでDHCPスヌーピングをグローバルにイネーブルにする前に、DHCPサーバおよびDHCPリレー エージェントとして動作している装置が設定され、イネーブルになっていることを確認してください。

スイッチ上でDHCPスヌーピング情報オプションを設定する前に、必ずDHCPサーバとして動作する装置を設定する必要があります。たとえば、DHCPサーバが割り当てまたは除外するIPアドレスの指定や、装置のDHCPオプションの設定が必要です。

DHCPリレー エージェントがイネーブルになっていてもDHCPスヌーピングがディセーブルになっている場合、DHCPオプション82データ挿入機能はサポートされません。

スイッチ ポートがDHCPサーバに接続されている場合、 ip dhcp snooping trust インターフェイス コンフィギュレーション コマンドを入力してポートを信頼できるポートとして設定してください。

スイッチ ポートがDHCPクライアントに接続されている場合、 no ip dhcp snooping trust インターフェイス コンフィギュレーション コマンドを入力してポートを信頼性の低いポートとして設定してください。

信頼できない装置が接続された集約スイッチ上では、 ip dhcp snooping information option allow-untrusted コマンドを入力しないでください。このコマンドを入力した場合、信頼性の低い装置はオプション82情報をスプーフィングします。

DHCPサーバの設定

Catalyst 2955スイッチは、DHCPサーバとして機能させることができます。デフォルトでは、Cisco IOSのDHCPサーバおよびリレー エージェント機能はスイッチ上でイネーブルですが、設定はされていません。これらの機能は利用できません。

スイッチをDCHPサーバとして設定する手順については、『 Cisco IOS IP and IP Routing Configuration Guide』Release 12.1 の「IP Addressing and Services」の「Configuring DHCP」を参照してください。

DHCPスヌーピングおよびオプション82のイネーブル化

スイッチ上でDHCPスヌーピングをイネーブルにするには、イネーブルEXECモードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

ip dhcp snooping

DHCPをグローバルでイネーブルにします。

ステップ 3

ip dhcp snooping vlan vlan-range

特定のVLANまたは特定の範囲のVLAN上でDHCPスヌーピングをイネーブルにします。指定できる範囲は1~4094です。

VLAN ID番号で識別される単一のVLAN ID、カンマで区切った一連のVLAN ID、ハイフンで区切ったVLAN IDの範囲、またはVLAN IDの開始点と終了点をスペースで区切ったVLAN IDの範囲を入力できます。

ステップ 4

ip dhcp snooping information option

スイッチがDHCPリレー情報(オプション82フィールド)を、DHCPサーバに転送されるDHCP要求メッセージに対して書き込みおよび削除できるようにします。

デフォルトはイネーブルです。

ステップ 5

ip dhcp snooping information option allow-untrusted

(任意)スイッチがエッジ スイッチに接続された集約スイッチの場合、スイッチがエッジ スイッチからのオプション82情報を含む着信DHCPスヌーピング パケットを受け入れるようにします。

デフォルトはディセーブルです。


) このコマンドは、信頼できる装置が接続された集約スイッチ上でのみ入力してください。


ステップ 6

interface interface-id

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

ステップ 7

ip dhcp snooping trust

(任意)インターフェイスをtrusted(信頼できる)またはuntrusted(信頼できない)に設定します。信頼できないクライアントからのメッセージを受信するようにインターフェイスを設定するには、 no キーワードを使用します。デフォルトはuntrusted(信頼できない)です。

ステップ 8

ip dhcp snooping limit rate rate

(任意)インターフェイスが受信できる秒単位のDHCPパケット数を設定します。指定できる範囲は1~4294967294です。デフォルトは無制限です。


) 信頼性の低いインターフェイスのレート制限を、毎秒100パケット以下にすることを推奨します。信頼性の高いインターフェイスのレート制限を設定する際、ポートを、DHCPスヌーピングがイネーブルになった複数のVLANに割り当てられたトランク ポートとする場合、レート制限を大きめの値にする必要がある場合もあります。


ステップ 9

exit

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

ステップ 10

ip dhcp snooping verify mac-address

(任意)スイッチが、信頼性の低いポート上で受信されたDHCPパケットの送信元MACアドレスがパケットのクライアント ハードウェア アドレスに一致することを確認するよう設定します。デフォルトでは、送信元MACアドレスがパケットのクライアント ハードウェア アドレスに一致することを確認します。

ステップ 11

end

イネーブルEXECモードに戻ります。

ステップ 12

show running-config

設定を確認します。

ステップ 13

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

DHCPスヌーピングをディセーブルにするには、 no ip dhcp snooping グローバル コンフィギュレーション コマンドを使用します。特定のVLANまたは特定の範囲のVLAN上でDHCPスヌーピングをディセーブルにするには、 no ip dhcp snooping vlan vlan-id グローバル コンフィギュレーション コマンドを使用します。オプション82の書き込みおよび削除をディセーブルにするには、 no ip dhcp snooping information option グローバル コンフィギュレーション コマンドを使用します。集約スイッチが、エッジ スイッチからのオプション82情報を持つ着信DHCPスヌーピング パケットを廃棄するよう設定するには、 no ip dhcp snooping information option allow-untrusted グローバル コンフィギュレーション コマンドを使用します。

次に、DHCPスヌーピングをグローバルおよびVLAN 10でイネーブルにし、ファスト イーサネット ポート0/1上でレート制限を100パケット/秒に設定する例を示します。

Switch(config)# ip dhcp snooping
Switch(config)# ip dhcp snooping vlan 10
Switch(config)# ip dhcp snooping information option
Switch(config)# interface fastethernet0/1
Switch(config-if)# ip dhcp snooping limit rate 100

DHCP情報の表示

DHCPスヌーピング情報を表示するには、 表19-2 のイネーブルEXECコマンドを1つまたは複数使用します。

 

表19-2 DHCP情報を表示するためのコマンド

コマンド
目的

show ip dhcp snooping

スイッチのDHCPスヌーピング設定を表示します。

show ip dhcp snooping binding

DHCPスヌーピング バインディング データベースでダイナミックに設定されたバインディングのみを表示します。4

4.DHCPスヌーピングがイネーブルの状態でインターフェイスがダウン ステートに変わった場合、スイッチは手動で設定したバインディングを削除しません。