RFC5382 日本語訳

5382 NAT Behavioral Requirements for TCP. S. Guha, Ed., K. Biswas, B.Ford, S. Sivakumar, P. Srisuresh. October 2008. (Format: TXT=50306 bytes) (Also BCP0142) (Status: BEST CURRENT PRACTICE)
プログラムでの自動翻訳です。
英語原文

Network Working Group                                       S. Guha, Ed.
Request for Comments: 5382                                    Cornell U.
BCP: 142                                                       K. Biswas
Category: Best Current Practice                            Cisco Systems
                                                                 B. Ford
                                                                 MPI-SWS
                                                            S. Sivakumar
                                                           Cisco Systems
                                                            P. Srisuresh
                                                          Kazeon Systems
                                                            October 2008

ワーキンググループのS.グーハ、エドをネットワークでつないでください。コメントのために以下を要求してください。 5382コーネルU.BCP: 142K.ビスワスカテゴリ: 最も良い現在の練習のSivakumarシスコシステムズP.Srisuresh KazeonシステムシスコシステムズB.フォードMPI-SWS S.2008年10月

                  NAT Behavioral Requirements for TCP

TCPのためのNATの行動の要件

Status of This Memo

このメモの状態

   This document specifies an Internet Best Current Practices for the
   Internet Community, and requests discussion and suggestions for
   improvements.  Distribution of this memo is unlimited.

このドキュメントはインターネット共同体、要求議論、および提案のためのインターネットBest Current Practicesを改良に指定します。 このメモの分配は無制限です。

Abstract

要約

   This document defines a set of requirements for NATs that handle TCP
   that would allow many applications, such as peer-to-peer applications
   and online games to work consistently.  Developing NATs that meet
   this set of requirements will greatly increase the likelihood that
   these applications will function properly.

このドキュメントは多くのアプリケーションを許容するTCPを扱うNATsのための1セットの要件を定義します、ピアツーピアアプリケーションや一貫して扱うオンラインゲームのように。 このセットの必要条件を満たす展開しているNATsがこれらのアプリケーションが適切に機能する可能性を大いに広げるでしょう。

Guha, et al.             Best Current Practice                  [Page 1]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[1ページ]RFC5382NAT TCP要件2008年10月

Table of Contents

目次

   1.  Applicability Statement  . . . . . . . . . . . . . . . . . . .  3
   2.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   3.  Terminology  . . . . . . . . . . . . . . . . . . . . . . . . .  4
   4.  TCP Connection Initiation  . . . . . . . . . . . . . . . . . .  4
     4.1.  Address and Port Mapping Behavior  . . . . . . . . . . . .  5
     4.2.  Internally Initiated Connections . . . . . . . . . . . . .  5
     4.3.  Externally Initiated Connections . . . . . . . . . . . . .  7
   5.  NAT Session Refresh  . . . . . . . . . . . . . . . . . . . . . 10
   6.  Application Level Gateways . . . . . . . . . . . . . . . . . . 12
   7.  Other Requirements Applicable to TCP . . . . . . . . . . . . . 12
     7.1.  Port Assignment  . . . . . . . . . . . . . . . . . . . . . 12
     7.2.  Hairpinning Behavior . . . . . . . . . . . . . . . . . . . 13
     7.3.  ICMP Responses to TCP Packets  . . . . . . . . . . . . . . 13
   8.  Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 14
   9.  Security Considerations  . . . . . . . . . . . . . . . . . . . 16
   10. Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . 17
   11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 18
     11.1. Normative References . . . . . . . . . . . . . . . . . . . 18
     11.2. Informational References . . . . . . . . . . . . . . . . . 18

1. 適用性証明. . . . . . . . . . . . . . . . . . . 3 2。 序論. . . . . . . . . . . . . . . . . . . . . . . . . 3 3。 用語. . . . . . . . . . . . . . . . . . . . . . . . . 4 4。 TCP接続開始. . . . . . . . . . . . . . . . . . 4 4.1。 マッピングの振舞い. . . . . . . . . . . . 5 4.2を記述して、移植してください。 内部的に開始しているコネクションズ. . . . . . . . . . . . . 5 4.3。 外部的に開始しているコネクションズ. . . . . . . . . . . . . 7 5。 NATセッションは.106をリフレッシュします。 アプリケーションレベルゲートウェイ. . . . . . . . . . . . . . . . . . 12 7。 TCP. . . . . . . . . . . . . 12 7.1に適切な他の要件。 課題. . . . . . . . . . . . . . . . . . . . . 12 7.2を移植してください。 振舞い. . . . . . . . . . . . . . . . . . . 13 7.3をHairpinningします。 TCPパケット. . . . . . . . . . . . . . 13 8へのICMP応答。 要件. . . . . . . . . . . . . . . . . . . . . . . . . 14 9。 セキュリティ問題. . . . . . . . . . . . . . . . . . . 16 10。 承認. . . . . . . . . . . . . . . . . . . . . . . 17 11。 参照. . . . . . . . . . . . . . . . . . . . . . . . . . 18 11.1。 引用規格. . . . . . . . . . . . . . . . . . . 18 11.2。 情報の参照. . . . . . . . . . . . . . . . . 18

Guha, et al.             Best Current Practice                  [Page 2]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[2ページ]RFC5382NAT TCP要件2008年10月

1.  Applicability Statement

1. 適用性証明

   This document is adjunct to [BEHAVE-UDP], which defines many terms
   relating to NATs, lays out general requirements for all NATs, and
   sets requirements for NATs that handle IP and unicast UDP traffic.
   The purpose of this document is to set requirements for NATs that
   handle TCP traffic.

このドキュメントは[BEHAVE-UDP]への付属物です。(それは、NATsに関連しながら多くの用語を定義して、すべてのNATsのために一般的な要件を広げて、IPを扱うNATsとユニキャストUDP交通に必要条件を定めます)。 このドキュメントの目的はTCP交通を扱うNATsのために必要条件を定めることです。

   The requirements of this specification apply to traditional NATs as
   described in [RFC2663].

この仕様の要件は[RFC2663]で説明されるように伝統的なNATsに適用されます。

   This document only covers the TCP aspects of NAT traversal.
   Middlebox behavior that is not necessary for network address
   translation of TCP is out of scope.  Packet inspection above the TCP
   layer and firewalls are out of scope except for Application Level
   Gateway (ALG) behavior that may interfere with NAT traversal.
   Application and OS aspects of TCP NAT traversal are out of scope.
   Signaling-based approaches to NAT traversal, such as Middlebox
   Communication (MIDCOM) and Universal Plug and Play (UPnP), that
   directly control the NAT are out of scope.  Finally, TCP connections
   intended for the NAT (e.g., an HTTP or Secure Shell Protocol (SSH)
   management interface) and TCP connections initiated by the NAT (e.g.,
   reliable syslog client) are out of scope.

このドキュメントはNAT縦断のTCP局面をカバーするだけです。 範囲の外にTCPのネットワークアドレス変換に必要でないMiddleboxの振舞いがあります。 NAT縦断を妨げるかもしれないApplication Levelゲートウェイ(ALG)の振舞い以外の範囲の外にTCP層とファイアウォールの上のパケット点検があります。 範囲の外にTCP NAT縦断の利用とOS局面があります。 範囲の外に直接NATを制御するMiddlebox CommunicationなどのNAT縦断(MIDCOM)とUniversal Plug and Play(UPnP)へのシグナリングベースのアプローチがあります。 最終的に、範囲の外にNATのために意図するTCP接続(例えば、HTTPかSecureシェルプロトコル(SSH)管理インタフェース)とNATによって開始されたTCP接続(例えば、頼もしいsyslogクライアント)があります。

2.  Introduction

2. 序論

   Network Address Translators (NATs) hinder connectivity in
   applications where sessions may be initiated to internal hosts.
   Readers may refer to [RFC3022] for detailed information on
   traditional NATs.  [BEHAVE-UDP] lays out the terminology and
   requirements for NATs in the context of IP and UDP.  This document
   supplements these by setting requirements for NATs that handle TCP
   traffic.  All definitions and requirements in [BEHAVE-UDP] are
   inherited here.

ネットワークAddress Translators(NATs)はセッションが内部のホストに開始されるかもしれないアプリケーションにおける接続性を妨げます。 読者は伝統的なNATsの詳細な情報について[RFC3022]を参照するかもしれません。 [BEHAVE-UDP]はIPとUDPの文脈のNATsのための用語と要件を広げます。 このドキュメントは、TCP交通を扱うNATsのために必要条件を定めることによって、これらを補います。 [BEHAVE-UDP]のすべての定義と要件はここで引き継がれます。

   [RFC4614] chronicles the evolution of TCP from the original
   definition [RFC0793] to present-day implementations.  While much has
   changed in TCP with regards to congestion control and flow control,
   security, and support for high-bandwidth networks, the process of
   initiating a connection (i.e., the 3-way handshake or simultaneous-
   open) has changed little.  It is the process of connection initiation
   that NATs affect the most.  Experimental approaches such as T/TCP
   [RFC1644] have proposed alternate connection initiation approaches,
   but have been found to be complex and susceptible to denial-of-
   service attacks.  Modern operating systems and NATs consequently
   primarily support the 3-way handshake and simultaneous-open modes of
   connection initiation as described in [RFC0793].

[RFC4614]はTCPのオリジナルの定義[RFC0793]から現代の実現までの発展を記録にとどめます。 あいさつに応じて多くがTCPで高帯域ネットワークの輻輳制御、フロー制御、セキュリティ、およびサポートに変化する間、接続(すなわち、3ウェイ握手か同時の戸外)を開始する過程は少ししか変えていません。 それはNATsが最も影響する接続開始の過程です。 T/TCP[RFC1644]などの実験的なアプローチが交互の接続開始アプローチを提案しましたが、否定に複雑であって、影響されやすいと確かめられてください、そうした、-、サービス攻撃について。 その結果、近代的なオペレーティングシステムとNATsは[RFC0793]で説明されるように主として接続開始の3ウェイ握手と同時のオープン形式を支持します。

Guha, et al.             Best Current Practice                  [Page 3]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[3ページ]RFC5382NAT TCP要件2008年10月

   Recently, many techniques have been devised to make peer-to-peer TCP
   applications work across NATs.  [STUNT], [NATBLASTER], and [P2PNAT]
   describe Unilateral Self-Address Fixing (UNSAF) mechanisms that allow
   peer-to-peer applications to establish TCP through NATs.  These
   approaches require only endpoint applications to be modified and work
   with standards compliant OS stacks.  The approaches, however, depend
   on specific NAT behavior that is usually, but not always, supported
   by NATs (see [TCPTRAV] and [P2PNAT] for details).  Consequently, a
   complete TCP NAT traversal solution is sometimes forced to rely on
   public TCP relays to traverse NATs that do not cooperate.  This
   document defines requirements that ensure that TCP NAT traversal
   approaches are not forced to use data relays.

最近、多くのテクニックが、ピアツーピアTCPアプリケーションをNATsの向こう側に働かせるように工夫されました。 [STUNT]、[NATBLASTER]、および[P2PNAT]はピアツーピアアプリケーションがNATsを通してTCPを設立できるUnilateral Self-アドレスFixing(UNSAF)メカニズムについて説明します。 これらのアプローチは、終点アプリケーションだけが変更されるのを必要とします、そして、規格対応することのOSとの仕事は積み重ねられます。 しかしながら、通常、そうである特定のNATの振舞いによりますが、アプローチはいつもよるというわけではありません、NATsによって支持されて(詳細に関して[TCPTRAV]と[P2PNAT]を見てください)。 その結果、完全なTCP NAT縦断対策は、協力しないNATsを横断するために時々やむを得ず公共のTCPリレーに依存します。 このドキュメントはTCP NAT縦断アプローチがやむを得ずデータリレーを使用しないのを確実にする要件を定義します。

