[要約] RFC 2784は、汎用ルーティングカプセル化(GRE)プロトコルに関する仕様であり、異なるネットワーク間でパケットをトンネリングするための方法を提供します。その目的は、異なるネットワーク間の通信を安全かつ効率的に行うことです。
Network Working Group D. Farinacci Request for Comments: 2784 T. Li Category: Standards Track Procket Networks S. Hanks Enron Communications D. Meyer Cisco Systems P. Traina Juniper Networks March 2000
Generic Routing Encapsulation (GRE)
ジェネリックルーティングカプセル化(GRE)
Status of this Memo
本文書の状態
This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.
このドキュメントは、インターネットコミュニティのインターネット標準トラックプロトコルを指定し、改善のための議論と提案を要求します。このプロトコルの標準化状態とステータスについては、「インターネット公式プロトコル標準」(STD 1)の最新版を参照してください。このメモの配布は無制限です。
Copyright Notice
著作権表示
Copyright (C) The Internet Society (2000). All Rights Reserved.
Copyright(C)The Internet Society(2000)。全著作権所有。
Abstract
概要
This document specifies a protocol for encapsulation of an arbitrary network layer protocol over another arbitrary network layer protocol.
このドキュメントでは、任意のネットワークレイヤープロトコルを別の任意のネットワークレイヤープロトコルにカプセル化するためのプロトコルを指定します。
A number of different proposals [RFC1234, RFC1226] currently exist for the encapsulation of one protocol over another protocol. Other types of encapsulations [RFC1241, RFC1479] have been proposed for transporting IP over IP for policy purposes. This memo describes a protocol which is very similar to, but is more general than, the above proposals. In attempting to be more general, many protocol specific nuances have been ignored. The result is that this proposal may be less suitable for a situation where a specific "X over Y" encapsulation has been described. It is the attempt of this protocol to provide a simple, general purpose mechanism which reduces the problem of encapsulation from its current O(n^2) size to a more manageable size. This memo purposely does not address the issue of when a packet should be encapsulated. This memo acknowledges, but does not address problems such as mutual encapsulation [RFC1326].
現在、あるプロトコルを別のプロトコルにカプセル化するためのさまざまな提案[RFC1234、RFC1226]がいくつか存在します。ポリシーの目的でIP over IPを転送するために、他のタイプのカプセル化[RFC1241、RFC1479]が提案されています。このメモは、上記の提案に非常によく似ていますが、より一般的なプロトコルについて説明しています。より一般的にするために、多くのプロトコル固有のニュアンスは無視されてきました。その結果、この提案は、特定の「X over Y」カプセル化が説明されている状況にはあまり適していない可能性があります。このプロトコルの試みは、カプセル化の問題を現在のO(n ^ 2)サイズからより扱いやすいサイズに減らす単純で汎用的なメカニズムを提供することです。このメモは、パケットをカプセル化する必要がある場合の問題には意図的に対処していません。このメモは認めますが、相互カプセル化[RFC1326]のような問題を扱いません。
In the most general case, a system has a packet that needs to be encapsulated and delivered to some destination. We will call this the payload packet. The payload is first encapsulated in a GRE packet. The resulting GRE packet can then be encapsulated in some other protocol and then forwarded. We will call this outer protocol the delivery protocol. The algorithms for processing this packet are discussed later.
最も一般的なケースでは、システムには、カプセル化されて宛先に配信される必要のあるパケットがあります。これをペイロードパケットと呼びます。ペイロードは最初にGREパケットにカプセル化されます。結果のGREパケットは、他のプロトコルでカプセル化してから転送できます。この外部プロトコルを配信プロトコルと呼びます。このパケットを処理するアルゴリズムについては、後で説明します。
Finally this specification describes the intersection of GRE currently deployed by multiple vendors.
最後に、この仕様は、複数のベンダーによって現在展開されているGREの共通部分について説明しています。
The keywords MUST, MUST NOT, MAY, OPTIONAL, REQUIRED, RECOMMENDED, SHALL, SHALL NOT, SHOULD, SHOULD NOT are to be interpreted as defined in RFC 2119 [RFC2119].
キーワードは、MUST NOT、MAY NOT、MAY、OPTIONAL、REQUIRED、RECOMMENDED、SHALL、SHALL NOT、SHOULD、SHOULD NOTは、RFC 2119 [RFC2119]で定義されているように解釈されます。
A GRE encapsulated packet has the form:
GREカプセル化パケットの形式は次のとおりです。
--------------------------------- | | | Delivery Header | | | --------------------------------- | | | GRE Header | | | --------------------------------- | | | Payload packet | | | ---------------------------------
This specification is generally concerned with the structure of the GRE header, although special consideration is given to some of the issues surrounding IPv4 payloads.
この仕様は一般にGREヘッダーの構造に関係していますが、IPv4ペイロードを取り巻くいくつかの問題には特別な考慮が払われています。
The GRE packet header has the form:
GREパケットヘッダーの形式は次のとおりです。
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |C| Reserved0 | Ver | Protocol Type | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Checksum (optional) | Reserved1 (Optional) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
If the Checksum Present bit is set to one, then the Checksum and the Reserved1 fields are present and the Checksum field contains valid information. Note that a compliant implementation MUST accept and process this field.
チェックサム存在ビットが1に設定されている場合、チェックサムおよびReserved1フィールドが存在し、チェックサムフィールドには有効な情報が含まれています。準拠した実装は、このフィールドを受け入れて処理する必要があることに注意してください。
A receiver MUST discard a packet where any of bits 1-5 are non-zero, unless that receiver implements RFC 1701. Bits 6-12 are reserved for future use. These bits MUST be sent as zero and MUST be ignored on receipt.
レシーバーがRFC 1701を実装していない限り、レシーバーはビット1〜5のいずれかがゼロ以外であるパケットを破棄する必要があります。ビット6〜12は将来の使用のために予約されています。これらのビットはゼロとして送信する必要があり、受信時に無視する必要があります。
The Version Number field MUST contain the value zero.
バージョン番号フィールドには値ゼロが含まれている必要があります。
The Protocol Type field contains the protocol type of the payload packet. These Protocol Types are defined in [RFC1700] as "ETHER TYPES" and in [ETYPES]. An implementation receiving a packet containing a Protocol Type which is not listed in [RFC1700] or [ETYPES] SHOULD discard the packet.
Protocol Typeフィールドには、ペイロードパケットのプロトコルタイプが含まれます。これらのプロトコルタイプは、[RFC1700]で「ETHER TYPES」および[ETYPES]として定義されています。 [RFC1700]または[ETYPES]にリストされていないプロトコルタイプを含むパケットを受信する実装は、パケットを破棄する必要があります(SHOULD)。
The Checksum field contains the IP (one's complement) checksum sum of the all the 16 bit words in the GRE header and the payload packet. For purposes of computing the checksum, the value of the checksum field is zero. This field is present only if the Checksum Present bit is set to one.
チェックサムフィールドには、GREヘッダーとペイロードパケット内のすべての16ビットワードのIP(1の補数)チェックサム合計が含まれています。チェックサムを計算するために、チェックサムフィールドの値はゼロです。このフィールドは、チェックサム存在ビットが1に設定されている場合にのみ存在します。
The Reserved1 field is reserved for future use, and if present, MUST be transmitted as zero. The Reserved1 field is present only when the Checksum field is present (that is, Checksum Present bit is set to one).
Reserved1フィールドは将来の使用のために予約されており、存在する場合はゼロとして送信する必要があります。 Reserved1フィールドは、チェックサムフィールドが存在する(つまり、チェックサム存在ビットが1に設定されている)場合にのみ存在します。
When IPv4 is being carried as the GRE payload, the Protocol Type field MUST be set to 0x800.
IPv4がGREペイロードとして伝送されている場合、プロトコルタイプフィールドは0x800に設定する必要があります。
When a tunnel endpoint decapsulates a GRE packet which has an IPv4 packet as the payload, the destination address in the IPv4 payload packet header MUST be used to forward the packet and the TTL of the payload packet MUST be decremented. Care should be taken when forwarding such a packet, since if the destination address of the payload packet is the encapsulator of the packet (i.e., the other end of the tunnel), looping can occur. In this case, the packet MUST be discarded.
トンネルエンドポイントがIPv4パケットをペイロードとして持つGREパケットのカプセル化を解除する場合、IPv4ペイロードパケットヘッダーの宛先アドレスを使用してパケットを転送する必要があり、ペイロードパケットのTTLをデクリメントする必要があります。ペイロードパケットの宛先アドレスがパケットのカプセル化元(つまり、トンネルのもう一方の端)である場合、ループが発生する可能性があるため、このようなパケットを転送するときは注意が必要です。この場合、パケットは破棄されなければなりません(MUST)。
The IPv4 protocol 47 [RFC1700] is used when GRE packets are enapsulated in IPv4. See [RFC1122] for requirements relating to the delivery of packets over IPv4 networks.
IPv4プロトコル47 [RFC1700]は、GREパケットがIPv4でカプセル化されるときに使用されます。 IPv4ネットワークを介したパケット配信に関する要件については、[RFC1122]を参照してください。
In RFC 1701, the field described here as Reserved0 contained a number of flag bits which this specification deprecates. In particular, the Routing Present, Key Present, Sequence Number Present, and Strict Source Route bits have been deprecated, along with the Recursion Control field. As a result, the GRE header will never contain the Key, Sequence Number or Routing fields specified in RFC 1701.
RFC 1701では、Reserved0としてここで説明されているフィールドに、この仕様で廃止されたいくつかのフラグビットが含まれていました。特に、ルーティングの存在、キーの存在、シーケンス番号の存在、および厳密なソースルートビットは、再帰制御フィールドとともに非推奨になりました。その結果、GREヘッダーには、RFC 1701で指定されたキー、シーケンス番号、またはルーティングフィールドが含まれることはありません。
There are, however, existing implementations of RFC 1701. The following sections describe correct interoperation with such implementations.
ただし、RFC 1701の既存の実装があります。以下のセクションでは、そのような実装との正しい相互運用について説明します。
An implementation complying to this specification will transmit the Reserved0 field set to zero. An RFC 1701 compliant receiver will interpret this as having the Routing Present, Key Present, Sequence Number Present, and Strict Source Route bits set to zero, and will not expect the RFC 1701 Key, Sequence Number or Routing fields to be present.
この仕様に準拠する実装は、ゼロに設定されたReserved0フィールドを送信します。 RFC 1701準拠の受信者は、これをルーティングの存在、キーの存在、シーケンス番号の存在、および厳密なソースルートビットがゼロに設定されていると解釈し、RFC 1701のキー、シーケンス番号、またはルーティングのフィールドが存在することを期待しません。
An RFC 1701 transmitter may set any of the Routing Present, Key Present, Sequence Number Present, and Strict Source Route bits set to one, and thus may transmit the RFC 1701 Key, Sequence Number or Routing fields in the GRE header. As stated in Section 5.3, a packet with non-zero bits in any of bits 1-5 MUST be discarded unless the receiver implements RFC 1701.
RFC 1701トランスミッタは、ルーティングの存在、キーの存在、シーケンス番号の存在、および厳密なソースルートビットのいずれかに1を設定し、RFC 1701のキー、シーケンス番号、またはルーティングフィールドをGREヘッダーに送信します。セクション5.3で述べたように、ビット1〜5のいずれかにゼロ以外のビットがあるパケットは、受信者がRFC 1701を実装していない限り破棄する必要があります。
Security in a network using GRE should be relatively similar to security in a normal IPv4 network, as routing using GRE follows the same routing that IPv4 uses natively. Route filtering will remain unchanged. However packet filtering requires either that a firewall look inside the GRE packet or that the filtering is done on the GRE tunnel endpoints. In those environments in which this is considered to be a security issue it may be desirable to terminate the tunnel at the firewall.
GREを使用したルーティングは、IPv4がネイティブで使用するのと同じルーティングに従うため、GREを使用したネットワークのセキュリティは、通常のIPv4ネットワークのセキュリティと比較的似ています。ルートフィルタリングは変更されません。ただし、パケットフィルタリングでは、ファイアウォールがGREパケット内を調べるか、GREトンネルエンドポイントでフィルタリングが行われる必要があります。これがセキュリティ問題であると考えられる環境では、ファイアウォールでトンネルを終了することが望ましい場合があります。
This section considers the assignment of additional GRE Version Numbers and Protocol Types.
このセクションでは、追加のGREバージョン番号とプロトコルタイプの割り当てについて検討します。
This document specifies GRE version number 0. GRE version number 1 is used by PPTP [RFC2637]. Additional GRE version numbers are assigned by IETF Consensus as defined in RFC 2434 [RFC2434].
このドキュメントでは、GREバージョン番号0を指定しています。GREバージョン番号1は、PPTP [RFC2637]によって使用されます。 RFC 2434 [RFC2434]で定義されているように、追加のGREバージョン番号がIETFコンセンサスによって割り当てられます。
GRE uses an ETHER Type for the Protocol Type. New ETHER TYPES are assigned by Xerox Systems Institute [RFC1700].
GREはプロトコルタイプにETHERタイプを使用します。新しいETHER TYPESはXerox Systems Institute [RFC1700]によって割り当てられます。
This document is derived from the original ideas of the authors of RFC 1701 and RFC 1702. Hitoshi Asaeda, Scott Bradner, Randy Bush, Brian Carpenter, Bill Fenner, Andy Malis, Thomas Narten, Dave Thaler, Tim Gleeson and others provided many constructive and insightful comments.
このドキュメントは、RFC 1701およびRFC 1702の作成者の元のアイデアから派生しています。浅田仁志、スコットブラドナー、ランディブッシュ、ブライアンカーペンター、ビルフェナー、アンディマリス、トーマスナーテン、デイブターラー、ティムグリーソンなどは、多くの建設的で洞察に満ちたコメント。
This document specifies the behavior of currently deployed GRE implementations. As such, it does not attempt to address the following known issues:
このドキュメントでは、現在デプロイされているGRE実装の動作を指定します。そのため、次の既知の問題に対処することはありません。
o Interaction Path MTU Discovery (PMTU) [RFC1191]
o 相互作用パスMTUディスカバリー(PMTU)[RFC1191]
Existing implementations of GRE, when using IPv4 as the Delivery Header, do not implement Path MTU discovery and do not set the Don't Fragment bit in the Delivery Header. This can cause large packets to become fragmented within the tunnel and reassembled at the tunnel exit (independent of whether the payload packet is using PMTU). If a tunnel entry point were to use Path MTU discovery, however, that tunnel entry point would also need to relay ICMP unreachable error messages (in particular the "fragmentation needed and DF set" code) back to the originator of the packet, which is not a requirement in this specification. Failure to properly relay Path MTU information to an originator can result in the following behavior: the originator sets the don't fragment bit, the packet gets dropped within the tunnel, but since the originator doesn't receive proper feedback, it retransmits with the same PMTU, causing subsequently transmitted packets to be dropped.
GREの既存の実装は、IPv4を配信ヘッダーとして使用する場合、パスMTU検出を実装せず、配信ヘッダーにフラグメントしないビットを設定しません。これにより、(ペイロードパケットがPMTUを使用しているかどうかに関係なく)大きなパケットがトンネル内でフラグメント化され、トンネルの出口で再構成されます。ただし、トンネルエントリポイントがパスMTUディスカバリを使用する場合、そのトンネルエントリポイントは、ICMP到達不能エラーメッセージ(特に「必要なフラグメンテーションとDFセット」コード)をパケットの発信元に中継する必要があります。この仕様の要件ではありません。パスMTU情報を発信元に適切にリレーしないと、次の動作が発生する可能性があります。発信者がフラグメントしないビットを設定すると、パケットはトンネル内でドロップされますが、発信者は適切なフィードバックを受信しないため、同じPMTU。その後送信されるパケットがドロップされます。
o IPv6 as Delivery and/or Payload Protocol
o 配信および/またはペイロードプロトコルとしてのIPv6
This specification describes the intersection of GRE currently deployed by multiple vendors. IPv6 as delivery and/or payload protocol is not included in the currently deployed versions of GRE.
この仕様は、複数のベンダーによって現在展開されているGREの共通部分について説明しています。配信および/またはペイロードプロトコルとしてのIPv6は、現在デプロイされているバージョンのGREには含まれていません。
o Interaction with ICMP
o ICMPとの相互作用
o Interaction with the Differentiated Services Architecture
o DiffServアーキテクチャとの相互作用
o Multiple and Looping Encapsulations
o 複数のループするカプセル化
[ETYPES] ftp://ftp.isi.edu/in-notes/iana/assignments/ethernet- numbers
[RFC1122] Braden, R., "Requirements for Internet hosts - communication layers", STD 3, RFC 1122, October 1989.
[RFC1122] Braden、R。、「インターネットホストの要件-通信層」、STD 3、RFC 1122、1989年10月。
[RFC1191] Mogul, J. and S. Deering, "Path MTU Discovery", RFC 1191, November 1990.
[RFC1191] Mogul、J。およびS. Deering、「Path MTU Discovery」、RFC 1191、1990年11月。
[RFC1226] Kantor, B., "Internet Protocol Encapsulation of AX.25 Frames", RFC 1226, May 1991.
[RFC1226] Kantor、B。、「AX.25フレームのインターネットプロトコルカプセル化」、RFC 1226、1991年5月。
[RFC1234] Provan, D., "Tunneling IPX Traffic through IP Networks", RFC 1234, June 1991.
[RFC1234] Provan、D。、「IPネットワークを介したIPXトラフィックのトンネリング」、RFC 1234、1991年6月。
[RFC1241] Woodburn, R. and D. Mills, "Scheme for an Internet Encapsulation Protocol: Version 1", RFC 1241, July 1991.
[RFC1241] Woodburn、R.およびD. Mills、「Scheme for an Internet Encapsulation Protocol:Version 1」、RFC 1241、1991年7月。
[RFC1326] Tsuchiya, P., "Mutual Encapsulation Considered Dangerous", RFC 1326, May 1992.
[RFC1326] Tsuchiya、P.、「危険な相互カプセル化」、RFC 1326、1992年5月。
[RFC1479] Steenstrup, M., "Inter-Domain Policy Routing Protocol Specification: Version 1", RFC 1479, July 1993.
[RFC1479] Steenstrup、M。、「Inter-Domain Policy Routing Protocol Specification:Version 1」、RFC 1479、1993年7月。
[RFC1700] Reynolds, J. and J. Postel, "Assigned Numbers", STD 2, RFC 1700, October 1994.
[RFC1700] Reynolds、J。およびJ. Postel、「Assigned Numbers」、STD 2、RFC 1700、1994年10月。
[RFC1701] Hanks, S., Li, T., Farinacci, D. and P. Traina, "Generic Routing Encapsulation", RFC 1701, October 1994.
[RFC1701] Hanks、S.、Li、T.、Farinacci、D。、およびP. Traina、「Generic Routing Encapsulation」、RFC 1701、1994年10月。
[RFC1702] Hanks, S., Li, T., Farinacci, D. and P. Traina, "Generic Routing Encapsulation over IPv4 networks", RFC 1702, October 1994.
[RFC1702] Hanks、S.、Li、T.、Farinacci、D。、およびP. Traina、「IPv4ネットワーク上の汎用ルーティングカプセル化」、RFC 1702、1994年10月。
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March, 1997.
[RFC2119] Bradner、S。、「要件レベルを示すためにRFCで使用するキーワード」、BCP 14、RFC 2119、1997年3月。
[RFC2408] Maughan, D., Schertler, M., Schneider, M. and J. Turner, "Internet Security Association and Key Management Protocol (ISAKMP)", RFC 2408, November 1998.
[RFC2408]モーガンD.、シャートラーM.、シュナイダーM.およびJ.ターナー、「インターネットセキュリティアソシエーションおよびキー管理プロトコル(ISAKMP)」、RFC 2408、1998年11月。
[RFC2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 2434, October, 1998.
[RFC2434] Narten、T。およびH. Alvestrand、「RFCでIANAの考慮事項セクションを作成するためのガイドライン」、BCP 26、RFC 2434、1998年10月。
[RFC2637] Hamzeh, K., et al., "Point-to-Point Tunneling Protocol (PPTP)", RFC 2637, July, 1999.
[RFC2637] Hamzeh、K.他、「Point-to-Point Tunneling Protocol(PPTP)」、RFC 2637、1999年7月。
Dino Farinacci Procket Networks 3850 No. First St., Ste. C San Jose, CA 95134
Dino Farinacci Procket Networks 3850 No. First St.、Ste。 Cサンノゼ、カリフォルニア95134
EMail: dino@procket.com
Tony Li Procket Networks 3850 No. First St., Ste. C San Jose, CA 95134
Tony Li Procket Networks 3850 No. First St.、Ste。 Cサンノゼ、カリフォルニア95134
Phone: +1 408 954 7903 Fax: +1 408 987 6166 EMail: tony1@home.net
Stan Hanks Enron Communications
スタンハンクスエンロンコミュニケーションズ
EMail: stan_hanks@enron.net
David Meyer Cisco Systems, Inc. 170 Tasman Drive San Jose, CA, 95134
David Meyer Cisco Systems、Inc.170 Tasman Drive San Jose、CA、95134
EMail: dmm@cisco.com
Paul Traina Juniper Networks EMail: pst@juniper.net
Paul Traina Juniper Networks Eメール:pst@juniper.net
Copyright (C) The Internet Society (2000). All Rights Reserved.
Copyright(C)The Internet Society(2000)。全著作権所有。
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.
このドキュメントとその翻訳はコピーして他のユーザーに提供することができ、コメントまたはその他の方法で説明したり、その実装を支援する派生物を、全体または一部を問わず、準備、コピー、公開、配布することができます。ただし、上記の著作権表示とこの段落は、そのようなすべてのコピーと派生物に含まれています。ただし、このドキュメント自体は、著作権に関する通知を削除したり、インターネットソサエティや他のインターネット組織への参照を削除したりするなど、いかなる方法でも変更できません。ただし、インターネット標準を開発する目的で必要な場合は除きます。インターネット標準のプロセスに従うか、または必要に応じて、それを英語以外の言語に翻訳する必要があります。
The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.
上記で付与された制限付きのアクセス許可は永続的であり、インターネットソサエティまたはその後継者または譲受人によって取り消されることはありません。
This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
このドキュメントとここに含まれる情報は「現状有姿」で提供され、インターネット社会およびインターネット技術タスクフォースは、明示または黙示を問わず、ここに記載されている情報の使用が保証するものに限定されないいかなる保証も含め、一切の保証を否認します。商品性または特定の目的への適合性に関する権利または黙示の保証を侵害すること。
Acknowledgement
謝辞
Funding for the RFC Editor function is currently provided by the Internet Society.
RFC Editor機能への資金提供は、現在Internet Societyから提供されています。