GRE トンネル インターフェイスの設定
汎用ルーティングのカプセル化について
GRE(汎用ルーティングカプセル化)は、パケットをカプセル化(またはトンネリング)することで、パブリックネットワークを介してパケットを転送するためのプライベートでセキュアなパスを提供します。
このトピックでは、以下について説明します。
GRE の概要
GRE はデータ パケットをカプセル化し、カプセル化を解除して最終宛先にルーティングするデバイスにリダイレクトします。これにより、ソースルーターと宛先ルーターは、お互いに仮想ポイントツーポイント接続があるかのように動作することができます(GREによって適用される外部ヘッダーがカプセル化されたペイロードパケットに透過的であるため)。例えば、GRE トンネルでは、RIP や OSPF などのルーティング プロトコルが、あるルーターからインターネット上の別のルーターにデータ パケットを転送できます。さらに、GRE トンネルは、マルチキャスト データ ストリームをカプセル化してインターネット経由で送信できます。
GRE は RFC 2784 に記載されています(旧版の RFC 1701 および 1702)。ルーターはRFC 2784をサポートしていますが、完全にはサポートしていません。(制限の一覧については、 設定の 制限を参照してください)。
トンネルソースルーターとして、ルーターはトンネルを介して宛先ネットワークにトランスポートするためのペイロードパケットをカプセル化します。ペイロード パケットは最初に GRE パケットでカプセル化され、次に GRE パケットは配信プロトコルでカプセル化されます。トンネルリモートルーターの役割を果たすルーターは、トンネリングされたパケットを抽出し、パケットを宛先に転送します。
ACX1100-AC および ACX500 ルーター上の GRE、NAT、IPSec サービスのサービス チェイニングはサポートされていません。
レイヤー 2 over GRE は、ACX2200 ルーターではサポートされていません。
ACXルーターは、WANインターフェイスでGREトンネルが設定されている場合、OSPFルーティングプロトコルをサポートします。
GRE トンネリング
ルート テーブルで確立されたルートを介して、データが GRE エンドポイントにルーティングされます。(これらのルートは、RIP や OSPF などのルーティング プロトコルによって静的に設定したり、動的に学習したりできます。GRE エンドポイントがデータ パケットを受信すると、そのパケットはカプセル化解除され、宛先アドレスに再度ルーティングされます。
GRE トンネルは ステートレスです。つまり、トンネルのエンドポイントには、リモート トンネル エンドポイントの状態または可用性に関する情報は含まれておりいません。そのため、トンネルソースルーターとして動作するルーターは、リモートエンドポイントに到達できない場合、GREトンネルインターフェイスの状態をダウンに変更することはできません。
GRE トンネリングの詳細については、以下を参照してください。
ルーターでのカプセル化とカプセル化解除
カプセル化—トンネルソースルーターとして動作するルーターは、次のようにGREパケットをカプセル化して転送します。
ルーターは、トンネリングするデータパケット(ペイロード)を受信すると、そのパケットをトンネルインターフェイスに送信します。
トンネル インターフェイスは、GRE パケット内のデータをカプセル化し、外部 IP ヘッダーを追加します。
IP パケットは、外部 IP ヘッダーの宛先アドレスに基づいて転送されます。
カプセル化解除—トンネルリモートルーターとして動作するルーターは、GREパケットを次のように処理します。
宛先ルーターがトンネル インターフェイスから IP パケットを受信すると、外部 IP ヘッダーと GRE ヘッダーが削除されます。
パケットは、内部 IP ヘッダーに基づいてルーティングされます。
ルーターで許可される送信元および宛先トンネル数
ACXルーターは、GREを介してIPv4またはIPv6ペイロードパケットを送信するルーター間で最大64のGREトンネルをサポートしています。
設定の制限
現在、ACX シリーズ ルーターでは一部の GRE トンネリング機能を利用できません。ACXルーターでGREを設定する場合、以下の制限に注意してください。
サポートされていない機能—ACXルーターのGREは、以下の機能を サポートしていません 。
GRE 上の仮想ルーティング
GRE分散モード上の双方向転送検出(BFD)プロトコル
MPLS over GRE トンネル
GRE キープアライブ
GRE 鍵、ペイロード パケットフラグメント化、フラグメント化パケットのシーケンス番号
BGPダイナミックトンネル
RFC 1701 および RFC 1702
RFC 2890 - GREへのキーおよびシーケンス番号の拡張
配信ヘッダーとしての IPv6
GRE パス MTU 検出
NNI が ECMP の場合のロード バランシング
GRE インターフェイス上のインターフェイス統計
GREトンネル上のサービスクラスとファイアウォール
ルーティングプロトコル—ACXルーターは、GREインターフェイス上のルーティングプロトコルをサポートしていません。[edit protocols] 階層の GRE インターフェイスでルーティングを無効にする必要があります。例えば
[edit] user@host# show protocols ospf { area 0.0.0.0 { interface all; interface gr-0/0/10.0 { disable; } } }
メモ:この制限は、すべてのルーティング プロトコル(OSPF、ISIS など)に適用されます。
「」も参照
汎用ルーティングカプセル化トンネリングの設定
トンネリングは、IPカプセル化プロトコルと呼ばれるトランスポートプロトコル内でパケットをカプセル化することで、パブリックネットワークを介してパケットを転送するためのプライベートでセキュアなパスを提供 します。GRE(汎用ルーティングカプセル化)は、ネットワーク上でパケットを転送するために使用されるIPカプセル化プロトコルです。情報は、GRE トンネルを介して 1 つのネットワークから他方のネットワークに送信されます。
GRE トンネリングは、既存の物理エンドポイントやその他の論理エンドポイント上で動作するルーティング可能なトンネル エンドポイントを介して実行されます。GRE トンネルは、あるエンドポイントを別のエンドポイントに接続し、その間に明確なデータ パスを提供します。
このトピックでは、以下について説明します。
GRE トンネル ポートの設定
ルーターに GRE トンネルを設定するには、ルーター上のネットワーク ポートまたはアップリンク ポートをトンネル サービス用の GRE トンネル ポートに変換します。gr-fpc//picportという名前の各物理トンネル ポートは、1 つ以上の論理インターフェイスを持つことができます。各論理インターフェイスは GRE トンネルです。
GRE トンネル ポートに変換した後、物理ポートはネットワーク トラフィックに使用できません。
ルーターに GRE トンネル ポートを設定するには、トンネル サービスを予約するために、論理トンネル インターフェイスと帯域幅をギガビット/秒で作成する必要があります。 tunnel-services bandwidth (1g | 10g)
[edit chassis fpc slot-number pic number
] 階層レベルに ステートメントを含めます。
GREトンネルポートを設定するには、以下に示すように、ルーター上の未使用の物理ポートを使用して論理トンネルインターフェイスを作成します。
user@host# edit chassis fpc 0 { pic 0 { tunnel-services { port port-number; } } }
これにより、gr- インターフェイスも作成されます。
MPC上のトンネルインターフェイスの設定については、 MXシリーズルーターのトンネルインターフェイス設定の概要を参照してください。
一般的なルーティングカプセル化を使用するトンネルの設定
通常、GRE トンネル ポートは設定されるとすぐに起動し、有効なトンネル 送信元アドレスが存在するか、インターフェイスが動作している限り稼働し続けます。ポートで設定する各論理インターフェイスは、送信元またはGREトンネルのエンドポイントとして設定できます。
トンネルポートがGREを使用するように設定するには:
GRE キープアライブ時間の概要
GRE(一般ルーティングのカプセル化)トンネル インターフェイスには、トンネルがダウンしたときに検出するメカニズムが組み込まれていません。キープアライブメッセージを検出メカニズムとして機能させることができます。
キープアライブメッセージのGREトンネルインターフェイスを有効にすると、インターフェイスはキープアライブリクエストパケットを定期的にリモートエンドポイントに送信します。GRE トンネルのデータ パス転送がすべてのポイントで正しく機能する場合、キープアライブ 応答パケットが発信元に返されます。これらのキープアライブメッセージは、ルーティングエンジンによって処理されます。
物理または論理GREトンネルインターフェイスにキープアライブメッセージを設定できます。物理インターフェイスで設定された場合、キープアライブメッセージは、物理インターフェイスの一部であるすべての論理インターフェイスで送信されます。個々の論理インターフェイスで設定された場合、キープアライブはその論理インターフェイス上でのみ送信されます。
キープアライブメッセージを送信する頻度と、トンネルを運用的にダウンしたとしてマークする前に、インターフェイスがキープアライブ応答を待つ時間を設定します。
キープアライブリクエストパケットを 図1に示します。

キープアライブペイロードには、GREキープアライブプロセスを担当するアプリケーションにキープアライブ応答が正しく配信されるようにするための情報が含まれています。
外側の GRE ヘッダーには、以下が含まれます。
送信元 IP アドレス — キープアライブリクエストを開始するエンドポイントの IP アドレス
宛先 IP アドレス — キープアライブ要求を受信するエンドポイントの IP アドレス
GRE プロトコル ID—IP
内部 GRE ヘッダーには以下が含まれます。
送信元 IP アドレス — キープアライブリクエストを受信するエンドポイントの IP アドレス
宛先IPアドレス —キープアライブリクエストを開始するエンドポイントのIPアドレス
GRE プロトコル ID—パケット転送エンジンが GRE キープアライブ パケットとして認識する値
Junos OSリリース17.3R1以降、MXシリーズルーターでIPv6 GRE(汎用ルーティングカプセル化)トンネルインターフェイスを設定できるようになりました。これにより、IPv6 ネットワーク上で GRE トンネルを実行できます。IPv6 GRE トンネル内でカプセル化できるパケット ペイロード ファミリーには、IPv4、IPv6、MPLS、ISO が含まれます。IPv6 配信パケットのフラグメント化と再構築はサポートされていません。
IPv6 GREトンネルインターフェイスを設定するには、 階層レベルで と destination
にIPv6アドレスを[interfaces gr-0/0/0 unit 0 tunnel]
指定しますsource
。
キープアライブは、GRE IPv6ではサポートされていません。
「」も参照
GREキープアライブ時間の設定
GRE トンネル インターフェイスのキープアライブ時間と保留時間の設定
階層レベルで ステートメントと ステートメントの両方keepalive-time
を含めることで、GRE(汎用ルーティングカプセル化)トンネルインターフェイスでキープアライブをhold-time
[edit protocols oam gre-tunnel interface interface-name]
設定できます。
GRE インターフェイスでキープアライブを適切に動作させるには、 階層レベルにも ステートメントをfamily inet
[edit interfaces interface-name unit unit]
含める必要があります。このステートメントを含まない場合、インターフェイスはダウンとしてマークされます。
GREトンネルインターフェイスを設定するには:
GREトンネルインターフェイスのキープアライブ時間を設定するには:
GRE トンネル インターフェイスの 階層レベルで
[edit protocols]
OAM(運用、管理、保守)プロトコルを設定します。[edit] user@host# edit protocols oam
OAM プロトコルの GRE トンネル インターフェイス オプションを設定します。
[edit protocols oam] user@host# edit gre-tunnel interface interface-name
GREトンネルインターフェイスのキープアライブ時間を1~50秒で設定します。
[edit protocols oam gre-tunnel interface interface-name] user@host# set keepalive-time seconds
ホールドタイムを5~250秒で設定します。保持時間はキープアライブ時間の少なくとも2倍である必要があることに注意してください。
[edit protocols oam gre-tunnel interface interface-name] user@host# set hold-time seconds
GRE キープアライブ時間設定の表示
GRE トンネル インターフェイスでのキープアライブ時間情報の表示
目的
キープアライブ時間とホールドタイムパラメーターが設定されている場合、およびホールドタイムが期限切れになったとき、GREトンネルインターフェイスの現在のステータス情報を表示します。
アクション
GREトンネルインターフェイス(例えば、gr-3/3/0.3)で現在のステータス情報を検証するには、 および show interfaces gr-3/3/0.3 extensive
操作コマンドをshow interfaces gr-3/3/0.3 terse
実行します。
show interfaces gr-3/3/0.3 terse
user@host> show interfaces gr-3/3/0.3 terse Interface Admin Link Proto Local Remote gr-3/3/0.3 up up inet 192.0.2.1/24 mpls
show interfaces gr-3/3/0.3 extensive
user@host> show interfaces gr-3/3/0.3 extensive Logical interface gr-3/3/0.3 (Index 73) (SNMP ifIndex 594) (Generation 900) Flags: Point-To-Point SNMP-Traps 0x4000 IP-Header 10.1.19.11:10.1.19.12:47:df:64:0000000000000000 Encapsulation: GRE-NULL Gre keepalives configured: On, Gre keepalives adjacency state: down ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Traffic statistics: Input bytes : 15629992 Output bytes : 15912273 Input packets: 243813 Output packets: 179476 Local statistics: Input bytes : 15322586 Output bytes : 15621359 Input packets: 238890 Output packets: 174767 Transit statistics: Input bytes : 307406 0 bps Output bytes : 290914 0 bps Input packets: 4923 0 pps Output packets: 4709 0 pps Protocol inet, MTU: 1476, Generation: 1564, Route table: 0 Flags: Sendbcast-pkt-to-re Addresses, Flags: Dest-route-down Is-Preferred Is-Primary ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Destination: 192.0.2/24, Local: 192.0.2.1, Broadcast: 192.0.2.255, Generation: 1366 Protocol mpls, MTU: 1464, Maximum labels: 3, Generation: 1565, Route table: 0
保留時間が期限切れになったとき:
インターフェイスがトラフィックを送受信できない場合でも、GREトンネルは稼働し続けます。
Link
ステータスは になりUp
、Gre keepalives adjacency state
はDown
.
意味
キープアライブ時間とホールドタイムパラメーターを持つGREトンネルインターフェイスの現在のステータス情報は、ホールドタイムの期限が切れると予想通りに表示されます。
GRE トンネルでのフラグメント化の有効化
GRE(汎用ルーティングカプセル化)トンネルでIPv4パケットのフラグメント化を有効にするには、 階層レベルの既存のGRE設定の一部として、 ステートメントと MTU(最大送信単位)設定を[edit interfaces]
含clear-dont-fragment-bit
めます。
[edit interfaces] gr-fpc/pic/port { unit logical-unit-number { clear-dont-fragment-bit; ... family inet { mtu 1000; ... } } }
このステートメントは、パケット サイズに関係なく、パケット ヘッダーの DF(Don't Fragment)ビットをクリアします。パケットサイズがトンネルMTU値を超えた場合、カプセル化の前にパケットがフラグメント化されます。ASまたはマルチサービスPICで設定可能な最大MTUサイズは9192バイトです。
ステートメントは clear-dont-fragment-bit
、MXシリーズルーターとM320ルーターを除くすべてのMシリーズルーターでのみサポートされています。
SRX プラットフォームでは、GRE トンネル上の DF ビットのクリアは、デバイスがパケット モードまたは選択的パケット モードである場合にのみサポートされます。この機能は、フロー モードではサポートされていません。その結果、フロー モードでは、DF ビット セットが設定された GRE インターフェイスの MTU を超えるパケットは、GRE インターフェイスに設定されているにもかかわらず clear-dont-fragment-bit
破棄されます。
フラグメント化は、IPv4 ベースの GRE トンネルでカプセル化されている IPv4 パケットでのみ有効になります。
この設定は、ASまたはマルチサービスインターフェイス上のGREトンネルでのみサポートされています。標準トンネルPICインターフェイスでカプセル化タイプとしてコミット gre-fragmentation
した場合、PICがオンラインになると、以下のコンソールログメッセージが表示されます。
gr-fpc/pic/port: does not support this encapsulation
パケット転送エンジンは、GRE カプセル化されたパケットの外部 IP ヘッダーの IP 識別フィールドを更新して、フラグメント化後にパケットの再構築を可能にします。以前のCLI制約チェックでは、 ステートメントで ステートメントまたはトンネルキーallow-fragmentation
のいずれかをclear-dont-fragment-bit
設定する必要があったことは、もはや適用されません。
MPLSプロトコルファミリーが clear-dont-fragment-bit
有効になっているインターフェイスで ステートメントを設定する場合、MTU値を指定する必要があります。この MTU 値は、サポートされている最大値(9192)を超えてはなりません。