3.  Terminology

3. 用語

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

キーワード“MUST"、「必須NOT」が「必要です」、“SHALL"、「」、“SHOULD"、「「推薦され」て、「5月」の、そして、「任意」のNOTは[RFC2119]で説明されるように本書では解釈されることであるべきですか?

   "NAT" in this specification includes both "Basic NAT" and "Network
   Address/Port Translator (NAPT)" [RFC2663].  The term "NAT Session" is
   adapted from [NAT-MIB] and is defined as follows.

この仕様による「NAT」は「基本的なNAT」と「ネットワーク・アドレス/ポート翻訳者(NAPT)」[RFC2663]の両方を含んでいます。 「NATセッション」という用語は、[NAT-MIB]から適合させられて、以下の通り定義されます。

   NAT Session - A NAT session is an association between a TCP session
   as seen in the internal realm and a TCP session as seen in the
   external realm, by virtue of NAT translation.  The NAT session will
   provide the translation glue between the two session representations.

NAT Session--NATセッションはNAT翻訳によって外部の分野で見られるように内部の分野で見られるTCPセッションとTCPセッションとの協会です。 NATセッションは2つのセッション表現の間に翻訳接着剤を提供するでしょう。

   This document uses the term "TCP connection" (or just "connection")
   to refer to individual TCP flows identified by the 4-tuple (source
   and destination IP address and TCP port) and the initial sequence
   numbers (ISN).

このドキュメントは、4-tuple(ソース、送付先IPアドレス、およびTCPポート)と初期シーケンス番号(ISN)によって特定された個々のTCP流れについて言及するのに「TCP接続」(または、まさしく「接続」)という用語を使用します。

   This document uses the term "address and port mapping" (or just
   "mapping") as defined in [BEHAVE-UDP] to refer to state at the NAT
   necessary for network address and port translation of TCP
   connections.  This document also uses the terms "Endpoint-Independent
   Mapping", "Address-Dependent Mapping", "Address and Port-Dependent
   Mapping", "filtering behavior", "Endpoint-Independent Filtering",
   "Address-Dependent Filtering", "Address and Port-Dependent
   Filtering", "Port assignment", "Port overloading", "hairpinning", and
   "External source IP address and port" as defined in [BEHAVE-UDP].

このドキュメントはネットワーク・アドレスに必要なNATで状態について言及して、TCP接続に関する翻訳を移植するために[BEHAVE-UDP]で定義されるように「アドレスとポートマッピング」(または、まさしく「マッピング」)という用語を使用します。 また、このドキュメントは[BEHAVE-UDP]で定義されるように「振舞いをフィルターにかけ」て、「ポート課題」という「終点から独立しているフィルタリング」と、「アドレス依存するフィルタリング」と、「アドレスとポート依存するフィルタリング」が「積みすぎを移植する」という「終点から独立しているマッピング」と、「アドレス依存するマッピング」と、「アドレスとポート依存するマッピング」という用語「hairpinning」、および「外部電源IPアドレスとポート」を使用します。

4.  TCP Connection Initiation

4. TCP接続開始

   This section describes various NAT behaviors applicable to TCP
   connection initiation.

このセクションはTCP接続開始に適切な様々なNATの振舞いについて説明します。

Guha, et al.             Best Current Practice                  [Page 4]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[4ページ]RFC5382NAT TCP要件2008年10月

4.1.  Address and Port Mapping Behavior

4.1. 振舞いを写像するアドレスとポート

   A NAT uses a mapping to translate packets for each TCP connection.  A
   mapping is dynamically allocated for connections initiated from the
   internal side, and potentially reused for certain subsequent
   connections.  NAT behavior regarding when a mapping can be reused
   differs for different NATs as described in [BEHAVE-UDP].

NATは、それぞれのTCP接続のためにパケットを翻訳するのにマッピングを使用します。 マッピングは、内部側から開始された接続のためにダイナミックに割り当てられて、確信しているその後の接続のために潜在的に再利用されます。 マッピングを再利用できる時に関するNATの振舞いは異なったNATsのために[BEHAVE-UDP]で説明されるように異なります。

   Consider an internal IP address and TCP port (X:x) that initiates a
   TCP connection to an external (Y1:y1) tuple.  Let the mapping
   allocated by the NAT for this connection be (X1':x1').  Shortly
   thereafter, the endpoint initiates a connection from the same (X:x)
   to an external address (Y2:y2) and gets the mapping (X2':x2') on the
   NAT.  As per [BEHAVE-UDP], if (X1':x1') equals (X2':x2') for all
   values of (Y2:y2), then the NAT is defined to have "Endpoint-
   Independent Mapping" behavior.  If (X1':x1') equals (X2':x2') only
   when Y2 equals Y1, then the NAT is defined to have "Address-Dependent
   Mapping" behavior.  If (X1':x1') equals (X2':x2') only when (Y2:y2)
   equals (Y1:y1), possible only for consecutive connections to the same
   external address shortly after the first is terminated and if the NAT
   retains state for connections in TIME_WAIT state, then the NAT is
   defined to have "Address and Port-Dependent Mapping" behavior.  This
   document introduces one additional behavior where (X1':x1') never
   equals (X2':x2'), that is, for each connection a new mapping is
   allocated; in such a case, the NAT is defined to have "Connection-
   Dependent Mapping" behavior.

内部のIPアドレスとTCPが外部(Y1: y1)のtupleにTCP接続を開始する(X: x)を移植すると考えてください。 'この接続のためにNATによって割り当てられたマッピングをさせてください、(X1、': x1'、) '終点がその後まもなく同じくらい(X: x)から外部アドレス(Y2: y2)までの接続を開始して、マッピングを得る、(X2、': x2'、)、NATで。 '[BEHAVE-UDP]のように(X1、': x1'、)、同輩、(X2、': x2'、)、そして、(Y2: y2)のすべての値において、NATは、「終点の独立しているマッピング」の振舞いを持つために定義されます。 '、(X1、': x1'、)、同輩、(X2、': x2'、)、Y2がY1と等しい場合にだけ、NATは、「アドレス依存するマッピング」の振舞いを持つために定義されます。 '、(X1、': x1'、)、同輩、(X2、いつだけの(Y2: y2)同輩(Y1: y1)の、そして、連続した接続だけに、すぐ1日以降同じ外部アドレスに可能な': x2'は終えられるか、そして、NATが中のタイム誌_WAITが述べる接続のための状態を保有するなら、NATは、「アドレスとポート依存するマッピング」の振舞いを持つために定義されます。 'このドキュメントが、ある追加振舞いを導入する、どこ、(X1、': x1'、)、決して同輩でない、(X2、': x2'、)、すなわち、各接続において、新しいマッピングを割り当てます。 このような場合には、NATは、「接続の依存するマッピング」の振舞いを持つために定義されます。

   REQ-1:  A NAT MUST have an "Endpoint-Independent Mapping" behavior
      for TCP.

REQ-1: NATには、TCPのための「終点から独立しているマッピング」の振舞いがなければなりません。

   Justification:  REQ-1 is necessary for UNSAF methods to work.
      Endpoint-Independent Mapping behavior allows peer-to-peer
      applications to learn and advertise the external IP address and
      port allocated to an internal endpoint such that external peers
      can contact it (subject to the NAT's security policy).  The
      security policy of a NAT is independent of its mapping behavior
      and is discussed later in Section 4.3.  Having Endpoint-
      Independent Mapping behavior allows peer-to-peer applications to
      work consistently without compromising the security benefits of
      the NAT.

正当化: REQ-1が働くUNSAF方法に必要です。 終点から独立しているMappingの振舞いで、ピアツーピアアプリケーションは、外部の同輩がそれ(NATの安全保障政策を条件とした)に連絡できるように内部の終点に割り当てられた外部のIPアドレスとポートの、学んで、広告を出します。 NATの安全保障政策について、振舞いを写像するのから独立していて、後でセクション4.3で議論します。 Endpointの独立しているMappingの振舞いを持っているのに、NATのセキュリティ利益で妥協しないで、ピアツーピアアプリケーションは一貫して動作します。

4.2.  Internally Initiated Connections

4.2. 内部的に開始しているコネクションズ

   An internal endpoint initiates a TCP connection through a NAT by
   sending a SYN packet.  The NAT allocates (or reuses) a mapping for
   the connection, as described in the previous section.  The mapping
   defines the external IP address and port used for translation of all
   packets for that connection.  In particular, for client-server

内部の終点は、NATを通してSYNパケットを送ることによって、TCP接続を開始します。 NATは接続のために前項で説明されるようにマッピングを割り当てます(または、再利用)。 マッピングはその接続のためにすべてのパケットに関する翻訳に使用される外部のIPアドレスとポートを定義します。 クライアント/サーバのための事項で

Guha, et al.             Best Current Practice                  [Page 5]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[5ページ]RFC5382NAT TCP要件2008年10月

   applications where an internal client initiates the connection to an
   external server, the mapping is used to translate the outbound SYN,
   the resulting inbound SYN-ACK response, the subsequent outbound ACK,
   and other packets for the connection.  This method of connection
   initiation corresponds to the 3-way handshake (defined in [RFC0793])
   and is supported by all NATs.

内部のクライアントが外部のサーバに接続を開始するアプリケーション、マッピングは外国行きのSYNを翻訳するのに使用されます、結果として起こる本国行きのSYN-ACK応答、接続のためのその後の外国行きのACKの、そして、他のパケット。 接続開始のこの方法は、3ウェイ握手([RFC0793]では、定義される)に対応している、すべてのNATsによって支持されます。

   Peer-to-peer applications use an alternate method of connection
   initiation termed simultaneous-open (Fig. 8, [RFC0793]) to traverse
   NATs.  In the simultaneous-open mode of operation, both peers send
   SYN packets for the same TCP connection.  The SYN packets cross in
   the network.  Upon receiving the other end's SYN packet, each end
   responds with a SYN-ACK packet, which also cross in the network.  The
   connection is considered established once the SYN-ACKs are received.
   From the perspective of the NAT, the internal host's SYN packet is
   met by an inbound SYN packet for the same connection (as opposed to a
   SYN-ACK packet during a 3-way handshake).  Subsequent to this
   exchange, both an outbound and an inbound SYN-ACK are seen for the
   connection.  Some NATs erroneously block the inbound SYN for the
   connection in progress.  Some NATs block or incorrectly translate the
   outbound SYN-ACK.  Such behavior breaks TCP simultaneous-open and
   prevents peer-to-peer applications from functioning correctly behind
   a NAT.

ピアツーピアアプリケーションは横断するために同時、開いている(図8、[RFC0793])NATsと呼ばれた接続開始の代替方法を使用します。 操作の同時のオープン形式で、両方の同輩は同じTCP接続のためにパケットをSYNに送ります。 SYNパケットはネットワークで交差しています。 もう一方の端のSYNパケットを受けると、各端はSYN-ACKパケットで応じます(また、ネットワークで交差しています)。 SYN-ACKsがいったん受け取られているようになると、接続は確立していると考えられます。 NATの見解から、内部のホストのSYNパケットは同じ接続(3ウェイ握手の間のSYN-ACKパケットと対照的に)のために本国行きのSYNパケットによって触れられます。 この交換にその後の、そして、外国行きの、そして、本国行きの両方のSYN-ACKは接続に関して見られます。 いくつかのNATsが進行中の接続のために誤って本国行きのSYNを妨げます。 何らかのNATsブロックか不当に外国行きのSYN-ACKを翻訳してください。 そのような振舞いは、TCPを壊して、同時、開いて、ピアツーピアアプリケーションがNATの後ろで正しく機能するのを防ぎます。

   In order to provide network address translation service for TCP, it
   is necessary for a NAT to correctly receive, translate, and forward
   all packets for a connection that conform to valid transitions of the
   TCP State-Machine (Fig. 6, [RFC0793]).

ネットワーク・アドレス翻訳サービスをTCPに供給するために、NATが正しく接続のためのTCP州-マシン(図6、[RFC0793])の有効な変遷に従うすべてのパケットを受けて、翻訳して、進めるのが必要です。

   REQ-2:  A NAT MUST support all valid sequences of TCP packets
      (defined in [RFC0793]) for connections initiated both internally
      as well as externally when the connection is permitted by the NAT.
      In particular:
      a) In addition to handling the TCP 3-way handshake mode of
         connection initiation, A NAT MUST handle the TCP simultaneous-
         open mode of connection initiation.

