Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

ユニキャスト リバース パス フォワーディング VPN の確認

ユニキャスト RPF(スイッチ)について

IPスプーフィング、およびある種のサービス拒否(DoS)攻撃および分散型サービス拒否(DDoS)攻撃から保護するために、ユニキャストリバースパスフォワーディング(RPF)は、パケットが正当なパスから到着していることを検証します。これは、信頼できないイングレスインターフェイスに到着する各パケットの送信元アドレスを確認し、その送信元アドレスの転送テーブルエントリと比較することによって行われます。パケットが有効なパス、つまり、送信者が宛先に到達するために使用するパスからのものである場合、デバイスはパケットを宛先アドレスに転送します。有効なパスからのパケットでない場合、デバイスはそのパケットを廃棄します。IPスプーフィングから保護されていない限り、侵入者がIPパケットを本物のトラフィックとして宛先に渡す効果的な方法になる可能性があります。実際にはパケットは宛先宛てのものではありません。

ユニキャスト RPF は、IPv4 および IPv6 プロトコル ファミリーと、VPN(仮想プライベート ネットワーク)アドレス ファミリーでサポートされています。ユニキャスト RPF は、トンネル送信元として設定されたインターフェイスではサポートされていません。これは、トンネルを出るトランジットパケットのみに影響します。

手記:RPF チェックは、QFXシリーズおよび EXシリーズ スイッチの VXLAN 対応インターフェイスではサポートされていません。

ユニキャスト RPF には、 厳密モードルーズ モードの 2 つのモードがあります。デフォルトは strict モードで、受信インターフェイスがパケットのユニキャスト送信元アドレスへの最適なリターン パスである場合にのみ、スイッチはパケットを転送します。厳密モードは、信頼できないインターフェイス(信頼できないユーザーやプロセスがネットワーク セグメントにパケットを置く可能性がある)や、対称的にルーティングされたインターフェイス( ユニキャスト RPF を有効にする場合を参照)で特に役立ちます。ストリクト ユニキャスト RPF の詳細については、RFC 3704, Ingress Filtering for Multihome Networks at http://www.ietf.org/rfc/rfc3704.txt を参照してください。

選択したカスタマーエッジインターフェイスで厳密モードユニキャストRPFを有効にするには:

[editinterfaces]user@switch# set interface-name unit 0 family inet rpf-check

もう 1 つのモードはルーズ モードで、システムはパケットにルーティングテーブルに対応するプレフィックスを持つ送信元アドレスがあるかどうかを確認しますが、受信インターフェイスがパケットのユニキャスト送信元アドレスへの最適なリターン パスであるかどうかはチェックしません。

ユニキャスト RPF ルーズ モードを有効にするには、次のように入力します。

[editinterfaces]user@switch# set interface-name unit 0 family inet rpf-check mode loose

手記:ジュニパーネットワークスEX3200、EX4200、EX4300イーサネットスイッチでは、任意のインターフェイスでユニキャストRPFが設定されている場合、スイッチはすべてのインターフェイスにユニキャストRPFを グローバルに適用します。詳細については、 EX3200、EX4200、EX4300スイッチでのユニキャストRPF実装の制限を参照してください。

スイッチ向けユニキャスト RPF の概要

ユニキャスト RPF は、アドレスをスプーフィングしている可能性のある IP パケットの転送を減らすイングレス フィルターとして機能します。デフォルトでは、ユニキャスト RPF はスイッチ インターフェイスで無効になっています。スイッチは、ユニキャスト送信元アドレスに戻る最適なリターンパスを決定するアクティブパス方式のみをサポートしています。アクティブ パス方式は、転送テーブルで最適なリバース パス エントリーを検索します。最適なリターンパスを決定する際に、ルーティングプロトコル固有の方法を使用して指定された代替ルートは考慮されません。

転送テーブルに、パケットをユニキャスト送信元に転送する際に使用するインターフェイスとして、受信側インターフェイスがリストされている場合、それが最適なリターンパスインターフェイスです。

ユニキャスト RPF の実装

ユニキャスト RPF パケット フィルタリング

