DHCPスヌーピング(非ELS)について
このトピックでは、ELS(拡張レイヤー 2 ソフトウェア)をサポートしない Junos EX シリーズ スイッチで DHCP(Dynamic Host Configuration Protocol)スヌーピングを有効にする方法について説明します。ご使用のスイッチが、ELSをサポートするJunosのバージョンを実行している場合、 DHCPスヌーピング(ELS)についてを参照してください。ELSの詳細については、「 拡張レイヤー2ソフトウェアCLIの使用」を参照してください。
DHCP スヌーピングにより、スイッチング デバイス(スイッチまたはルータ)は、スイッチング デバイスに接続された信頼できないデバイスから受信した DHCP メッセージを監視できます。VLAN で DHCP スヌーピングが有効になっている場合、システムは VLAN に関連付けられた信頼できないホストから送信された DHCP メッセージを調べ、その IP アドレスとリース情報を抽出します。この情報は、DHCP スヌーピング データベースの構築と保守に使用されます。このデータベースを使用して検証できるホストのみがネットワークへのアクセスを許可されます。
DHCP スヌーピングの基本
動的ホスト構成プロトコル(DHCP)は、IPアドレスを動的に割り当て、アドレスをデバイスに リース して、不要になったときにアドレスを再利用できるようにします。DHCP 経由で取得した IP アドレスを必要とするホストおよびエンド デバイスは、LAN 経由で DHCP サーバーと通信する必要があります。
DHCPスヌーピングは、信頼できるDHCPサーバによってダウンストリームネットワークデバイスに割り当てられた有効なIPアドレスを追跡することにより、ネットワークセキュリティのガーディアンとして機能します(サーバは信頼できるネットワークポートに接続されています)。
デフォルトでは、スイッチ上のすべてのトランク ポートは信頼され、すべてのアクセス ポートは DHCP スヌーピングに対して信頼されません。
DHCP スヌーピングがイネーブルの場合、スイッチング デバイスからのリース情報を使用して、バインディング テーブルとも呼ばれる DHCP スヌーピング テーブルが作成されます。表には、IP-MACバインディングのほか、各ホストのIPアドレスのリース時間、バインディングのタイプ、VLAN名、インターフェイスが表示されます。
DHCP スヌーピングは、スイッチング デバイスのデフォルト設定ではディセーブルになっています。[edit ethernet-switching-options secure-access-port]
階層レベルで examine-dhcp
を設定して、DHCP スヌーピングを明示的に有効にする必要があります。
DHCP スヌーピング データベースのエントリは、次のイベントで更新されます。
DHCP クライアントが IP アドレスを解放したとき(DHCPRELEASE メッセージを送信したとき)。この場合、関連付けられたマッピング エントリがデータベースから削除されます。
VLAN 間でネットワーク デバイスを移動する場合。この場合、通常、デバイスは新しい IP アドレスを取得する必要があります。そのため、VLAN ID を含むデータベース内のエントリが更新されます。
DHCPサーバーによって割り当てられたリース時間(タイムアウト値)が満了したとき。この場合、関連付けられたエントリがデータベースから削除されます。
デフォルトでは、スイッチング デバイスが再起動され、DHCP クライアント(ネットワーク デバイスまたはホスト)がバインディングを再取得する必要があるため、IP-MAC バインディングは失われます。ただし、データベース ファイルをローカルまたはリモートに格納するように dhcp-snooping-file
ステートメントを設定することで、永続化するようにバインディングを構成できます。
特定のVLANからのDHCPサーバー応答のみをスヌープするようにスイッチングデバイスを設定できます。これにより、DHCP サーバー メッセージのスプーフィングが防止されます。
DHCPスヌーピングは、インターフェイス(ポート)ごとではなく、VLANごとに設定します。DHCP スヌーピングは、スイッチング デバイスではデフォルトで無効になっています。
DHCP スヌーピング プロセス
DHCPスヌーピングの基本的なプロセスは、次の手順で構成されています。
VLANに対してDHCPスヌーピングが有効になっている場合、そのVLAN内のネットワークデバイスから送信されたすべてのDHCPパケットがDHCPスヌーピングの対象となります。最終的な IP-MAC バインディングは、DHCP サーバーが DHCPACK を DHCP クライアントに送信するときに発生します。
ネットワーク デバイスは DHCPDISCOVER パケットを送信して IP アドレスを要求します。
スイッチング デバイスから DHCP サーバーにパケットが転送されます。
サーバーは、アドレスを提供するためにDHCPOFFERパケットを送信します。DHCPOFFER パケットが信頼できるインターフェイスからのものである場合、スイッチング デバイスはパケットを DHCP クライアントに転送します。
ネットワーク デバイスから DHCP リクエスト パケットを送信して、IP アドレスを受信します。スイッチング デバイスによって、IP-MAC プレースホルダ バインディングがデータベースに追加されます。エントリは、サーバーから DHCPACK パケットを受信するまでプレースホルダーと見なされます。それまでは、IPアドレスを他のホストに割り当てることができます。
サーバーは、DHCPACK パケットを送信して IP アドレスを割り当てるか、DHCPNAK パケットを送信してアドレス要求を拒否します。
スイッチング デバイスは、受信したパケットのタイプに応じて DHCP スヌーピング データベースを更新します。
スイッチング デバイスが DHCPACK パケットを受信すると、データベース内の IP-MAC バインディングのリース情報が更新されます。
スイッチング デバイスが DHCPNACK パケットを受信すると、プレースホルダを削除します。
DHCP スヌーピング データベースは、DHCPREQUEST パケットが送信された後にのみ更新されます。
クライアントの IP アドレスの割り当て中に DHCP クライアントと DHCP サーバーが交換するメッセージに関する一般的な情報については、 Junos OS 運用管理ライブラリ を参照してください。
DHCPv6スヌーピング
DHCPv6 スヌーピングは、IPv6 の DHCP スヌーピングに相当します。DHCPv6 スヌーピングのプロセスは DHCP スヌーピングのプロセスと似ていますが、クライアントとサーバ間で交換されるメッセージに異なる名前を使用して IPv6 アドレスを割り当てます。 表 1 に、DHCPv6 メッセージとそれに対応する DHCP メッセージを示します。
送信者 |
DHCPv6 メッセージ |
同等のDHCPメッセージ |
---|---|---|
クライアント |
強請る |
DHCPDISCOVER |
サーバー |
宣伝する |
DHCPオファー |
クライアント |
要求、更新、再バインド |
DHCPREQUEST |
サーバー |
答える |
DHCPACK/DHCPNAK |
クライアント |
解放 |
DHCPRELEASE |
クライアント |
情報請求 |
DHCPインフォーム |
クライアント |
断る |
DHCPDECLINE |
クライアント |
確認する |
何一つ |
サーバー |
再構成 |
DHCPFORCERENEW |
クライアント |
リレーフォー、リレー応答 |
何一つ |
DHCPv6の迅速なコミット
DHCPv6 では、迅速なコミット オプション(DHCPv6 オプション 14)が用意されており、サーバーでサポートされ、クライアントによって設定されると、交換が 4 方向リレーから 2 メッセージ ハンドシェイクに短縮されます。ラピッド コミット オプションの有効化の詳細については、 DHCPv6 ラピッド コミットの設定(MX シリーズ、EX シリーズ)を参照してください。
迅速なコミットプロセスでは、次のようになります。
DHCPv6 クライアントは、アドレス、プレフィックス、およびその他の構成パラメーターの迅速な割り当てを優先するという要求を含む SOLICIT メッセージを送信します。
DHCPv6 サーバーが迅速な割り当てをサポートしている場合、割り当てられた IPv6 アドレスとプレフィックス、およびその他の構成パラメーターを含む REPLY メッセージで応答します。
DHCP サーバー アクセス
スイッチング デバイスから DHCP サーバーへのアクセスは、次の 3 方法で構成できます。
- スイッチング デバイス、DHCP クライアント、DHCP サーバーはすべて同じ VLAN 上にあります。
- スイッチング デバイスがDHCPサーバーとして動作
- リレー エージェントとして動作するスイッチング デバイス
スイッチング デバイス、DHCP クライアント、DHCP サーバーはすべて同じ VLAN 上にあります。
スイッチング デバイス、DHCP クライアント、DHCP サーバーの すべてが同じ VLAN のメンバーである場合、DHCP サーバーは次の 2 つの方法のいずれかでスイッチング デバイスに接続できます。
サーバーは、DHCP クライアント(サーバーに IP アドレスを要求しているホストまたはネットワーク デバイス)に接続されているスイッチング デバイスと同じスイッチング デバイスに直接接続されています。VLAN は、信頼できないアクセス ポートを保護するために DHCP スヌーピングに対してイネーブルになっています。トランク ポートは、デフォルトで信頼できるポートとして設定されています。 図1を参照してください。
サーバは、中間スイッチング デバイス(スイッチング デバイス 2)に接続されています。DHCP クライアントは、トランク ポートを介してスイッチング デバイス 2 に接続されているスイッチング デバイス 1 に接続されています。スイッチング デバイス 2 はトランジット デバイスとして使用されています。VLAN は、信頼できないアクセス ポートを保護するために DHCP スヌーピングに対してイネーブルになっています。トランク ポートは、デフォルトで信頼できるポートとして設定されています。 図 2 に示すように、ge-0/0/11 は信頼できるトランク ポートです。
スイッチング デバイスがDHCPサーバーとして動作
DHCP サーバーとして機能するスイッチング デバイスは、QFX シリーズではサポートされていません。
スイッチング デバイス自体は DHCP サーバーとして設定されます。これは ローカル構成と呼ばれます。 図3を参照してください。
リレー エージェントとして動作するスイッチング デバイス
スイッチング デバイスは、DHCP クライアントまたは DHCP サーバーがレイヤー 3 インターフェイスを介してデバイスに接続している場合、リレー エージェントとして機能します。スイッチング デバイス上のレイヤー 3 インターフェイスは、IRB(統合型ルーティングおよびブリッジング)インターフェイスとも呼ばれる RVI(Routed VLAN Interface)として設定されます。トランク インターフェイスはデフォルトで信頼されています。
次の 2 つのシナリオは、リレー エージェントとして機能するスイッチング デバイスを示しています。
DHCP サーバーとクライアントは異なる VLAN にあります。
スイッチング デバイスはルーターに接続され、ルーターは DHCP サーバーに接続されます。 図4を参照してください。
DHCP スヌーピング データベースへの静的 IP アドレスの追加
特定のスタティック IP アドレスをデータベースに追加したり、DHCP スヌーピングによってアドレスを動的に割り当てることができます。静的 IP アドレスを追加するには、IP アドレス、デバイスの MAC アドレス、デバイスが接続されているインターフェイス、インターフェイスが関連付けられている VLAN を指定します。エントリにリース時間は割り当てられません。静的に設定されたエントリは、期限切れになりません。
無効な IP アドレスを持つ DHCP パケットのスヌーピング
VLAN で DHCP スヌーピングをイネーブルにし、その VLAN 上のデバイスが無効な IP アドレスを要求する DHCP パケットを送信した場合、これらの無効な IP アドレスは、デフォルトのタイムアウトに達したときに削除されるまで DHCP スヌーピング データベースに保存されます。DHCP スヌーピング データベース内のスペースのこの不要な消費を排除するために、スイッチング デバイスは無効な IP アドレスを要求する DCHP パケットをドロップし、これらのパケットのスヌーピングを防止します。無効な IP アドレスは次のとおりです。
0.0.0.0
128.0.x.x
191.255.x.x
192.0.0.x
223.255.255.x
224.x.x.x
240.x.x.x に 255.255.255.255
スヌーピングされたパケットの優先順位付け
スヌーピングされたパケットの優先度設定は、QFX シリーズおよび EX4600 スイッチではサポートされていません。
サービスクラス(CoS)転送クラスとキューを使用して、指定されたVLANのDHCPスヌーピングパケットに優先順位を付けることができます。このタイプの設定では、セキュリティ手順が優先度の高いトラフィックの送信に干渉しないように、そのVLANのDHCPスヌーピングパケットを指定されたエグレスキューに配置します。