REQ-2: NATは接続がNATによって受入れられるとき内部的に外部的に開始された接続のためにTCPパケット([RFC0793]では、定義される)のすべての有効な系列をサポートしなければなりません。 特に: a) 接続開始のTCP3ウェイ握手モードを扱うことに加えて、A NATは接続開始のTCPの同時のオープン形式を扱わなければなりません。

   Justification:  The intent of this requirement is to allow standards
      compliant TCP stacks to traverse NATs no matter what path the
      stacks take through the TCP state-machine and no matter which end
      initiates the connection as long as the connection is permitted by
      the filtering policy of the NAT (filtering policy is described in
      the following section).
      a) In addition to TCP packets for a 3-way handshake, A NAT must be
         prepared to accept an inbound SYN and an outbound SYN-ACK for
         an internally initiated connection in order to support
         simultaneous-open.

正当化: この要件の意図はスタックがTCP州マシンを通してどんな経路を取るか、そして、接続がNATのフィルタリング方針で受入れられる限り、どの終わりが接続を開始しても言いなりになっているTCPがNATsを横断するために積み重ねる規格に. (方針をフィルターにかけるのは以下のセクションで説明されます)a)を許容することです。 3ウェイ握手のためのTCPパケットに加えて、同時の戸外を支持して、内部的に開始している接続のために本国行きのSYNと外国行きのSYN-ACKを受け入れるようにA NATを準備しなければなりません。

Guha, et al.             Best Current Practice                  [Page 6]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[6ページ]RFC5382NAT TCP要件2008年10月

4.3.  Externally Initiated Connections

4.3. 外部的に開始しているコネクションズ

   The NAT allocates a mapping for the first connection initiated by an
   internal endpoint to an external endpoint.  In some scenarios, the
   NAT's policy may allow this mapping to be reused for connections
   initiated from the external side to the internal endpoint.  Consider
   as before an internal IP address and port (X:x) that is assigned (or
   reuses) a mapping (X1':x1') when it initiates a connection to an
   external (Y1:y1).  An external endpoint (Y2:y2) attempts to initiate
   a connection with the internal endpoint by sending a SYN to
   (X1':x1').  A NAT can choose to either allow the connection to be
   established, or to disallow the connection.  If the NAT chooses to
   allow the connection, it translates the inbound SYN and routes it to
   (X:x) as per the existing mapping.  It also translates the SYN-ACK
   generated by (X:x) in response and routes it to (Y2:y2), and so on.
   Alternately, the NAT can disallow the connection by filtering the
   inbound SYN.

NATは内部の終点によって開始された最初の接続のために外部の終点にマッピングを割り当てます。 いくつかのシナリオでは、NATの方針は、このマッピングが外部側から内部の終点まで開始された接続のために再利用されるのを許容するかもしれません。 '従来と同様内部のIPがアドレスとマッピングが割り当てられる(または、再利用)ポート(X: x)であると考えてください、(X1、': x1'、)、外部(Y1: y1)に接続を開始するとき。 SYNを送る内部の終点との接続を開始する、'外部の終点(Y2: y2)が、試みる(X1、': x1'、) NATは、接続が設立されるか、または接続を禁じるのを許容するのを選ぶことができます。 NATが、接続を許すのを選ぶなら、それは、既存のマッピングに従って本国行きのSYNを翻訳して、(X: x)にそれを発送します。 それは、また、応答で(X: x)で発生するSYN-ACKを翻訳して、(Y2: y2)などにそれを発送します。 交互に、NATは、本国行きのSYNをフィルターにかけることによって、接続を禁じることができます。

   A NAT may allow an existing mapping to be reused by an externally
   initiated connection if its security policy permits.  Several
   different policies are possible as described in [BEHAVE-UDP].  If a
   NAT allows the connection initiation from all (Y2:y2), then it is
   defined to have "Endpoint-Independent Filtering" behavior.  If the
   NAT allows connection initiations only when Y2 equals Y1, then the
   NAT is defined to have "Address-Dependent Filtering" behavior.  If
   the NAT allows connection initiations only when (Y2:y2) equals
   (Y1:y1), then the NAT is defined to have "Address and Port-Dependent
   Filtering" behavior (possible only shortly after the first connection
   has been terminated but the mapping is still active).  One additional
   filtering behavior defined in this document is when the NAT does not
   allow any connection initiations from the external side; in such
   cases, the NAT is defined to have "Connection-Dependent Filtering"
   behavior.  The difference between "Address and Port-Dependent
   Filtering" and "Connection-Dependent Filtering" behavior is that the
   former permits an inbound SYN during the TIME_WAIT state of the first
   connection to initiate a new connection while the latter does not.

安全保障政策が可能にするなら、NATは、既存のマッピングが外部的に開始している接続によって再利用されるのを許容するかもしれません。 いくつかの異なった方針が[BEHAVE-UDP]で説明されるように可能です。 NATがすべて(Y2: y2)から接続開始を許容するなら、それは、「終点から独立しているフィルタリング」の振舞いを持つために定義されます。 Y2がY1と等しいときにだけ、NATが接続開始を許容するなら、NATは、「アドレス依存するフィルタリング」の振舞いを持つために定義されます。 (Y2: y2)が(Y1: y1)と等しいときにだけ、NATが接続開始を許容するなら、NATは、(まもなくだけ、可能最初の接続が終えられた後にマッピングだけがまだアクティブであることを)であるのに「アドレスとポート依存するフィルタリング」の振舞いを持つために定義されます。 振舞いが定義した1つの追加フィルタリングが本書ではNATが外部側から少しの接続開始も許容しない時です。 そのような場合、NATは、「接続依存するフィルタリング」の振舞いを持つために定義されます。 「アドレスとポート依存するフィルタリング」の違いと「接続依存するフィルタリング」の振舞いは後者が可能にしませんが、前者が新しい接続を開始する最初の接続のタイム誌_WAIT状態の間本国行きのSYNを可能にするということです。

   REQ-3:  If application transparency is most important, it is
      RECOMMENDED that a NAT have an "Endpoint-Independent Filtering"
      behavior for TCP.  If a more stringent filtering behavior is most
      important, it is RECOMMENDED that a NAT have an "Address-Dependent
      Filtering" behavior.
      a) The filtering behavior MAY be an option configurable by the
         administrator of the NAT.
      b) The filtering behavior for TCP MAY be independent of the
         filtering behavior for UDP.

REQ-3: アプリケーション透明が最も重要であるなら、NATにはTCPのための「終点から独立しているフィルタリング」の振舞いがあるのは、RECOMMENDEDです。 より厳しいフィルタリングの振舞いが最も重要であるなら、NATには「アドレス依存するフィルタリング」振舞いa)があるのは、RECOMMENDEDです。 フィルタリングの振舞いは. NATの管理者が構成可能なオプションがb)であったならそうするかもしれません。 TCP MAYのためのフィルタリングの振舞いはUDPのためのフィルタリングの振舞いの如何にかかわらずそうです。

Guha, et al.             Best Current Practice                  [Page 7]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[7ページ]RFC5382NAT TCP要件2008年10月

   Justification:  The intent of this requirement is to allow peer-to-
      peer applications that do not always initiate connections from the
      internal side of the NAT to continue to work in the presence of
      NATs.  This behavior also allows applications behind a BEHAVE
      compliant NAT to inter-operate with remote endpoints that are
      behind non-BEHAVE compliant (legacy) NATs.  If the remote
      endpoint's NAT does not have Endpoint-Independent Mapping behavior
      but has only one external IP address, then an application can
      still traverse the combination of the two NATs if the local NAT
      has Address-Dependent Filtering.  Section 9 contains a detailed
      discussion on the security implications of this requirement.

正当化: この要件の意図は同輩から同輩へのNAT内部側から接続をいつも開始するというわけではないアプリケーションが、NATsの面前で働き続けているのを許容することです。 また、この振舞いで、BEHAVE対応することのNATの後ろのアプリケーションは非BEHAVEの言いなりになっている(遺産)NATsの後ろにある遠く離れた終点で共同利用します。 遠く離れた終点のNATでは、Endpointから独立しているMappingの振舞いを持っていませんが、1つの外部のIPアドレスしかないなら、地方のNATにAddress依存するFilteringがあるなら、アプリケーションはまだ2NATsの組み合わせを横断できます。 セクション9はこの要件のセキュリティ含意の詳細な論議を含みます。

   If the inbound SYN packet is filtered, either because a corresponding
   mapping does not exist or because of the NAT's filtering behavior, a
   NAT has two basic choices: to ignore the packet silently, or to
   signal an error to the sender.  Signaling an error through ICMP
   messages allows the sender to quickly detect that the SYN did not
   reach the intended destination.  Silently dropping the packet, on the
   other hand, allows applications to perform simultaneous-open more
   reliably.

本国行きのSYNパケットが対応するマッピングが存在していないためかNATが振舞いをフィルターにかけることのでフィルターにかけられるなら、NATには、2つの基本的な選択があります: 静かにパケットを無視するか、または送付者に誤りに合図するために。 ICMPメッセージを通した誤りに合図すると、意図している目的地はすぐに検出するSYNが届かなかった送付者に許容されます。 他方では、静かにパケットを落とすのに、アプリケーションは同時の戸外をより確かに実行できます。

   Silently dropping the SYN aids simultaneous-open as follows.
   Consider that the application is attempting a simultaneous-open and
   the outbound SYN from the internal endpoint has not yet crossed the
   NAT (due to network congestion or clock skew between the two
   endpoints); this outbound SYN would otherwise have created the
   necessary mapping at the NAT to allow translation of the inbound SYN.
   Since the outbound SYN did not reach the NAT in time, the inbound SYN
   cannot be processed.  If a NAT responds to the premature inbound SYN
   with an error message that forces the external endpoint to abandon
   the connection attempt, it hinders applications performing a TCP
   simultaneous-open.  If instead the NAT silently ignores the inbound
   SYN, the external endpoint retransmits the SYN after a TCP timeout.
   In the meantime, the NAT creates the mapping in response to the
   (delayed) outbound SYN such that the retransmitted inbound SYN can be
   routed and simultaneous-open can succeed.  The downside to this
   behavior is that in the event the inbound SYN is erroneous, the
   remote side does not learn of the error until after several TCP
   timeouts.