スイッチでユニキャスト RPF を有効にすると、スイッチは次のようにトラフィックを処理します。

  • スイッチは、そのパケットのユニキャスト送信元アドレスへの最適なリターン パスであるパケットをインターフェイスで受信した場合、そのパケットを転送します。

  • スイッチからパケットのユニキャスト送信元アドレスへの最適なリターンパスが受信インターフェイスでない場合、スイッチはパケットを廃棄します。

  • スイッチは、転送テーブルにルーティング エントリーがない送信元 IP アドレスを持つパケットを受信すると、そのパケットを廃棄します。

ブートストラッププロトコル(BOOTP)とDHCPリクエスト

ブートストラップ プロトコル(BOOTP)と DHCP 要求パケットはブロードキャスト MAC アドレスを使用して送信されるため、スイッチはそれらに対してユニキャスト RPF チェックを実行しません。スイッチは、ユニキャスト RPF チェックを実行せずに、すべての BOOTP パケットと DHCP リクエスト パケットを転送します。

デフォルト ルート処理

送信元への最適なリターン パスがデフォルト ルート(0.0.0.0)であり、デフォルト ルートが reject を指している場合、スイッチはパケットを廃棄します。デフォルト ルートが有効なネットワーク インターフェイスを指している場合、スイッチはパケットに対して通常のユニキャスト RPF チェックを実行します。

手記:

EX4300 では、スイッチがユニキャスト RPF ストリクト モードで設定されている場合、デフォルト ルートは使用されません。

ユニキャスト RPF を有効にするタイミング

ネットワーク インターフェイスに到着するトラフィックが、そのインターフェイスが到達できるネットワーク上にある送信元から来るようにする場合は、ユニキャスト RPF を有効にします。信頼できないインターフェイスでユニキャスト RPF を有効にして、スプーフィングされたパケットをフィルタリングできます。たとえば、ユニキャスト RPF の一般的な用途は、インターネットからの DoS/DDoS 攻撃からエンタープライズ ネットワークを保護することです。

対称的にルーティングされたインターフェイスでのみユニキャスト RPF を有効にし、トラフィック ソースにできるだけ近い場所で、偽装されたトラフィックが増殖したり、ユニキャスト RPF が有効になっていないインターフェイスに到達したりする前に阻止します。EX3200、EX4200、EX4300 の各スイッチでは、ユニキャスト RPF がグローバルに有効化されているため、図 1 に示すように、これらのスイッチでユニキャスト RPF を有効にする前に、すべてのインターフェイスが対称的にルーティングされていることを確認してください。非対称ルーティングされたインターフェイスでユニキャスト RPF を有効にすると、正当な送信元からのパケットがフィルタリングされます。対称的にルーティングされたインターフェイスは、送信元と宛先の間で両方向に同じルートを使用します。

ユニキャストRPFは、EX3200、EX4200、およびEX4300スイッチでグローバルに有効になっています。これらのデバイスでは、これらのスイッチでユニキャストRPFを有効にする前に、 すべての インターフェイスが対称的にルーティングされていることを確認してください。非対称ルーティングされたインターフェイスでユニキャスト RPF を有効にすると、正当な送信元からのパケットがフィルタリングされます。

図 1:対称的にルーティングされたインターフェイス Symmetrically Routed Interfaces

以下のスイッチ インターフェイスは、対称的にルーティングされる可能性が最も高いため、ユニキャスト RPF 有効化の候補となります。

  • 顧客へのサービスプロバイダエッジ

  • サービスプロバイダへの顧客エッジ

  • ネットワーク外の単一のアクセスポイント(通常はネットワーク境界上)

  • リンクが 1 つしかない端末ネットワーク

EX3200、EX4200、EX4300 の各スイッチでは、すべてのインターフェイスまたは 1 つのインターフェイスのみでユニキャスト RPF を明示的に有効にすることをお勧めします。混乱を避けるため、一部のインターフェイスでのみ有効にしないでください。

  • 1 つのインターフェイスのみでユニキャスト RPF を明示的に有効にすると、明示的に有効にしたすべてのインターフェイスでユニキャスト RPF を明示的に無効にする必要があるため、将来無効にした場合に使いやすくなります。2 つのインターフェイスでユニキャスト RPF を明示的に有効にし、1 つのインターフェイスでのみ無効にした場合でも、ユニキャスト RPF はスイッチ上で暗黙的にグローバルに有効になります。このアプローチの欠点は、ユニキャスト RPF が明示的に有効になっているインターフェイスでのみユニキャスト RPF が有効であることを示すフラグがスイッチに表示されるため、すべてのインターフェイスでユニキャスト RPF が有効になっていても、このステータスが表示されないことです。

  • すべてのインターフェイスでユニキャスト RPF を明示的に有効にすると、すべてのインターフェイスで正しいステータスが表示されるため、スイッチでユニキャスト RPF が有効になっているかどうかが分かりやすくなります。(ユニキャスト RPF を明示的に有効にしたインターフェイスにのみ、ユニキャスト RPF が有効であることを示すフラグが表示されます)。このアプローチの欠点は、ユニキャスト RPF を無効にする場合、すべてのインターフェイスで明示的に無効にする必要があることです。ユニキャスト RPF が任意のインターフェイスで有効になっている場合、すべてのインターフェイスで暗黙的に有効になります。

