Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
このページの内容
 

例:破棄インターフェイスへのパケットの転送

この例では、破棄ルーティングを使用して、サービス拒否(DoS)攻撃を軽減し、重要なネットワークリソースを外部からの攻撃から保護し、各顧客が独自の保護を開始できるように保護サービスを顧客に提供し、DoS試行をログに記録および追跡する方法を示しています。

要件

この例を設定する前に、デバイスの初期化以外の特別な設定を行う必要はありません。

概要

破棄ルーティングでは、短時間で何百万ものリクエストが同じアドレスに送信されることを禁止するルールがルーターに設定されています。短時間で受信したリクエストが多すぎる場合、ルーターはリクエストを転送せずにそのリクエストを破棄します。リクエストは、パケットを転送しないルーターに送信されます。問題のあるルートは、破棄ルートまたはブラックホール ルートと呼ばれることもあります。破棄する必要があるルートの種類は、ピアまたは他の顧客からの顧客への攻撃、顧客からピアまたは他の顧客への攻撃、攻撃命令を提供するホストである攻撃コントローラー、およびボーゴンまたは無効な IP アドレスと呼ばれる未割り当てのアドレス空間として識別されます。

攻撃の試みが特定された後、オペレーターは攻撃を緩和するための設定を行うことができます。Junos OSで破棄ルーティングを設定する1つの方法は、破棄ルートに使用される各ネクストホップに対して破棄静的ルートを作成することです。破棄スタティックルートは、 discard オプションを使用します。

次に例を示します。

この例の主な焦点である別の戦略は、ルーティングポリシーと破棄インターフェイスを使用することです。このアプローチでは、破棄インターフェイスには、null ルート ルートに割り当てるネクスト ホップが含まれます。破棄インターフェイスには1つの論理ユニット(ユニット0)しか設定できませんが、ユニット0には複数のIPアドレスを設定することができます。

次に例を示します。

破棄静的ルートを使用する代わりに破棄インターフェイスを使用する利点は、破棄インターフェイスを使用して、トラフィックのカウント、ロギング、サンプリングのためのフィルターを設定し、インターフェイスに割り当てることができることです。これをこの例で示しています。

実際にパケットを破棄するには、BGPセッションにルーティングポリシーが添付されている必要があります。破棄対象ルートを見つけるには、ルートフィルター、アクセスリスト、またはBGPコミュニティ値を使用できます。

例えば、ルートフィルターの使用方法は次のとおりです。

ルートフィルター

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

図1:インターフェイスのサンプルネットワークNetwork diagram showing a linear topology with routers R1, R2, and R3. R1 connects to R2 with IP 10.0.0.1, R2 to R1 with IP 10.0.0.2, R2 to R3 with IP 10.1.0.1, and R3 to R2 with IP 10.1.0.2. R3 also connects to a cloud with IP 192.02.102. Routers use EBGP. Loopback addresses: R1 192.168.0.1, R2 192.168.0.2, R3 192.168.0.3.を破棄する

この例では、外部 BGP(EBGP)セッションが確立された 3 台のルーターが含まれています。

デバイスR1は、攻撃側のデバイスを表しています。デバイスR3は、攻撃されているデバイスに最も近いルーターを表しています。デバイスR2は、パケットを破棄インターフェイスに転送することで攻撃を緩和します。

この例では、破棄インターフェイスに適用されたアウトバウンドフィルターを示しています。

注:

単一の null ルート フィルターを使用する場合の問題は、可視性です。すべての破棄パケットは、同じカウンターをインクリメントします。どのカテゴリーのパケットが破棄されているかを確認するには、宛先クラス使用率(DCU)を使用し、ユーザー定義クラスを各 NULL ルート コミュニティに関連付けます。次に、ファイアウォールフィルターでDCUクラスを参照します。関連する例については、 例:送信元と宛先のプレフィックスを転送クラスにグループ化 するおよび 例:宛先クラスに基づいたレート制限フィルターの設定を参照してください。

ルート フィルターやアクセス リストを使用した場合と比較して、コミュニティ値を使用する方が管理上の難易度が最も低く、最も拡張性が高いアプローチです。したがって、これがこの例で示されているアプローチです。

デフォルトでは、ネクストホップは外部BGP(EBGP)ピアアドレスと等しくなければなりません。null ルート サービスのネクスト ホップを変更するには、EBGP セッションでマルチホップ機能を設定する必要があります。

CLIクイックコンフィグレーション は、 図1に示すすべてのデバイスの構成を示しています。

セクション #configuration756__policy-discard-st では、デバイス R2 の手順を説明します。

設定

手順

CLIクイックコンフィグレーション

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

デバイスR1

デバイスR2

デバイスR3

ステップバイステップの手順

次の例では、設定階層のさまざまなレベルに移動する必要があります。その方法の詳細については、『Junos OS CLIユーザーガイド』の「設定モードでCLIエディターを使用する」を参照してください。

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

  1. ルーターインターフェイスを作成します。

  2. すべてのパケットに一致するファイアウォールフィルターを設定し、パケットをカウントしてログに記録します。

  3. 破棄インターフェイスを作成し、出力ファイアウォールフィルターを適用します。

    入力ファイアウォールフィルターは、このコンテキストでは影響しません。

  4. 破棄インターフェイスで指定された宛先アドレスにネクストホップを送信する静的ルートを設定します。

  5. BGPピアリングを設定します。

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

  7. ルーティングポリシーを適用します。

  8. 自律システム(AS)番号を設定します。

結果

設定モードから、 show interfacesshow protocols show policy-optionsshow routing-optionsshow firewall コマンドを発行して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。

デバイスの設定が完了したら、設定モードから commit を入力します。

検証

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

ファイアウォールカウンターのクリア

目的

カウンターをクリアして、既知のゼロ(0)状態から開始していることを確認します。

アクション

  1. デバイスR2から、 clear firewall コマンドを実行します。

  2. デバイスR2から、 show firewall コマンドを実行します。

192.0.2.101アドレスにpingする

目的

宛先アドレスにパケットを送信します。

アクション

デバイスR1から、 ping コマンドを実行します。

意味

予想通り、ping リクエストは失敗し、応答は送信されません。パケットは廃棄されます。

出力フィルターのチェック

目的

デバイスR2のファイアウォールフィルターが正常に機能していることを確認します。

アクション

デバイスR2から、 show firewall filter log-discard コマンドを入力します。

意味

予想通り、カウンタはインクリメントされています。

注:

ping パケットには、さらに 20 バイトの IP オーバーヘッドと 8 バイトの ICMP ヘッダーが伝送されます。

コミュニティ属性の確認

目的

ルートにコミュニティ属性がタグ付けされていることを確認します。

アクション

デバイスR1から、デバイスR2のネイバーアドレス192.0.2.101を使用して show route extensive コマンドを入力します。

意味

予想通り、デバイスR2がデバイスR1に192.0.2.101ルートをアドバタイズすると、デバイスR2は100:5555コミュニティタグを追加します。