静かに低下して、SYNは以下の同時の戸外を支援します。 アプリケーションが同時の戸外を試みていて、内部の終点からの外国行きのSYNがまだ、NAT(2つの終点の間のネットワークの混雑か時計斜行による)に交差していないと考えてください。 そうでなければ、この外国行きのSYNは、本国行きのSYNに関する翻訳を許容するためにNATで必要なマッピングを作成したでしょう。 外国行きのSYNが時間内にNATに達しないで以来、本国行きのSYNを処理できません。 NATが外部の終点がやむを得ず接続試みを捨てるエラーメッセージで時期尚早な本国行きのSYNに応じるなら、それは同時、開いているTCPを実行するアプリケーションを妨げます。 NATが代わりに静かに本国行きのSYNを無視するなら、外部の終点はTCPタイムアウトの後にSYNを再送します。 差し当たり、NATは、再送された本国行きのSYNを発送できて、同時の戸外が成功できるように、(延着します)外国行きのSYNに対応してマッピングを作成します。 この振舞いへの下落傾向が出来事では、本国行きのSYNが誤るということである、遠隔地側は数回のTCPタイムアウトの後まで誤りを知りません。

   NAT support for simultaneous-open as well as quickly signaling errors
   are both important for applications.  Unfortunately, there is no way
   for a NAT to signal an error without forcing the endpoint to abort a
   potential simultaneous-open: TCP RST and ICMP Port Unreachable
   packets require the endpoint to abort the attempt while the ICMP Host
   and Network Unreachable errors may adversely affect other connections
   to the same host or network [RFC1122].

アプリケーションには、同時、開いていてすぐに合図している誤りのNATサポートはともに重要です。 残念ながら、NATが同時、開いている可能性に中止になるように終点を強制することのない誤りに示す方法が全くありません: TCP RSTとICMP Port Unreachableパケットは、ICMP HostとNetwork Unreachable誤りが同じホストかネットワーク[RFC1122]に他の接続に悪影響を与えているかもしれない間、試みを中止するために終点を必要とします。

Guha, et al.             Best Current Practice                  [Page 8]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[8ページ]RFC5382NAT TCP要件2008年10月

   In addition, when an unsolicited SYN is received by the NAT, the NAT
   may not know whether the application is attempting a simultaneous-
   open (and that it should therefore silently drop the SYN) or whether
   the SYN is in error (and that it should notify the sender).

NATで求められていないSYNを受け取るとき、さらに、NATが、アプリケーションが同時の戸外を試みているかどうかを知らないかもしれない、(そして、したがって、それは静かにSYNを落とすべきです)、SYNが間違っている、(そして、それは送付者に通知するべきです)

   REQ-4:  A NAT MUST NOT respond to an unsolicited inbound SYN packet
      for at least 6 seconds after the packet is received.  If during
      this interval the NAT receives and translates an outbound SYN for
      the connection the NAT MUST silently drop the original unsolicited
      inbound SYN packet.  Otherwise, the NAT SHOULD send an ICMP Port
      Unreachable error (Type 3, Code 3) for the original SYN, unless
      REQ-4a applies.
      a) The NAT MUST silently drop the original SYN packet if sending a
         response violates the security policy of the NAT.

REQ-4: パケットが受け取られていた後にNATは少なくとも6秒間、求められていない本国行きのSYNパケットに応じてはいけません。 NATが接続のためにこの間隔の間、外国行きのSYNを受けて、翻訳するなら、NATは静かにオリジナルの求められていない本国行きのSYNパケットを落とさなければなりません。 さもなければ、NAT SHOULDはオリジナルのSYNのために、ICMP Port Unreachable誤り(3をタイプしてください、Code3)を送ります、REQ-4aが. a)を適用しない場合 応答を送るとNATの安全保障政策が違反されるなら、NATは静かにオリジナルのSYNパケットを落とさなければなりません。

   Justification:  The intent of this requirement is to allow
      simultaneous-open to work reliably in the presence of NATs as well
      as to quickly signal an error in case the unsolicited SYN is in
      error.  As of writing this memo, it is not possible to achieve
      both; the requirement therefore represents a compromise.  The NAT
      should tolerate some delay in the outbound SYN for a TCP
      simultaneous-open, which may be due to network congestion or loose
      synchronization between the endpoints.  If the unsolicited SYN is
      not part of a simultaneous-open attempt and is in error, the NAT
      should endeavor to signal the error in accordance with [RFC1122].
      a) There may, however, be reasons for the NAT to rate-limit or
         omit such error notifications, for example, in the case of an
         attack.  Silently dropping the SYN packet when under attack
         allows simultaneous-open to work without consuming any extra
         network bandwidth or revealing the presence of the NAT to
         attackers.  Section 9 mentions the security considerations for
         this requirement.

正当化: この要件の意図は求められていないSYNが間違っているといけないので同時の戸外がNATsの面前で確かに働いて、すぐに誤りに合図するのを許容することです。 このメモを書く現在、両方を達成するのは可能ではありません。 したがって、要件は妥協を表します。 NATは同時、開いているTCPのために外国行きのSYNの何らかの遅れを許容するべきです。(TCPは終点の間のネットワークの混雑かゆるい同期のためであるかもしれません)。 求められていないSYNが同時、開いている試みの一部でなく、間違っているなら、NATは、[RFC1122] a)によると、誤りに合図するよう努力するべきです。 そこでは、しかしながら、レート限界へのNATの理由であるか例えば、攻撃の場合でそのようなエラー通知を省略するかもしれません。 攻撃で静かにSYNパケットを落とすのにどんな余分なネットワークも消費しないで扱うために同時、開いている帯域幅かNATの存在を攻撃者に明らかにすること。 セクション9はこの要件のためにセキュリティ問題について言及します。

   For NATs that combine NAT functionality with end-host functionality
   (e.g., an end-host that also serves as a NAT for other hosts behind
   it), REQ-4 above applies only to SYNs intended for the NAT'ed hosts
   and not to SYNs intended for the NAT itself.  One way to determine
   whether the inbound SYN is intended for a NAT'ed host is to allocate
   NAT mappings from one port range, and allocate ports for local
   endpoints from a different non-overlapping port range.  More dynamic
   implementations can be imagined.

終わりホストの機能性(例えば、また、他のホストのためのNATとしてそれの後ろに勤める終わりホスト)にNATの機能性を結合するNATsに関しては、上のREQ-4はNAT自体のために意図するSYNsではなく、NAT'edホストのために意図するSYNsだけに適用します。 本国行きのSYNがNAT'edホストのために意図するかどうか決定する1つの方法は、1つのポート範囲からNATマッピングを割り当てて、ポートを異なった非重なっているポート範囲から地方の終点に割り当てることです。 よりダイナミックな実現を想像できます。

Guha, et al.             Best Current Practice                  [Page 9]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[9ページ]RFC5382NAT TCP要件2008年10月

5.  NAT Session Refresh

5. NATセッションはリフレッシュします。

   A NAT maintains state associated with in-progress and established
   connections.  Because of this, a NAT is susceptible to a resource-
   exhaustion attack whereby an attacker (or virus) on the internal side
   attempts to cause the NAT to create more state than for which it has
   resources.  To prevent such an attack, a NAT needs to abandon
   sessions in order to free the state resources.

NATは進行中の、そして、確立した接続に関連しているのに状態を維持します。 これのために、NATは内部側の上の攻撃者(または、ウイルス)がNATがそれが持っているものより多くの状態を創設することを引き起こすのを試みるリソース疲労困憊攻撃に影響されやすいです。リソース。 そのような攻撃を防ぐために、NATは、州のリソースを解放するためにセッションを捨てる必要があります。

   A common method that is applicable only to TCP is to preferentially
   abandon sessions for crashed endpoints, followed by closed TCP
   connections and partially open connections.  A NAT can check if an
   endpoint for a session has crashed by sending a TCP keep-alive packet
   and receiving a TCP RST packet in response.  If the NAT cannot
   determine whether the endpoint is active, it should not abandon the
   session until the TCP connection has been idle for some time.  Note
   that an established TCP connection can stay idle (but live)
   indefinitely; hence, there is no fixed value for an idle-timeout that
   accommodates all applications.  However, a large idle-timeout
   motivated by recommendations in [RFC1122] can reduce the chances of
   abandoning a live session.

TCPだけに適切な共通方法は、優先的に墜落している終点にセッションを捨てて、閉じているTCP接続で続いて、接続を部分的に開くことです。 NATは、セッションのための終点がTCPキープアライブパケットを送って、応答でTCP RSTパケットを受けることによってクラッシュしたかどうかチェックできます。 NATが、終点がアクティブであるかどうか決定できないなら、TCP接続がしばらく無駄になるまで、それはセッションを捨てるべきではありません。 確立したTCP接続が無期限に活動していないままであることができることに(生きてください)注意してください。 したがって、すべてのアプリケーションを収容するアイドルタイムアウトのための一定の価値が全くありません。 しかしながら、[RFC1122]で推薦で動機づけられた大きいアイドルタイムアウトはライブセッションを捨てるという可能性を小さくすることができます。

   A TCP connection passes through three phases: partially open,
   established, and closing.  During the partially open phase, endpoints
   synchronize initial sequence numbers.  The phase is initiated by the
   first SYN for the connection and extends until both endpoints have
   sent a packet with the ACK flag set (TCP states: SYN_SENT and
   SYN_RCVD).  ACKs in both directions mark the beginning of the
   established phase where application data can be exchanged
   indefinitely (TCP states: ESTABLISHED, FIN_WAIT_1, FIN_WAIT_2, and
   CLOSE_WAIT).  The closing phase begins when both endpoints have
   terminated their half of the connection by sending a FIN packet.
   Once FIN packets are seen in both directions, application data can no
   longer be exchanged, but the stacks still need to ensure that the FIN
   packets are received (TCP states: CLOSING and LAST_ACK).

TCP接続は三相を通り抜けます: 設立されて、閉じて、部分的に開いてください。 部分的に開いている段階の間、終点は初期シーケンス番号を同期させます。 フェーズは、ACK旗のセット(TCP州: SYN_SENTとSYN_RCVD)と共に接続のために最初のSYNによって開始されて、両方の終点がパケットを送るまで、広がっています。 両方の方向へのACKsはアプリケーションデータを無期限に交換できる確立したフェーズ(TCP州: ESTABLISHED、FIN_WAIT_1、FIN_WAIT_2、およびCLOSE_WAIT)の始まりを示します。 両方の終点がFINパケットを送ることによって半分の彼らの接続を終えたとき、最終段階は始まります。 FINパケットがいったん両方の方向に見られると、もうアプリケーションデータを交換できませんが、スタックは、まだFINパケットが受け取られているのを(TCP州: CLOSINGとLAST_ACK)保証する必要があります。

   TCP connections can stay in established phase indefinitely without
   exchanging any packets.  Some end-hosts can be configured to send
   keep-alive packets on such idle connections; by default, such keep-
   alive packets are sent every 2 hours if enabled [RFC1122].
   Consequently, a NAT that waits for slightly over 2 hours can detect
   idle connections with keep-alive packets being sent at the default
   rate.  TCP connections in the partially open or closing phases, on
   the other hand, can stay idle for at most 4 minutes while waiting for
   in-flight packets to be delivered [RFC1122].