ユニキャスト RPF を有効にしない場合

通常、次の場合はユニキャスト RPF を有効にしません。

  • スイッチ インターフェイスはマルチホームです。

  • スイッチ インターフェイスは信頼できるインターフェイスです。

  • BGP はプレフィックスを伝送していますが、プレフィックスの一部はアドバタイズされていないか、ISP のポリシーで受け入れられていません。(この場合の効果は、不完全なアクセス リストを使用してインターフェイスをフィルタリングした場合と同じです)。

  • スイッチ インターフェイスはネットワーク コアに面しています。コアに面するインターフェイスは、通常、非対称にルーティングされます。

図2に示すように、非対称ルーティングされたインターフェイスは、送信元と宛先の間で異なるパスを使用してパケットを送受信します。つまり、インターフェイスがパケットを受信した場合、そのインターフェイスは、送信元に戻る最適なリターンパスとして、転送テーブルのエントリーと一致しません。受信インターフェイスがパケット送信元への最適なリターン パスでない場合、ユニキャスト RPF により、パケットが有効な送信元から送信されていても、スイッチはパケットを廃棄します。

図 2:非対称にルーティングされたインターフェイス Asymmetrically Routed Interfaces
手記:

EX3200、EX4200、EX4300スイッチでは、ユニキャストRPFがすべてのインターフェイスでグローバルに有効化されているため、スイッチインターフェイスが非対称にルーティングされている場合、これらのスイッチではユニキャストRPFを有効にしないでください。転送するトラフィックをスイッチが破棄するリスクなしにユニキャスト RPF を有効にするには、すべてのスイッチ インターフェイスが対称的にルーティングされている必要があります。

EX3200、EX4200、EX4300 スイッチでのユニキャスト RPF 実装の制限

EX3200、EX4200、EX4300 スイッチでは、グローバルにユニキャスト RPF を実装しています。インターフェイスごとにユニキャスト RPF を有効にすることはできません。ユニキャスト RPF は、デフォルトでグローバルに無効になっています。

  • 任意のインターフェイスでユニキャストRPFを有効にすると、LAG(リンクアグリゲーショングループ)、IRB(統合型ルーティングおよびブリッジング)インターフェイス、RVI(ルーテッドVLANインターフェイス)を含むすべてのスイッチインターフェイスで自動的に有効になります。

  • ユニキャスト RPF を有効にしたインターフェイスでユニキャスト RPF を無効にすると、すべてのスイッチ インターフェイスで自動的に無効になります。

手記:

ユニキャスト RPF を明示的に有効にしたすべてのインターフェイスで明示的に無効にするか、すべてのスイッチ インターフェイスでユニキャスト RPF を有効にしたままにする必要があります。

QFX スイッチ、OCX スイッチ、EX3200 および EX4200 スイッチは、ECMP(等価コスト マルチパス)トラフィックに対してユニキャスト RPF フィルタリングを実行しません。ユニキャスト RPF チェックでは、パケット送信元への最適なリターン パスが 1 つだけ調べられますが、ECMP トラフィックでは、複数のパスで構成されるアドレス ブロックが採用されます。ユニキャスト RPF を使用してこれらのスイッチの ECMP トラフィックをフィルタリングすると、ユニキャスト RPF フィルタが ECMP アドレス ブロック全体を調べないため、転送するパケットがスイッチによって破棄される可能性があります。

例:ユニキャスト RPF の設定(ルータ上)

