GRE(Generic Routing Encapsulation)
GRE(一般ルーティングのカプセル化)は、データ トラフィックをトンネルにカプセル化する仮想ポイントツーポイント リンクです。以下のトピックでは、GRE のトンネリング、カプセル化およびカプセル化解除プロセス、GRES の設定、GRES の動作の検証について説明します。
汎用ルーティングのカプセル化について
GRE(汎用ルーティングのカプセル化)は、パケットをカプセル化(またはトンネリング)することで、パブリックネットワークを介してパケットを転送するためのプライベートパスを提供します。
このトピックでは、以下について説明します。
GRE の概要
GRE はデータ パケットをカプセル化し、カプセル化を解除して最終宛先にルーティングするデバイスにリダイレクトします。これにより、ソーススイッチと宛先スイッチは、お互いに仮想ポイントツーポイント接続があるかのように動作することができます(GREによって適用される外部ヘッダーがカプセル化されたペイロードパケットに透過的であるため)。例えば、GRE トンネルでは、RIP や OSPF などのルーティング プロトコルが、あるスイッチからインターネット上の別のスイッチにデータ パケットを転送できます。さらに、GRE トンネルは、マルチキャスト データ ストリームをカプセル化してインターネット経由で送信できます。
GRE は RFC 2784 に記載されています(旧版の RFC 1701 および 1702)。このスイッチはRFC 2784をサポートしていますが、完全にはサポートしていません。(制限の一覧については、 設定の 制限を参照してください)。
トンネルソースルーターとして、スイッチはトンネルを介して宛先ネットワークにトランスポートするためのペイロードパケットをカプセル化します。ペイロード パケットは最初に GRE パケットでカプセル化され、次に GRE パケットは配信プロトコルでカプセル化されます。トンネルリモートルーターの役割を果たすスイッチは、トンネリングされたパケットを抽出し、パケットを宛先に転送します。1つのファイアウォール条件を使用して、QFX5100スイッチ上の多くのGREトンネルを終端できることに注意してください。
GRE トンネリング
ルート テーブルで確立されたルートを介して、データが GRE エンドポイントにルーティングされます。(これらのルートは、RIP や OSPF などのルーティング プロトコルによって静的に設定したり、動的に学習したりできます。GRE エンドポイントがデータ パケットを受信すると、そのパケットはカプセル化解除され、宛先アドレスに再度ルーティングされます。
GRE トンネルは ステートレスです。つまり、トンネルのエンドポイントには、リモート トンネル エンドポイントの状態または可用性に関する情報は含まれておりいません。そのため、トンネルソースルーターとして動作するスイッチは、リモートエンドポイントに到達できない場合、GREトンネルインターフェイスの状態をダウンに変更することはできません。
GRE トンネリングの詳細については、以下を参照してください。
スイッチでのカプセル化とカプセル化解除
カプセル化—トンネルソースルーターとして動作するスイッチは、次のようにGREパケットをカプセル化して転送します。
スイッチは、トンネリングするデータ パケット(ペイロード)を受信すると、そのパケットをトンネル インターフェイスに送信します。
トンネル インターフェイスは、GRE パケット内のデータをカプセル化し、外部 IP ヘッダーを追加します。
IP パケットは、外部 IP ヘッダーの宛先アドレスに基づいて転送されます。
カプセル化解除—トンネルリモートルーターとして動作するスイッチは、GREパケットを次のように処理します。
宛先スイッチがトンネル インターフェイスから IP パケットを受信すると、外部 IP ヘッダーと GRE ヘッダーが削除されます。
パケットは、内部 IP ヘッダーに基づいてルーティングされます。
スイッチで許可される送信元および宛先トンネル数
QFX5100 および OCX シリーズ スイッチは、ファイアウォール フィルターで作成されたトンネルを含め、512 個もの GRE トンネルをサポートします。つまり、どの方法を使用しても、合計 512 の GRE トンネルを作成できます。
EXスイッチは、GREを介してIPv4またはIPv6ペイロードパケットを送信するスイッチ間で最大500のGREトンネルをサポートしています。IPv4 および IPv6 に加えて乗客プロトコルを使用する場合、スイッチ間で最大 333 の GRE トンネルを設定できます。
EX スイッチには最大 20 個のトンネル 送信元 IP アドレスを設定でき、2 台目のスイッチでは最大 20 個の宛先 IP アドレスを持つ各トンネル ソース IP を設定できます。その結果、2 つの接続されたスイッチは、最大 400 の GRE トンネルを持つことができます。最初のスイッチが 3 つ目のスイッチにも接続されている場合、可能なトンネルの最大数は 500 です。
GRE トンネル上のサービス クラス
ネットワークに輻輳や遅延が発生した場合、一部のパケットがドロップされることがあります。Junos OS サービスクラス (CoS)は、トラフィックをクラスに分割し、輻輳発生時に異なるレベルのスループットとパケットロスを適用して、パケット損失のルールを設定します。CoSの詳細については、 EXシリーズスイッチ向けJunos OS CoSの概要をご覧ください。
次のCoSコンポーネントは、GREトンネルソースルーターまたはGREトンネルリモートルーターとして動作するスイッチで使用できます。
-
GREトンネルソース:トンネルソースルーターとして動作するスイッチでは、 イングレスポート または GREポートにCoS分類子を適用できます。これにより、トンネリングされたパケットのCoSコンポーネントサポートに以下の結果が表示されます。
-
スケジューラのみ—イングレスポートでのCoS分類に基づいて、スイッチのGREポートにCoSスケジューラを適用して、出力キューを定義し、GREカプセル化後のトンネルを介したパケットの送信を制御できます。ただし、これらのパケットにCoS 書き換えルール を適用することはできません。
-
スケジューラーおよび書き換えルール-GREポートのCoS分類に応じて、スケジューラと書き換えルールの両方をトンネルを介して送信されるカプセル化パケットに適用できます。
メモ:インターフェイスに BA 分類子を
gr-
設定することはできません。ファイアウォールフィルター(マルチフィールドの分類子)を使用して、インターフェイス上gr-
のトラフィックを分類する必要があります。 -
GREトンネルエンドポイント-スイッチがトンネルリモートルーターの場合、GREポートにCoS分類子を適用し、エグレスポートでスケジューラとルールを書き換えて、エグレスポートからカプセル化解除されたGREパケットの送信を制御できます。
GRE トラフィックへのファイアウォール フィルターの適用
ファイアウォールフィルターは、スイッチ上のインターフェイスを通過するパケットを許可、拒否、転送するかどうかを定義するルールを提供します。(詳細については、 EXシリーズスイッチのファイアウォールフィルターの概要を参照してください)。GREによってカプセル化とカプセル化解除が実行されるため、ファイアウォールフィルターを適用してトンネリングパケットをフィルタリングできる場所と、影響を受けるヘッダーが制約されます。 表 1 は、これらの制約を示しています。
エンドポイント タイプ |
イングレス インターフェイス | エグレス インターフェイス |
ソース(カプセル化) |
内部ヘッダー |
外部ヘッダー |
リモート(カプセル化解除) |
イングレスインターフェイスでパケットをフィルタリングできない |
内部ヘッダー |
ファイアウォールフィルターを使用して、QFX5100、QFX10000、OCXシリーズスイッチでGREトラフィックのカプセル化を解除する
ファイアウォール フィルターを使用して、スイッチ上の GRE トラフィックのカプセル化を解除することもできます。この機能は、カプセル化解除を実行するためにトンネルインターフェイスを作成する必要がないため、拡張性、パフォーマンス、柔軟性の面で大きなメリットがあります。例えば、1つのファイアウォール条件で、複数のソースIPアドレスから多くのトンネルを終端することができます。この目的 でファイアウォールフィルターを設定する方法については、 GREトラフィックのカプセル化を解除 するファイアウォールフィルターの設定を参照してください。
設定の制限
表 2 は、GRE でサポートされていない機能を示しています。
EXスイッチ | QFXスイッチ |
MPLS over GRE トンネル |
MPLS over GRE トンネル |
GRE キープアライブ |
GRE キープアライブ |
GRE 鍵、ペイロード パケットフラグメント化、フラグメント化パケットのシーケンス番号 |
GRE 鍵、ペイロード パケットフラグメント化、フラグメント化パケットのシーケンス番号 |
BGPダイナミックトンネル |
BGPダイナミックトンネル |
外部 IP アドレスは IPv4 である必要があります |
外部 IP アドレスは IPv4 である必要があります |
仮想ルーティング インスタンス |
QFX10002、QFX10008、QFX5Kシリーズスイッチでは、ユニキャストネクストホップではなく、基盤となるECMPネクストホップでGREトンネリングを設定すると、GREトンネルのカプセル化が失敗し、ネットワークトラフィックがドロップされます。 |
GRE分散モード上の双方向転送検出(BFD)プロトコル |
|
OSPF の制限:GRE インターフェイスで OSPF を有効にすると、宛先への 2 つのイコール コスト ルートが作成されます。1 つはイーサネット ネットワークまたはアップリンク インターフェイスを経由し、もう 1 つはトンネル インターフェイスを経由します。データがトンネルインターフェイスを介してルーティングされると、トンネルが失敗する可能性があります。インターフェイスを動作させ続けるために、静的ルートを使用し、トンネルインターフェイスでOSPFを無効にするか、トンネルインターフェイス上でトンネル宛先をアドバタイズしないようにピアを設定することをお勧めします。 |
|
|
QFXシリーズスイッチは、2つの異なるルーティングインスタンスにおけるGREインターフェイスと基盤となるトンネルソースインターフェイスの設定をサポートしていません。この設定を試すと、コミット エラーが発生します。 |
「」も参照
汎用ルーティングカプセル化トンネリングの設定
GRE(汎用ルーティングのカプセル化)は、パケットをカプセル化(またはトンネリング)することで、パブリックネットワークを介してパケットを転送するためのプライベートパスを提供します。GRE トンネリングは、トラフィックをカプセル化またはカプセル化解除するトンネル エンドポイントを介して実行されます。
また、ファイアウォールフィルターを使用して、QFX5100およびOCXシリーズスイッチでGREトラフィックのカプセル化を解除することもできます。この機能は、カプセル化解除を実行するためにトンネルインターフェイスを作成する必要がないため、拡張性、パフォーマンス、柔軟性の面で大きなメリットがあります。例えば、1つのファイアウォール条件で、複数のソースIPアドレスから多くのトンネルを終端することができます。この機能の詳細については、 GREトラフィックのカプセル化を解除するファイアウォールフィルターの設定を参照してください。
スイッチで GRE トンネル ポートを設定するには、次の手順に基づきます。
-
GRE トンネル ポートに変換するスイッチのネットワーク ポートまたはアップリンク ポートを決定します。
-
GRE トンネル サービスのトンネル ポートとしてポートを設定します。
[edit chassis]user@switch# set fpc slot pic pic-number tunnel-port port-number tunnel-services
QFX10000 では、デフォルトで gr-0/0/0 インターフェイスが作成されます。また、 ステートメントを設定する set fpc slot pic pic-number tunnel-port port-number tunnel-services
必要はありません。
このトピックでは、以下について説明します。
GRE トンネルの設定
GREトンネルインターフェイスを設定するには:
QFX10002およびQFX10008スイッチでは、ユニキャストのネクストホップではなく、基盤となるECMPネクストホップでGREトンネリングを設定すると、GREトンネルのカプセル化が失敗し、ネットワークトラフィックがドロップされます。
間接的なエグレスネクストホップは、現在、QFX10000スイッチのGRE実装ではサポートされていません。
一般的なルーティングカプセル化トンネリングが正しく機能していることを確認する
目的
GRE(汎用ルーティングカプセル化)インターフェイスがトンネリングトラフィックを送信していることを確認します。
アクション
コマンドを使用して、指定された GRE インターフェイスのステータス情報を表示します show interfaces
。
user@switch> show interfaces gr-0/0/0.0 Physical interface: gr-0/0/0, Enabled, Physical link is Up Interface index: 132, SNMP ifIndex: 26 Type: GRE, Link-level type: GRE, MTU: Unlimited, Speed: 800mbps Device flags : Present Running Interface flags: Point-To-Point SNMP-Traps Input rate : 0 bps (0 pps) Output rate : 0 bps (0 pps) Logical interface gr-0/0/0.0 (Index 68) (SNMP ifIndex 47) Flags: Point-To-Point SNMP-Traps 16384 IP-Header 10.1.1.2:10.1.1.1:47:df:64:0000000000000000 Encapsulation: GRE-NULL Input packets : 0 Output packets: 0 Protocol inet, MTU: 1476 Flags: None Addresses, Flags: Is-Primary Local: 10.0.0.0
意味
出力は、GRE インターフェイス gr-0/0/0 が稼働していることを示しています。出力には、物理インターフェイスの名前と、このインターフェイスのトラフィック統計情報が表示されます---入力および出力バイトとパケットが物理インターフェイスで送受信されるの数とレートが表示されます。