どんなパケットも交換しないで、TCP接続は確立したフェーズで無期限に滞在できます。 そのような無駄な接続にキープアライブパケットを送るために何人かの終わりホストを構成できます。 デフォルトで、可能にするなら[RFC1122]、2時間毎に生きているそのような生活費パケットを送ります。 その結果、2時間余り待つNATはデフォルトレートで送るキープアライブパケットとの無駄な関係を検出できます。 他方では、部分的に開いているか終わりのフェーズにおけるTCP接続は高々4分間活動していない[RFC1122]が機内のパケットに提供されるのを待っている間のままであることができます。

Guha, et al.             Best Current Practice                 [Page 10]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[10ページ]RFC5382NAT TCP要件2008年10月

   The "established connection idle-timeout" for a NAT is defined as the
   minimum time a TCP connection in the established phase must remain
   idle before the NAT considers the associated session a candidate for
   removal.  The "transitory connection idle-timeout" for a NAT is
   defined as the minimum time a TCP connection in the partially open or
   closing phases must remain idle before the NAT considers the
   associated session a candidate for removal.  TCP connections in the
   TIME_WAIT state are not affected by the "transitory connection idle-
   timeout".

NATのための「確立した接続アイドルタイムアウト」はNATが、合同会議が取り外しの候補であると考える前に確立したフェーズにおけるTCP接続が活動していないままでいなければならない最小の時と定義されます。 NATのための「一時的な接続アイドルタイムアウト」はNATが、合同会議が取り外しの候補であると考える前に部分的に開いているか終わりのフェーズにおけるTCP接続が活動していないままでいなければならない最小の時と定義されます。 タイム誌_WAIT状態でのTCP接続は「一時的な接続活動していないタイムアウト」で影響を受けません。

   REQ-5:  If a NAT cannot determine whether the endpoints of a TCP
      connection are active, it MAY abandon the session if it has been
      idle for some time.  In such cases, the value of the "established
      connection idle-timeout" MUST NOT be less than 2 hours 4 minutes.
      The value of the "transitory connection idle-timeout" MUST NOT be
      less than 4 minutes.
      a) The value of the NAT idle-timeouts MAY be configurable.

REQ-5: それがしばらく活動していなく、NATが、TCP接続の終点がアクティブであるかどうか決定できないなら、それはセッションを捨てるかもしれません。 そのような場合では、「確立した接続アイドルタイムアウト」の値は2時間4分より少ないはずがありません。 「一時的な接続アイドルタイムアウト」の値は4分a)以下であるはずがありません。 NATアイドルタイムアウトの値は構成可能であるかもしれません。

   Justification:  The intent of this requirement is to minimize the
      cases where a NAT abandons session state for a live connection.
      While some NATs may choose to abandon sessions reactively in
      response to new connection initiations (allowing idle connections
      to stay up indefinitely in the absence of new initiations), other
      NATs may choose to proactively reap idle sessions.  In cases where
      the NAT cannot actively determine if the connection is alive, this
      requirement ensures that applications can send keep-alive packets
      at the default rate (every 2 hours) such that the NAT can
      passively determine that the connection is alive.  The additional
      4 minutes allows time for in-flight packets to cross the NAT.

正当化: この要件の意図はNATが活動的な接続のためにセッション状態を捨てるケースを最小にすることです。 いくつかのNATsが、新しい接続開始に対応してセッションを反動的に捨てるのを選んでいるかもしれない間(無駄な接続が新しい開始が不在のとき無期限に寝ずに起きているのを許容して)、他のNATsは、無駄なセッションを予測して獲得するのを選ぶかもしれません。 NATが接続が生きているかどうか活発に決定できない場合では、この要件は、NATが、接続が生きていることを受け身に決定できるようにアプリケーションがデフォルトレート(2時間毎)でキープアライブパケットを送ることができるのを確実にします。 追加4個の議事録が機内のパケットがNATを越える時間を許容します。

   NAT behavior for handling RST packets, or connections in TIME_WAIT
   state is left unspecified.  A NAT MAY hold state for a connection in
   TIME_WAIT state to accommodate retransmissions of the last ACK.
   However, since the TIME_WAIT state is commonly encountered by
   internal endpoints properly closing the TCP connection, holding state
   for a closed connection may limit the throughput of connections
   through a NAT with limited resources.  [RFC1337] describes hazards
   associated with TIME_WAIT assassination.

NATは不特定のままにされます取り扱いRSTパケットのための振舞い、またはタイム誌_WAITでの接続が、述べる。 タイム誌_WAIT状態での接続が最後のACKの「再-トランスミッション」を収容するように、NATは状態を保持するかもしれません。 しかしながら、タイム誌_WAIT状態が適切にTCP接続を終える内部の終点で一般的に遭遇するので、閉じている接続のための状態を保持すると、接続に関するスループットはNATを通して限りある資源で制限されるかもしれません。 [RFC1337]はタイム誌_WAIT暗殺に関連している危険について説明します。

   The handling of non-SYN packets for connections for which there is no
   active mapping is left unspecified.  Such packets may be received if
   the NAT silently abandons a live connection, or abandons a connection
   in TIME_WAIT state before the 4 minute TIME_WAIT period expires.  The
   decision to either silently drop such packets or to respond with a
   TCP RST packet is left up to the implementation.

どんなアクティブなマッピングもない接続のための非SYNパケットの取り扱いは不特定のままにされます。 そのようなパケットは、NATが静かに活動的な接続を捨てるなら受けるかもしれないか、または4分のタイム誌_WAIT授業時間が期限が切れる前にタイム誌_WAIT状態で接続を捨てます。 静かにそのようなパケットを下げるか、またはTCP RSTパケットで応じるという決定は実装に任せられます。

Guha, et al.             Best Current Practice                 [Page 11]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[11ページ]RFC5382NAT TCP要件2008年10月

   NAT behavior for notifying endpoints when abandoning live connections
   is left unspecified.  When a NAT abandons a live connection, for
   example due to a timeout expiring, the NAT MAY either send TCP RST
   packets to the endpoints or MAY silently abandon the connection.

活動的な接続を捨てるとき終点に通知するためのNATの振舞いは不特定のままにされます。 NATが活動的な接続を捨てるとき、例えばタイムアウトへの支払われるべきものが期限が切れる場合、NATは、終点へのパケットをTCP RSTに送るか、または静かに接続を捨てるかもしれません。

   Sending a RST notification allows endpoint applications to recover
   more quickly; however, notifying the endpoints may not always be
   possible if, for example, session state is lost due to a power
   failure.

RST通知を送るのに、終点アプリケーションは、よりはやく回復します。 しかしながら、例えば、セッション状態が停電のため失われているなら、終点に通知するのはいつも可能であるかもしれないというわけではありません。

6.  Application Level Gateways

6. アプリケーションレベルゲートウェイ

   Application Level Gateways (ALGs) in certain NATs modify IP addresses
   and TCP ports embedded inside application protocols.  Such ALGs may
   interfere with UNSAF methods or protocols that try to be NAT-aware
   and must therefore be used with extreme caution.

あるNATsのアプリケーションLevel Gateways(ALGs)はアプリケーション・プロトコルで埋め込まれたIPアドレスとTCPポートを変更します。 そのようなALGsをNAT意識するようになろうとするUNSAFメソッドかプロトコルを妨げるかもしれなくて、したがって、細心の注意を払って使用しなければなりません。

   REQ-6:  If a NAT includes ALGs that affect TCP, it is RECOMMENDED
      that all of those ALGs (except for FTP [RFC0959]) be disabled by
      default.

REQ-6: NATがTCPに影響するALGsを含んでいるなら、それらのALGs(FTP[RFC0959]を除いた)のすべてがデフォルトで無効にされるのは、RECOMMENDEDです。

   Justification:  The intent of this requirement is to prevent ALGs
      from interfering with UNSAF methods.  The default state of an FTP
      ALG is left unspecified because of legacy concerns: as of writing
      this memo, a large fraction of legacy FTP clients do not enable
      passive (PASV) mode by default and require an ALG to traverse
      NATs.

正当化: この要件の意図はALGsがUNSAFメソッドを妨げるのを防ぐことです。 FTP ALGのデフォルト州はレガシー関心のために不特定のままにされます: このメモを書く現在、レガシーFTPクライアントの大きい部分は、デフォルトで受け身の(PASV)モードを可能にして、ALGがNATsを横断するのを必要としません。

7.  Other Requirements Applicable to TCP

7. TCPに適切な他の要件

   A list of general and UDP-specific NAT behavioral requirements are
   described in [BEHAVE-UDP].  A list of ICMP-specific NAT behavioral
   requirements are described in [BEHAVE-ICMP].  The requirements listed
   below reiterate the requirements from these two documents that
   directly affect TCP.  The following requirements do not relax any
   requirements in [BEHAVE-UDP] or [BEHAVE-ICMP].

行動の要件が説明される一般的でUDP特有のNAT[BEHAVE-UDP]のリスト。 行動の要件が説明されるICMP特有のNAT[BEHAVE-ICMP]のリスト。 以下にリストアップされた要件は直接TCPに影響するこれらの2通のドキュメントからの要件を繰り返します。 以下の要件は[BEHAVE-UDP]か[BEHAVE-ICMP]のどんな要件も弛緩しません。

7.1.  Port Assignment

7.1. ポート課題

   NATs that allow different internal endpoints to simultaneously use
   the same mapping are defined in [BEHAVE-UDP] to have a "Port
   assignment" behavior of "Port overloading".  Such behavior is
   undesirable, as it prevents two internal endpoints sharing the same
   mapping from establishing simultaneous connections to a common
   external endpoint.

異なった内部の終点に同時に同じマッピングを使用させるNATsは、「ポート積みすぎ」の「ポート課題」の振舞いを持つために[BEHAVE-UDP]で定義されます。 そのような振舞いは望ましくありません、同じマッピングを共有する2つの内部の終点が一般的な外部の終点に同時接続を確立するのを防ぐとき。

   REQ-7:  A NAT MUST NOT have a "Port assignment" behavior of "Port
      overloading" for TCP.

REQ-7: NATには、TCPのための「ポート積みすぎ」の「ポート課題」の振舞いがあってはいけません。

Guha, et al.             Best Current Practice                 [Page 12]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[12ページ]RFC5382NAT TCP要件2008年10月

   Justification:  This requirement allows two applications on the
      internal side of the NAT to consistently communicate with the same
      destination.

正当化: この要件で、NAT内部側における2つのアプリケーションが同じ目的地で一貫して伝えます。

   NAT behavior for preserving the source TCP port range for connections
   is left unspecified.  Some applications expect the source TCP port to
   be in the well-known range (TCP ports from 0 to 1023).  The "r"
   series of commands (rsh, rcp, rlogin, etc.) are an example.  NATs
   that preserve the range from which the source port is picked allow
   such applications to function properly through the NAT; however, by
   doing so the NAT may compromise the security of the application in
   certain situations; applications that depend only on the IP address
   and source TCP port range for security (the "r" commands, for
   example) cannot distinguish between an attacker and a legitimate user
   behind the same NAT.

接続のためにソースのTCPポート範囲を保持するためのNATの振舞いは不特定のままにされます。 いくつかのアプリケーションが、ソースTCP港がよく知られる範囲(0〜1023年までのTCPポート)にあると予想します。 コマンド(rsh、rcp、rloginなど)の「r」シリーズは例です。 ソースポートが粒選りである範囲を保持するNATsがNATを通してそのようなアプリケーションを適切に機能させます。 しかしながら、そうすることによって、NATはある状況における、アプリケーションのセキュリティに感染するかもしれません。 セキュリティ(例えば、「r」コマンド)のためにIPアドレスとソースのTCPポート範囲だけによるアプリケーションは同じNATの後ろで攻撃者と正統のユーザを見分けることができません。