この例では、カスタマー エッジ インターフェイスでユニキャスト RPF を設定して受信トラフィックをフィルタリングすることで、イングレス インターフェイスをサービス拒否(DoS)攻撃と分散型サービス拒否(DDoS)攻撃から防御する方法を示します。

必要条件

デバイスの初期化以上の特別な設定は必要ありません。

概要

この例では、デバイスAがOSPFを使用して、デバイスDに接続するリンクのプレフィックスをアドバタイズしています。デバイスBにはユニキャストRPFが設定されています。OSPFは、機器Bと機器Cの間のリンク、および機器Aと機器Cの間のリンクでは有効になっていますが、機器Aと機器Bの間のリンクでは有効になっていません。したがって、デバイスBは、デバイスCを経由してデバイスDへのルートについて学習します。

DHCP または BOOTP が使用されている環境でイングレス フィルタリングを使用する場合、送信元アドレスが 0.0.0.0 で宛先アドレスが 255.255.255.255 のパケットが、必要に応じてルーターのリレー エージェントに到達できるようにする必要があります。

この例には、失敗フィルターも含まれています。パケットがユニキャスト RPF チェックに失敗した場合、失敗フィルターが評価され、パケットを受け入れる必要があるかどうかが判断されます。この例の fail フィルターにより、デバイス B のインターフェイスは DHCP(動的ホスト構成プロトコル)パケットを受け入れることができます。フィルターは、送信元アドレスが 0.0.0.0 で宛先アドレスが 255.255.255.255 のすべてのパケットを受け入れます。

位相幾何学

図 3 は、サンプルのネットワークを示しています。

図 3:ユニキャスト RPF サンプル Topoolgy Unicast RPF Sample Topoolgy

構成

CLIクイック構成

この例をすばやく設定するには、次のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、 [edit] 階層レベルのCLIにコマンドをコピー&ペーストしてください。

1 デバイスA 1

1 デバイスB 1

1 デバイスC 1

1 デバイスD 1

1 デバイスE 1

デバイス A を設定する

手順

次の例では、設定階層のいくつかのレベルに移動する必要があります。CLIのナビゲーションについては、「 1 コンフィグレーション・モードでのCLIエディタの使用」を参照してください。

デバイス A を設定するには:

  1. インターフェイスを設定します。

  2. OSPFを設定します。

  3. ルーティングポリシーを設定します。

  4. デバイス A の設定が完了したら、設定をコミットします。

デバイス B の設定

手順

次の例では、設定階層のいくつかのレベルに移動する必要があります。CLIのナビゲーションについては、「 1 コンフィグレーション・モードでのCLIエディタの使用」を参照してください。

デバイス B を設定するには:

  1. インターフェイスを設定します。

  2. OSPFを設定します。

  3. ユニキャスト RPF を設定し、オプションの失敗フィルターを適用します。

  4. (オプション)パケットがRPFチェックに失敗した場合に評価されるフェイルフィルターを設定します。

  5. (オプション)RPFチェックで考慮されるアクティブパスのみを設定します。

    これはデフォルトの動作です。

  6. デバイス B の設定が完了したら、設定をコミットします。

業績

show firewallshow interfacesshow protocolsshow routing-optionsshow policy-options コマンドを発行して、設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。

1 デバイスA 1

1 デバイスB 1

CLIクイック構成に示されるように、デバイスC、デバイスD、およびデバイスEで設定を入力します。

検証

設定が正常に機能していることを確認します。

ユニキャストRPFが有効になっていることを確認

目的

デバイス B のインターフェイスでユニキャスト RPF が有効になっていることを確認します。

アクション
意味

uRPF フラグは、このインターフェイスでユニキャスト RPF が有効になっていることを確認します。

送信元アドレスがブロックされていることを確認する

目的

ping コマンドを使用して、デバイス B が予期しない送信元アドレスからのトラフィックをブロックしていることを確認します。

アクション

デバイスAから、送信元アドレスとして10.0.0.17を使用してデバイスBのインターフェイスにpingを実行します。

意味

予想通り、ping 操作は失敗します。

送信元アドレスのブロックが解除されていることを確認する

目的

ping コマンドを使用して、RPF チェックが非アクティブなときにデバイス B がトラフィックをブロックしないようにします。

アクション
  1. インターフェイスの 1 つで RPF チェックを無効にします。

  2. ping 操作を再実行します。

意味

予想通り、ping操作は成功します。