7.2.  Hairpinning Behavior

7.2. 振舞いをHairpinningします。

   NATs that forward packets originating from an internal address,
   destined for an external address that matches the active mapping for
   an internal address, back to that internal address are defined in
   [BEHAVE-UDP] as supporting "hairpinning".  If the NAT presents the
   hairpinned packet with an external source IP address and port (i.e.,
   the mapped source address and port of the originating internal
   endpoint), then it is defined to have "External source IP address and
   port" for hairpinning.  Hairpinning is necessary to allow two
   internal endpoints (known to each other only by their external mapped
   addresses) to communicate with each other.  "External source IP
   address and port" behavior for hairpinning avoids confusing
   implementations that expect the external source IP address and port.

内部のアドレスのためのアクティブなマッピングに合っている外部アドレスのために運命づけられた内部のアドレスから内部のそのアドレスまで起因するパケットを進めるNATsが[BEHAVE-UDP]で「hairpinning」をサポートすると定義されます。 NATが外部電源IPアドレスとポート(すなわち、起因することの内部の終点の写像しているソースアドレスとポート)でhairpinnedパケットを提示するなら、それは、hairpinningするための「外部電源IPアドレスとポート」を持つために定義されます。 Hairpinningが、2つの内部の終点(互いにおいて、単にそれらの外部の写像しているアドレスによって知られている)が互いにコミュニケートするのを許容するのに必要です。 hairpinningするための「外部電源IPアドレスとポート」の振舞いは、外部電源IPアドレスとポートを予想する実装を混乱させるのを避けます。

   REQ-8:  A NAT MUST support "hairpinning" for TCP.
      a) A NAT's hairpinning behavior MUST be of type "External source
         IP address and port".

REQ-8: NATはTCP a)のために"hairpinningする"であることをサポートしなければなりません。 振舞いがあるに違いないNATのhairpinningは「外部電源IPアドレスとポート」をタイプします。

   Justification:  This requirement allows two applications behind the
      same NAT that are trying to communicate with each other using
      their external addresses.
      a) Using the external source address and port for the hairpinned
         packet is necessary for applications that do not expect to
         receive a packet from a different address than the external
         address they are trying to communicate with.

正当化: この要件は. 互いがそれらの外部アドレスを使用しているa)を伝えようとしているのと同じNATの後ろに2つのアプリケーションを許容します。 hairpinnedパケットに外部電源アドレスとポートを使用するのがそれらが交信しようとしている外部アドレスより異なったアドレスからパケットを受けると予想しないアプリケーションに必要です。

7.3.  ICMP Responses to TCP Packets

7.3. TCPパケットへのICMP応答

   Several TCP mechanisms depend on the reception of ICMP error messages
   triggered by the transmission of TCP segments.  One such mechanism is
   path MTU discovery [RFC1191], which is required for the correct

数個のTCPメカニズムがTCPセグメントの送信で引き起こされたICMPエラーメッセージのレセプションによります。 そのようなメカニズムの1つは経路MTU探索[RFC1191]です。(その経路MTU探索が正しさに必要です)。

Guha, et al.             Best Current Practice                 [Page 13]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[13ページ]RFC5382NAT TCP要件2008年10月

   operation of TCP.  The current path MTU discovery mechanism requires
   the sender of TCP segments to be notified of ICMP "Datagram Too Big"
   responses.

TCPの操作。 現在の経路MTU探索メカニズムがICMPについて通知されるためにTCPセグメントを送付者に要求する、「データグラム、大き過ぎる、」 応答。

   REQ-9:  If a NAT translates TCP, it SHOULD translate ICMP Destination
      Unreachable (Type 3) messages.

REQ-9: NATはaであるならTCPを翻訳して、それはSHOULDです。ICMP Destination Unreachable(3をタイプする)メッセージを翻訳してください。

   Justification:  Translating ICMP Destination Unreachable messages,
      particularly the "Fragmentation Needed and Don't Fragment was Set"
      (Type 3, Code 4) message avoids communication failures ("black
      holes" [RFC2923]).  Furthermore, TCP's connection establishment
      and maintenance mechanisms also behave much more efficiently when
      ICMP Destination Unreachable messages arrive in response to
      outgoing TCP segments.

正当化: ICMP Destination Unreachableメッセージを翻訳して、特に「Fragmentではなく、必要である断片化とドンがSet(3をタイプしてください、Code4)であった」メッセージは通信障害(「ブラックホール」[RFC2923])を避けます。 その上、また、ICMP Destination Unreachableメッセージが外向的なTCPセグメントに対応して到着するとき、TCPのコネクション確立とメインテナンスメカニズムははるかに効率的に振る舞います。

   REQ-10:  Receipt of any sort of ICMP message MUST NOT terminate the
      NAT mapping or TCP connection for which the ICMP was generated.

REQ-10: どんな種類に関するICMPメッセージの領収書もICMPが生成されたNATマッピングかTCP接続を終えてはいけません。

   Justification:  This is necessary for reliably performing TCP
      simultaneous-open where a remote NAT may temporarily signal an
      ICMP error.

正当化: これがリモートNATが一時ICMP誤りを示すかもしれないTCPの同時の戸外を確かに実行するのに必要です。

8.  Requirements

8. 要件

   A NAT that supports all of the mandatory requirements of this
   specification (i.e., the "MUST") and is compliant with [BEHAVE-UDP],
   is "compliant with this specification".  A NAT that supports all of
   the requirements of this specification (i.e., included the
   "RECOMMENDED") and is fully compliant with [BEHAVE-UDP] is "fully
   compliant with all the mandatory and recommended requirements of this
   specification".

この仕様の義務的な要件のすべてが(すなわち、“MUST")であるとサポートしている、[UDPを反応させます]で対応であるNATは「この仕様で、言いなりになっています」。 この仕様(すなわち、「お勧め」を含んでいる)の要件のすべてをサポートしている、[UDPを反応させます]で完全に対応であるNATは「この仕様のすべての義務的でお勧めの要件で完全に言いなりになっています」。

   REQ-1:  A NAT MUST have an "Endpoint-Independent Mapping" behavior
      for TCP.

REQ-1: NATには、TCPのための「終点から独立しているマッピング」の振舞いがなければなりません。

   REQ-2:  A NAT MUST support all valid sequences of TCP packets
      (defined in [RFC0793]) for connections initiated both internally
      as well as externally when the connection is permitted by the NAT.
      In particular:
      a) In addition to handling the TCP 3-way handshake mode of
         connection initiation, A NAT MUST handle the TCP simultaneous-
         open mode of connection initiation.

REQ-2: NATは接続がNATによって受入れられるとき内部的に外部的に開始された接続のためにTCPパケット([RFC0793]では、定義される)のすべての有効な系列をサポートしなければなりません。 特に: a) 接続開始のTCP3ウェイ握手モードを扱うことに加えて、A NATは接続開始のTCPの同時のオープン形式を扱わなければなりません。

   REQ-3:  If application transparency is most important, it is
      RECOMMENDED that a NAT have an "Endpoint-Independent Filtering"
      behavior for TCP.  If a more stringent filtering behavior is most
      important, it is RECOMMENDED that a NAT have an "Address-Dependent
      Filtering" behavior.

REQ-3: アプリケーション透明が最も重要であるなら、NATにはTCPのための「終点から独立しているフィルタリング」の振舞いがあるのは、RECOMMENDEDです。 より厳しいフィルタリングの振舞いが最も重要であるなら、NATには「アドレス依存するフィルタリング」の振舞いがあるのは、RECOMMENDEDです。

Guha, et al.             Best Current Practice                 [Page 14]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[14ページ]RFC5382NAT TCP要件2008年10月

      a) The filtering behavior MAY be an option configurable by the
         administrator of the NAT.
      b) The filtering behavior for TCP MAY be independent of the
         filtering behavior for UDP.

a) フィルタリングの振舞いは. NATの管理者が構成可能なオプションがb)であったならそうするかもしれません。 TCP MAYのためのフィルタリングの振舞いはUDPのためのフィルタリングの振舞いの如何にかかわらずそうです。

   REQ-4:  A NAT MUST NOT respond to an unsolicited inbound SYN packet
      for at least 6 seconds after the packet is received.  If during
      this interval the NAT receives and translates an outbound SYN for
      the connection the NAT MUST silently drop the original unsolicited
      inbound SYN packet.  Otherwise, the NAT SHOULD send an ICMP Port
      Unreachable error (Type 3, Code 3) for the original SYN, unless
      REQ-4a applies.
      a) The NAT MUST silently drop the original SYN packet if sending a
         response violates the security policy of the NAT.

REQ-4: パケットが受け取られていた後にNATは少なくとも6秒間、求められていない本国行きのSYNパケットに応じてはいけません。 NATが接続のためにこの間隔の間、外国行きのSYNを受けて、翻訳するなら、NATは静かにオリジナルの求められていない本国行きのSYNパケットを下げなければなりません。 さもなければ、NAT SHOULDはオリジナルのSYNのために、ICMP Port Unreachable誤り(3をタイプしてください、Code3)を送ります、REQ-4aが. a)を適用しない場合 応答を送るとNATの安全保障政策が違反されるなら、NATは静かにオリジナルのSYNパケットを下げなければなりません。

   REQ-5:  If a NAT cannot determine whether the endpoints of a TCP
      connection are active, it MAY abandon the session if it has been
      idle for some time.  In such cases, the value of the "established
      connection idle-timeout" MUST NOT be less than 2 hours 4 minutes.
      The value of the "transitory connection idle-timeout" MUST NOT be
      less than 4 minutes.
      a) The value of the NAT idle-timeouts MAY be configurable.

REQ-5: それがしばらく活動していなく、NATが、TCP接続の終点がアクティブであるかどうか決定できないなら、それはセッションを捨てるかもしれません。 そのような場合では、「確立した接続アイドルタイムアウト」の値は2時間4分より少ないはずがありません。 「一時的な接続アイドルタイムアウト」の値は4分a)以下であるはずがありません。 NATアイドルタイムアウトの値は構成可能であるかもしれません。

   REQ-6:  If a NAT includes ALGs that affect TCP, it is RECOMMENDED
      that all of those ALGs (except for FTP [RFC0959]) be disabled by
      default.

REQ-6: NATがTCPに影響するALGsを含んでいるなら、それらのALGs(FTP[RFC0959]を除いた)のすべてがデフォルトで無効にされるのは、RECOMMENDEDです。

   The following requirements reiterate requirements from [BEHAVE-UDP]
   or [BEHAVE-ICMP] that directly affect TCP.  This document does not
   relax any requirements in [BEHAVE-UDP] or [BEHAVE-ICMP].

以下の要件は直接TCPに影響する[BEHAVE-UDP]か[BEHAVE-ICMP]からの要件を繰り返します。 このドキュメントは[BEHAVE-UDP]か[BEHAVE-ICMP]のどんな要件も弛緩しません。

   REQ-7:  A NAT MUST NOT have a "Port assignment" behavior of "Port
      overloading" for TCP.

REQ-7: NATには、TCPのための「ポート積みすぎ」の「ポート課題」の振舞いがあってはいけません。

   REQ-8:  A NAT MUST support "hairpinning" for TCP.
      a) A NAT's hairpinning behavior MUST be of type "External source
         IP address and port".

REQ-8: NATはTCP a)のために"hairpinningする"であることをサポートしなければなりません。 振舞いがあるに違いないNATのhairpinningは「外部電源IPアドレスとポート」をタイプします。

   REQ-9:  If a NAT translates TCP, it SHOULD translate ICMP Destination
      Unreachable (Type 3) messages.

REQ-9: NATはaであるならTCPを翻訳して、それはSHOULDです。ICMP Destination Unreachable(3をタイプする)メッセージを翻訳してください。

   REQ-10:  Receipt of any sort of ICMP message MUST NOT terminate the
      NAT mapping or TCP connection for which the ICMP was generated.

REQ-10: どんな種類に関するICMPメッセージの領収書もICMPが生成されたNATマッピングかTCP接続を終えてはいけません。

Guha, et al.             Best Current Practice                 [Page 15]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[15ページ]RFC5382NAT TCP要件2008年10月

9.  Security Considerations

9. セキュリティ問題

   [BEHAVE-UDP] discusses security considerations for NATs that handle
   IP and unicast UDP traffic.  Security concerns specific to handling
   TCP packets are discussed in this section.

[BEHAVE-UDP]はIPを扱うNATsとユニキャストUDPトラフィックのためにセキュリティ問題について議論します。 このセクションで取り扱いTCPパケットに特定の安全上の配慮について議論します。

   Security considerations for REQ-1:  This requirement does not
      introduce any TCP-specific security concerns.

REQ-1のためのセキュリティ問題: この要件はどんなTCP特有の安全上の配慮も導入しません。

   Security considerations for REQ-2:  This requirement does not
      introduce any TCP-specific security concerns.  Simultaneous-open
      and other transitions in the TCP state machine are by-design and
      necessary for TCP to work correctly in all scenarios.  Further,
      this requirement only affects connections already in progress as
      authorized by the NAT in accordance with its policy.

REQ-2のためのセキュリティ問題: この要件はどんなTCP特有の安全上の配慮も導入しません。 TCP州のマシンの同時、開いていて他の変遷は、デザインであって、TCPがすべてのシナリオで正しく扱うように、必要とします。 さらに、この要件は方針によると、NATによって認可されるように既に進行中の接続に影響するだけです。

   Security considerations for REQ-3:  The security provided by the NAT
      is governed by its filtering behavior as addressed in
      [BEHAVE-UDP].  Connection-Dependent Filtering behavior is most
      secure from a firewall perspective, but severely restricts
      connection initiations through a NAT.  Endpoint-Independent
      Filtering behavior, which is most transparent to applications,
      requires an attacker to guess the IP address and port of an active
      mapping in order to get his packet to an internal host.  Address-
      Dependent Filtering, on the other hand, is less transparent than
      Endpoint-Independent Filtering but more transparent than
      Connection-Dependent Filtering; it is more secure than Endpoint-
      Independent Filtering as it requires an attacker to additionally
      guess the address of the external endpoint for a NAT session
      associated with the mapping and be able to receive packets
      addressed to the same.  While this protects against most attackers
      on the Internet, it does not necessarily protect against attacks
      that originate from behind a remote NAT with a single IP address
      that is also translating a legitimate connection to the victim.

REQ-3のためのセキュリティ問題: [BEHAVE-UDP]で扱われるように振舞いをフィルターにかけることによって、NATによって提供されたセキュリティは決定されます。 接続依存するFilteringの振舞いは、ファイアウォール見解から最も安全ですが、NATを通して厳しく接続開始を制限します。 終点から独立しているFilteringの振舞い(アプリケーションに最もわかりやすい)は、内部のホストに彼のパケットを届けるために攻撃者がアクティブなマッピングのIPアドレスとポートを推測するのを必要とします。 他方では、アドレスの依存するFilteringは、より透明ではありませんが、Connection依存するFilteringよりEndpointから独立しているFilteringより透明です。 マッピングに関連しているNATセッションのためにさらに、外部の終点のアドレスを推測して、同じくらいに扱われたパケットは受けることができるのが攻撃者を必要とするとき、それがEndpointの独立しているFilteringより安全です。 これがインターネットのほとんどの攻撃者から守っている間、それは必ずまた、正統の接続を翻訳しているただ一つのIPアドレスがあるリモートNATから犠牲者まで起因する攻撃から守るというわけではありません。

   Security considerations for REQ-4:  This document recommends that a
      NAT respond to unsolicited inbound SYN packets with an ICMP error
      delayed by a few seconds.  Doing so may reveal the presence of a
      NAT to an external attacker.  Silently dropping the SYN makes it
      harder to diagnose network problems and forces applications to
      wait for the TCP stack to finish several retransmissions before
      reporting an error.  An implementer must therefore understand and
      carefully weigh the effects of not sending an ICMP error or rate-
      limiting such ICMP errors to a very small number.

REQ-4のためのセキュリティ問題: このドキュメントは、ICMP誤りが数秒までに遅れていてNATが求められていない本国行きのSYNパケットに応じることを勧めます。 そうするのは外部の攻撃者にNATの存在を明らかにするかもしれません。 静かにSYNを下げるので、ネットワーク問題を診断するのをより困難にして、アプリケーションは、誤りを報告する前にTCPスタックが数個の「再-トランスミッション」を終えるのをやむを得ず待ちます。 implementerはしたがって、分かって、慎重に、ICMP誤りかレートにそのようなICMP誤りを非常に少ない数に制限させないという効果の重さがなければなりません。

Guha, et al.             Best Current Practice                 [Page 16]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[16ページ]RFC5382NAT TCP要件2008年10月

   Security considerations for REQ-5:  This document recommends that a
      NAT that passively monitors TCP state keep idle sessions alive for
      at least 2 hours 4 minutes or 4 minutes depending on the state of
      the connection.  If a NAT is under attack, it may attempt to
      actively determine the liveliness of a TCP connection or let the
      NAT administrator configure more conservative timeouts.

REQ-5のためのセキュリティ問題: このドキュメントは、TCP状態を受け身にモニターするNATが少なくとも2時間4分か4分間接続の状態に依存するために無駄なセッションを生かすことを勧めます。 NATは攻撃されているなら、それが、活発にTCP接続の活気を決定するか、またはNAT管理者により保守的なタイムアウトを構成させるのを試みるかもしれません。

   Security considerations for REQ-6:  This requirement does not
      introduce any TCP-specific security concerns.

REQ-6のためのセキュリティ問題: この要件はどんなTCP特有の安全上の配慮も導入しません。

   Security considerations for REQ-7:  This requirement does not
      introduce any TCP-specific security concerns.

REQ-7のためのセキュリティ問題: この要件はどんなTCP特有の安全上の配慮も導入しません。

   Security considerations for REQ-8:  This requirement does not
      introduce any TCP-specific security concerns.

REQ-8のためのセキュリティ問題: この要件はどんなTCP特有の安全上の配慮も導入しません。

   Security considerations for REQ-9:  This requirement does not
      introduce any TCP-specific security concerns.

REQ-9のためのセキュリティ問題: この要件はどんなTCP特有の安全上の配慮も導入しません。

   Security considerations for REQ-10:  This requirement does not
      introduce any TCP-specific security concerns.

REQ-10のためのセキュリティ問題: この要件はどんなTCP特有の安全上の配慮も導入しません。

   NAT implementations that modify TCP sequence numbers (e.g., for
   privacy reasons or for ALG support) must ensure that TCP packets with
   Selective Acknowledgement (SACK) notifications [RFC2018] are properly
   handled.

TCP一連番号(例えば、プライバシー理由かALGサポートのための)を変更するNAT実装は、Selective Acknowledgement(SACK)通知[RFC2018]があるTCPパケットが適切に扱われるのを確実にしなければなりません。

   NAT implementations that modify local state based on TCP flags in
   packets must ensure that out-of-window TCP packets are properly
   handled.  [RFC4953] summarizes and discusses a variety of solutions
   designed to prevent attackers from affecting TCP connections.

パケットでTCP旗に基づく地方の状態を変更するNAT実装は、窓の外では、TCPパケットが適切に扱われるのを確実にしなければなりません。 [RFC4953]は、攻撃者がTCP接続に影響するのを防ぐように設計されたさまざまなソリューションについて、まとめて、議論します。

10.  Acknowledgments

10. 承認

   Joe Touch contributed the mechanism for handling unsolicited inbound
   SYNs.  Thanks to Mark Allman, Francois Audet, Lars Eggert, Paul
   Francis, Fernando Gont, Sam Hartman, Paul Hoffman, Dave Hudson,
   Cullen Jennings, Philip Matthews, Tom Petch, Magnus Westerlund, and
   Dan Wing for their many contributions, comments, and suggestions.

ジョーTouchは取り扱いの求められていない本国行きのSYNsのためにメカニズムを寄付しました。 彼らの多くの貢献、コメント、および提案をマーク・オールマン、フランソアAudet、ラース・エッゲルト、ポール・フランシス、フェルナンドGont、サム・ハートマン、ポール・ホフマン、デーヴ・ハドソン、Cullenジョニングス、フィリップ・マシューズ、トムPetch、マグヌスWesterlund、およびダンWingをありがとうございます。

Guha, et al.             Best Current Practice                 [Page 17]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[17ページ]RFC5382NAT TCP要件2008年10月

11.  References

11. 参照

11.1.  Normative References

11.1. 引用規格

   [BEHAVE-UDP]   Audet, F. and C. Jennings, "Network Address
                  Translation (NAT) Behavioral Requirements for Unicast
                  UDP", BCP 127, RFC 4787, January 2007.

[UDPを反応させます]のAudet(F.とC.ジョニングス)は「ユニキャストUDPのためのアドレス変換(NAT)の行動の要件をネットワークでつなぎます」、BCP127、RFC4787、2007年1月。

   [RFC0793]      Postel, J., "Transmission Control Protocol", STD 7,
                  RFC 793, September 1981.

[RFC0793] ポステル、J.、「通信制御プロトコル」、STD7、RFC793、1981年9月。

   [RFC0959]      Postel, J. and J. Reynolds, "File Transfer Protocol",
                  STD 9, RFC 959, October 1985.

[RFC0959] ポステルとJ.とJ.レイノルズ、「ファイル転送プロトコル」、STD9、RFC959、1985年10月。

   [RFC1122]      Braden, R., "Requirements for Internet Hosts -
                  Communication Layers", STD 3, RFC 1122, October 1989.

[RFC1122]ブレーデン、R.、「インターネットのためのホスト--コミュニケーションが層にされるという要件」、STD3、RFC1122、10月1989日

   [RFC1191]      Mogul, J. and S. Deering, "Path MTU discovery",
                  RFC 1191, November 1990.

[RFC1191] ムガール人とJ.とS.デアリング、「経路MTU探索」、RFC1191、1990年11月。

   [RFC2119]      Bradner, S., "Key words for use in RFCs to Indicate
                  Requirement Levels", BCP 14, RFC 2119, March 1997.

[RFC2119] ブラドナー、S.、「Indicate Requirement LevelsへのRFCsにおける使用のためのキーワード」、BCP14、RFC2119、1997年3月。

11.2.  Informational References

11.2. 情報の参照

   [BEHAVE-ICMP]  Srisuresh, P., Ford, B., Sivakumar, S., and S. Guha,
                  "NAT Behavioral Requirements for ICMP protocol", Work
                  in Progress, June 2008.

[BEHAVE-ICMP] SrisureshとP.とフォードとB.とSivakumar、S.とS.グーハ、「ICMPのためのNAT Behavioral Requirementsは議定書を作る」Progress(2008年6月)のWork。

   [NAT-MIB]      Rohit, R., Srisuresh, P., Raghunarayan, R., Pai, N.,
                  and C. Wang, "Definitions of Managed Objects for
                  Network Address Translators (NAT)", RFC 4008,
                  March 2005.

[NAT-MIB] Rohit、R.、Srisuresh、P.、Raghunarayan、R.、パイ、N.、およびC.ワング、「ネットワークのための管理オブジェクトの定義は翻訳者(NAT)に演説します」、RFC4008、2005年3月。

   [NATBLASTER]   Biggadike, A., Ferullo, D., Wilson, G., and A. Perrig,
                  "NATBLASTER: Establishing TCP connections between
                  hosts behind NATs", Proceedings of the ACM SIGCOMM
                  Asia Workshop (Beijing, China), April 2005.

[NATBLASTER] Biggadike、A.、Ferullo、D.、ウィルソン、G.、およびA.Perrig、「NATBLASTER:」 「NATsの後ろでホストの間のTCP接続を確立します」、ACM SIGCOMMアジアWorkshop(北京(中国))、2005年4月のProceedings。

   [P2PNAT]       Ford, B., Srisuresh, P., and D. Kegel, "Peer-to-peer
                  communication across network address translators",
                  Proceedings of the USENIX Annual Technical
                  Conference (Anaheim, CA), April 2005.

USENIX Annual Technicalコンファレンス(アナハイム(カリフォルニア))(2005年4月)の[P2PNAT]フォードとB.とSrisuresh、P.とD.ケーゲル、「ネットワークアドレス変換機構の向こう側のピアツーピアコミュニケーション」Proceedings。

   [RFC1337]      Braden, B., "TIME-WAIT Assassination Hazards in TCP",
                  RFC 1337, May 1992.

[RFC1337]ブレーデン(B.、「TCPの時間待ち暗殺危険」、RFC1337)は1992がそうするかもしれません。

Guha, et al.             Best Current Practice                 [Page 18]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[18ページ]RFC5382NAT TCP要件2008年10月

   [RFC1644]      Braden, B., "T/TCP -- TCP Extensions for Transactions
                  Functional Specification", RFC 1644, July 1994.

[RFC1644]ブレーデン、B.、「T/TCP--、トランザクションに、機能的なTCP拡張子、仕様、」、RFC1644、7月1994日

   [RFC2018]      Mathis, M., Mahdavi, J., Floyd, S., and A. Romanow,
                  "TCP Selective Acknowledgment Options", RFC 2018,
                  October 1996.

[RFC2018] マシスとM.とMahdaviとJ.とフロイド、S.とA.Romanow、「TCPの選択している承認オプション」、RFC2018、1996年10月。

   [RFC2663]      Srisuresh, P. and M. Holdrege, "IP Network Address
                  Translator (NAT) Terminology and Considerations",
                  RFC 2663, August 1999.

[RFC2663] SrisureshとP.とM.Holdrege、「IPはアドレス変換機構(NAT)用語と問題をネットワークでつなぐ」RFC2663、1999年8月。

   [RFC2923]      Lahey, K., "TCP Problems with Path MTU Discovery",
                  RFC 2923, September 2000.

[RFC2923] レーヒー、K.、「経路MTU発見に関するTCP問題」、RFC2923、2000年9月。

   [RFC3022]      Srisuresh, P. and K. Egevang, "Traditional IP Network
                  Address Translator (Traditional NAT)", RFC 3022,
                  January 2001.

[RFC3022] SrisureshとP.とK.Egevang、「伝統的なIPネットワークアドレス変換機構(伝統的なNAT)」、RFC3022、2001年1月。

   [RFC4614]      Duke, M., Braden, R., Eddy, W., and E. Blanton, "A
                  Roadmap for Transmission Control Protocol (TCP)
                  Specification Documents", RFC 4614, September 2006.

[RFC4614] デューク、M.、ブレーデン、R.、渦巻、W.、およびE.ブラントン、「通信制御プロトコル(TCP)仕様ドキュメントのための道路地図」、RFC4614(2006年9月)。

   [RFC4953]      Touch, J., "Defending TCP Against Spoofing Attacks",
                  RFC 4953, July 2007.

[RFC4953] 2007年7月の接触、J.、「スプーフィング攻撃に対する防御しているTCP」RFC4953。

   [STUNT]        Guha, S. and P. Francis, "NUTSS: A SIP based approach
                  to UDP and TCP connectivity", Proceedings of the ACM
                  SIGCOMM Workshop on Future Directions in Network
                  Architecture (Portland, OR), August 2004.

[妨げます] グーハ、S.、およびP.フランシス、「NUTSS:」 「SIPはUDPへのアプローチとTCPの接続性を基礎づけました」、Network Architecture(ポートランド(OR))のFuture Directionsの上のACM SIGCOMM WorkshopのProceedings、2004年8月。

   [TCPTRAV]      Guha, S. and P. Francis, "Characterization and
                  Measurement of TCP Traversal through NATs and
                  Firewalls", Proceedings of the Internet Measurement
                  Conference (Berkeley, CA), October 2005.

[TCPTRAV] グーハ、S.、P.フランシス、および「NATsとファイアウォールを通したTCP縦断の特殊化と測定」、インターネット測定コンファレンス(バークレー(カリフォルニア))(2005年10月)の議事

Guha, et al.             Best Current Practice                 [Page 19]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[19ページ]RFC5382NAT TCP要件2008年10月

Authors' Addresses

作者のアドレス

   Saikat Guha (editor)
   Cornell University
   331 Upson Hall
   Ithaca, NY  14853
   US
   Phone: +1 607 255 1008
   EMail: saikat@cs.cornell.edu

Saikatグーハ(エディタ)コーネル大学331Upson Hallニューヨーク14853イタケー(米国)は以下に電話をします。 +1 1008年の607 255メール: saikat@cs.cornell.edu

   Kaushik Biswas
   Cisco Systems, Inc.
   170 West Tasman Dr.
   San Jose, CA  95134
   US
   Phone: +1 408 525 5134
   EMail: kbiswas@cisco.com

カウシィクビスワスシスコシステムズInc.170西タスマン博士カリフォルニア95134サンノゼ(米国)は以下に電話をします。 +1 5134年の408 525メール: kbiswas@cisco.com

   Bryan Ford
   Max Planck Institute for Software Systems
   Campus Building E1 4
   D-66123 Saarbruecken
   Germany
   Phone: +49-681-9325657
   EMail: baford@mpi-sws.org

E1 4D-66123 Saarbrueckenドイツ電話を組立てるソフトウェア・システムキャンパスのブライアンフォードマックスプランク研究所: +49-681-9325657はメールされます: baford@mpi-sws.org

   Senthil Sivakumar
   Cisco Systems, Inc.
   7100-8 Kit Creek Road
   PO Box 14987
   Research Triangle Park, NC  27709-4987
   US
   Phone: +1 919 392 5158
   EMail: ssenthil@cisco.com

Senthil SivakumarシスコシステムズInc.7100-8はクリーク道路私書箱14987リサーチトライアングル公園、NC27709-4987米国電話に装備します: +1 5158年の919 392メール: ssenthil@cisco.com

   Pyda Srisuresh
   Kazeon Systems, Inc.
   1161 San Antonio Rd.
   Mountain View, CA  94043
   US
   Phone: +1 408 836 4773
   EMail: srisuresh@yahoo.com

Pyda Srisuresh KazeonシステムInc.1161サンアントニオ、通り カリフォルニア94043マウンテンビュー(米国)は以下に電話をします。 +1 4773年の408 836メール: srisuresh@yahoo.com

Guha, et al.             Best Current Practice                 [Page 20]

RFC 5382                  NAT TCP Requirements              October 2008

グーハ、他 最も良い現在の練習[20ページ]RFC5382NAT TCP要件2008年10月

Full Copyright Statement

完全な著作権宣言文

   Copyright (C) The IETF Trust (2008).

IETFが信じる著作権(C)(2008)。

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

このドキュメントはBCP78に含まれた権利、ライセンス、および制限を受けることがあります、そして、そこに詳しく説明されるのを除いて、作者は彼らのすべての権利を保有します。

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
   THE INTERNET ENGINEERING TASK FORCE DISCLAIM 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.

このドキュメントとここに含まれた情報はその人が代理をするか、または(もしあれば)後援される組織、インターネットの振興発展を目的とする組織、「そのままで」という基礎と貢献者の上で提供していて、IETFはそして、インターネット・エンジニアリング・タスク・フォースがすべての保証を放棄すると信じます、急行である、または暗示していて、他を含んでいて、情報の使用がここに侵害しないどんな保証も少しもまっすぐになるということであるかいずれが市場性か特定目的への適合性の黙示的な保証です。

Intellectual Property

知的所有権

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

IETFはどんなIntellectual Property Rightsの正当性か範囲、実現に関係すると主張されるかもしれない他の権利、本書では説明された技術の使用またはそのような権利の下におけるどんなライセンスも利用可能であるかもしれない、または利用可能でないかもしれない範囲に関しても立場を全く取りません。 または、それはそれを表しません。どんなそのような権利も特定するためのどんな独立している努力もしました。 BCP78とBCP79でRFCドキュメントの権利に関する手順に関する情報を見つけることができます。

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

IPR公開のコピーが利用可能に作られるべきライセンスの保証、または一般的な免許を取得するのが作られた試みの結果をIETF事務局といずれにもしたか、または http://www.ietf.org/ipr のIETFのオンラインIPR倉庫からこの仕様のimplementersかユーザによるそのような所有権の使用のために許可を得ることができます。

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.

IETFはこの規格を実行するのに必要であるかもしれない技術をカバーするかもしれないどんな著作権もその注目していただくどんな利害関係者、特許、特許出願、または他の所有権も招待します。 ietf-ipr@ietf.org のIETFに情報を記述してください。

Guha, et al.             Best Current Practice                 [Page 21]

グーハ、他 最も良い現在の習慣[21ページ]

一覧

 RFC 1〜100  RFC 1401〜1500  RFC 2801〜2900  RFC 4201〜4300 
 RFC 101〜200  RFC 1501〜1600  RFC 2901〜3000  RFC 4301〜4400 
 RFC 201〜300  RFC 1601〜1700  RFC 3001〜3100  RFC 4401〜4500 
 RFC 301〜400  RFC 1701〜1800  RFC 3101〜3200  RFC 4501〜4600 
 RFC 401〜500  RFC 1801〜1900  RFC 3201〜3300  RFC 4601〜4700 
 RFC 501〜600  RFC 1901〜2000  RFC 3301〜3400  RFC 4701〜4800 
 RFC 601〜700  RFC 2001〜2100  RFC 3401〜3500  RFC 4801〜4900 
 RFC 701〜800  RFC 2101〜2200  RFC 3501〜3600  RFC 4901〜5000 
 RFC 801〜900  RFC 2201〜2300  RFC 3601〜3700  RFC 5001〜5100 
 RFC 901〜1000  RFC 2301〜2400  RFC 3701〜3800  RFC 5101〜5200 
 RFC 1001〜1100  RFC 2401〜2500  RFC 3801〜3900  RFC 5201〜5300 
 RFC 1101〜1200  RFC 2501〜2600  RFC 3901〜4000  RFC 5301〜5400 
 RFC 1201〜1300  RFC 2601〜2700  RFC 4001〜4100  RFC 5401〜5500 
 RFC 1301〜1400  RFC 2701〜2800  RFC 4101〜4200 

スポンサーリンク

batファイルのコマンドが完了してもウインドウを開いたままにする方法

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る