[要約] RFC 7064は、STUNプロトコルのためのURIスキームについての規格です。その目的は、STUNサーバーへのアクセスを簡単にするために、URIを使用してSTUNリソースを特定することです。
Internet Engineering Task Force (IETF) S. Nandakumar Request for Comments: 7064 G. Salgueiro Category: Standards Track P. Jones ISSN: 2070-1721 Cisco Systems M. Petit-Huguenin Impedance Mismatch November 2013
URI Scheme for the Session Traversal Utilities for NAT (STUN) Protocol
NAT(STUN)プロトコルのセッショントラバーサルユーティリティのURIスキーム
Abstract
概要
This document specifies the syntax and semantics of the Uniform Resource Identifier (URI) scheme for the Session Traversal Utilities for NAT (STUN) protocol.
このドキュメントでは、NAT用セッショントラバーサルユーティリティ(STUN)プロトコルのURI(Uniform Resource Identifier)スキームの構文とセマンティクスを指定します。
Status of This Memo
本文書の状態
This is an Internet Standards Track document.
これはInternet Standards Trackドキュメントです。
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741.
このドキュメントは、IETF(Internet Engineering Task Force)の製品です。これは、IETFコミュニティのコンセンサスを表しています。公開レビューを受け、インターネットエンジニアリングステアリンググループ(IESG)による公開が承認されました。インターネット標準の詳細については、RFC 5741のセクション2をご覧ください。
Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc7064.
このドキュメントの現在のステータス、エラータ、およびフィードバックの提供方法に関する情報は、http://www.rfc-editor.org/info/rfc7064で入手できます。
Copyright Notice
著作権表示
Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved.
Copyright(c)2013 IETF Trustおよびドキュメントの作成者として識別された人物。全著作権所有。
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.
この文書は、BCP 78およびこの文書の発行日に有効なIETF文書に関するIETFトラストの法的規定(http://trustee.ietf.org/license-info)の対象となります。これらのドキュメントは、このドキュメントに関するあなたの権利と制限を説明しているため、注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、Trust Legal Provisionsのセクション4.eに記載されているSimplified BSD Licenseのテキストが含まれている必要があり、Simplified BSD Licenseに記載されているように保証なしで提供されます。
Table of Contents
目次
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Definition of the "stun" or "stuns" URI . . . . . . . . . . . 3 3.1. URI Scheme Syntax . . . . . . . . . . . . . . . . . . . . 3 3.2. URI Scheme Semantics . . . . . . . . . . . . . . . . . . 4 4. Security Considerations . . . . . . . . . . . . . . . . . . . 4 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 5.1. "stun" URI Registration . . . . . . . . . . . . . . . . . 5 5.2. "stuns" URI Registration . . . . . . . . . . . . . . . . 6 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 7.1. Normative References . . . . . . . . . . . . . . . . . . 7 7.2. Informative References . . . . . . . . . . . . . . . . . 7 Appendix A. Examples . . . . . . . . . . . . . . . . . . . . . . 8 Appendix B. Design Notes . . . . . . . . . . . . . . . . . . . . 8
This document specifies the syntax and semantics of the Uniform Resource Identifier (URI) scheme for the Session Traversal Utilities for NAT (STUN) protocol.
このドキュメントでは、NAT用セッショントラバーサルユーティリティ(STUN)プロトコルのURI(Uniform Resource Identifier)スキームの構文とセマンティクスを指定します。
STUN is a protocol that serves as a tool for other protocols in dealing with Network Address Translator (NAT) traversal. It can be used by an endpoint to determine the IP address and port allocated to it by a NAT, to perform connectivity checks between two endpoints, and as a keepalive protocol to maintain NAT bindings. RFC 5389 [RFC5389] defines the specifics of the STUN protocol.
STUNは、ネットワークアドレス変換(NAT)トラバーサルを処理する他のプロトコルのツールとして機能するプロトコルです。エンドポイントは、NATによって割り当てられたIPアドレスとポートを判別したり、2つのエンドポイント間の接続チェックを実行したり、NATバインディングを維持するためのキープアライブプロトコルとして使用したりできます。 RFC 5389 [RFC5389]は、STUNプロトコルの詳細を定義しています。
The "stun" and "stuns" URI schemes are used to designate a stand-alone STUN server or any Internet host performing the operations of a STUN server in the context of STUN usages (Section 14 of RFC 5389 [RFC5389]). With the advent of standards such as WebRTC [WEBRTC], we anticipate a plethora of endpoints and web applications to be able to identify and communicate with such a STUN server to carry out the STUN protocol. This implies that endpoints and/or applications must be provisioned with the appropriate configuration to identify the STUN server. Having an inconsistent syntax adds ambiguity and can result in non-interoperable solutions and implementation limitations. The "stun" and "stuns" URI schemes help alleviate most of these issues by providing a consistent way to describe, configure, and exchange the information identifying a STUN server.
「stun」および「stuns」URIスキームは、スタンドアロンのSTUNサーバー、またはSTUNの使用状況でSTUNサーバーの操作を実行するインターネットホストを指定するために使用されます(RFC 5389 [RFC5389]のセクション14)。 WebRTC [WEBRTC]などの標準の出現により、エンドポイントとWebアプリケーションが大量に存在し、そのようなSTUNサーバーを識別して通信して、STUNプロトコルを実行できるようになることが期待されます。これは、エンドポイントやアプリケーションが、STUNサーバーを識別するための適切な構成でプロビジョニングされる必要があることを意味します。一貫性のない構文があるとあいまいさが増し、相互運用できないソリューションや実装の制限につながる可能性があります。 「stun」および「stuns」URIスキームは、STUNサーバーを識別する情報を記述、構成、および交換する一貫した方法を提供することにより、これらの問題のほとんどを軽減するのに役立ちます。
The key words "MUST", "MUST NOT", "REQUIRED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119] when they appear in ALL CAPS. When these words are not in ALL CAPS (such as "should" or "Should"), they have their usual English meanings and are not to be interpreted as RFC 2119 key words.
このドキュメントのキーワード「MUST」、「MUST NOT」、「REQUIRED」、「MAY」、および「OPTIONAL」は、すべて大文字で表記されている場合、[RFC2119]で説明されているように解釈されます。これらの単語がすべて大文字ではない場合( "should"や "Should"など)、それらは通常の英語の意味を持ち、RFC 2119キーワードとして解釈されません。
"stun" and "stuns" URIs have the following formal ABNF syntax [RFC5234]:
「stun」および「stuns」URIには、次の正式なABNF構文があります[RFC5234]。
stunURI = scheme ":" host [ ":" port ] scheme = "stun" / "stuns"
<host> and <port> are specified in [RFC3986]. While these two ABNF productions are defined in [RFC3986] as components of the generic hierarchical URI, this does not imply that the "stun" and "stuns" URI schemes are hierarchical URIs. Developers MUST NOT use a generic hierarchical URI parser to parse a "stun" or "stuns" URI.
<host>と<port>は[RFC3986]で指定されています。これらの2つのABNFプロダクションは[RFC3986]で汎用階層URIのコンポーネントとして定義されていますが、これは「stun」および「stuns」URIスキームが階層URIであることを意味するものではありません。開発者は、「stun」または「stuns」URIを解析するために、汎用階層URIパーサーを使用してはなりません(MUST NOT)。
The "stun" and "stuns" URI schemes are used to designate a stand-alone STUN server or any Internet host performing the operations of a STUN server in the context of STUN usages (Section 14 of RFC 5389 [RFC5389]). The STUN protocol supports sending messages over UDP, TCP, or TLS-over-TCP. The "stuns" URI scheme MUST be used when STUN is run over TLS-over-TCP (or in the future DTLS-over-UDP), and the "stun" scheme MUST be used otherwise.
「stun」および「stuns」URIスキームは、スタンドアロンのSTUNサーバー、またはSTUNの使用状況でSTUNサーバーの操作を実行するインターネットホストを指定するために使用されます(RFC 5389 [RFC5389]のセクション14)。 STUNプロトコルは、UDP、TCP、またはTLS-over-TCPを介したメッセージの送信をサポートしています。 「スタン」URIスキームは、STUNがTLS-over-TCP(または将来のDTLS-over-UDP)で実行される場合に使用する必要があり、「スタン」スキームはそれ以外の場合に使用する必要があります。
The required <host> part of the "stun" URI denotes the STUN server host.
「stun」URIの必須の<host>部分は、STUNサーバーホストを示します。
For the optional DNS discovery procedure mentioned in Section 9 of RFC 5389, the "stun" URI scheme implies UDP as the transport protocol for SRV lookup, and the "stuns" URI scheme indicates TCP as the transport protocol.
RFC 5389のセクション9で説明されているオプションのDNS検出手順の場合、「stun」URIスキームはSRVルックアップのトランスポートプロトコルとしてUDPを意味し、「stuns」URIスキームはトランスポートプロトコルとしてTCPを示します。
As specified in [RFC5389], the <port> part, if present, denotes the port on which the STUN server is awaiting connection requests. If it is absent, the default port is 3478 for both UDP and TCP. The default port for STUN over TLS is 5349 as per Section 9 of [RFC5389].
[RFC5389]で指定されているように、<port>部分は、存在する場合、STUNサーバーが接続要求を待機しているポートを示します。存在しない場合、UDPとTCPの両方のデフォルトポートは3478です。 [RFC5389]のセクション9に従って、STUN over TLSのデフォルトポートは5349です。
The "stun" and "stuns" URI schemes do not introduce any specific security issues beyond the security considerations discussed in [RFC3986]. These URI schemes are intended for use in specific environments that involve NAT traversal. Users of the scheme need to carefully consider the security properties of the context in which they are using them.
「stun」および「stuns」URIスキームは、[RFC3986]で説明されているセキュリティの考慮事項を超えて、特定のセキュリティ問題を導入しません。これらのURIスキームは、NATトラバーサルを含む特定の環境での使用を目的としています。スキームのユーザーは、それらを使用しているコンテキストのセキュリティプロパティを慎重に検討する必要があります。
Although a "stun" or "stuns" URI does not itself include the username or password that will be used to authenticate the STUN client, in certain environments, such as WebRTC, the username and password will almost certainly be provisioned remotely by an external agent at the same time as a "stuns" URI is sent to that client. Thus, in such situations, if the username and password were received in the clear, there would be little or no benefit to using a "stuns" URI. For this reason, a STUN client MUST ensure that the username, password, "stuns" URI, and any other security-relevant parameters are received with equivalent security before using the "stuns" URI. Receiving those parameters over another TLS session can provide the appropriate level of security if both TLS sessions are similarly parameterized, e.g., with commensurate strength ciphersuites.
「stun」または「stuns」URI自体には、STUNクライアントの認証に使用されるユーザー名またはパスワードが含まれていませんが、WebRTCなどの特定の環境では、ユーザー名とパスワードは外部エージェントによってほぼ確実にリモートでプロビジョニングされます「stuns」URIがそのクライアントに送信されると同時に。したがって、このような状況では、ユーザー名とパスワードを平文で受け取った場合、「stuns」URIを使用してもほとんどまたはまったくメリットがありません。このため、STUNクライアントは、「stuns」URIを使用する前に、ユーザー名、パスワード、「stuns」URI、およびその他のセキュリティ関連パラメータが同等のセキュリティで受信されることを確認する必要があります。別のTLSセッションを介してこれらのパラメーターを受信すると、両方のTLSセッションが同様にパラメーター化されている場合(たとえば、同等の強度の暗号スイートを使用している場合)に、適切なレベルのセキュリティを提供できます。
This section contains the registration information for the "stun" and "stuns" URI schemes (in accordance with [RFC4395]). Note that these URI schemes are intended for use in very specific NAT traversal environments and should not be used otherwise on the open Web or Internet.
このセクションには、「[stuns]および「stuns」URIスキームの登録情報が含まれています([RFC4395]に準拠)。これらのURIスキームは、非常に特定のNATトラバーサル環境での使用を意図しており、オープンなWebまたはインターネットでは使用しないでください。
URI scheme name: stun
URIスキーム名:stun
Status: permanent
ステータス:永続的
URI scheme syntax: See Section 3.1
URIスキームの構文:セクション3.1を参照
URI scheme semantics: See Section 3.2
URIスキームのセマンティクス:セクション3.2を参照
Encoding considerations: There are no encoding considerations beyond those in [RFC3986].
エンコーディングに関する考慮事項:[RFC3986]のエンコーディングに関する考慮事項以外はありません。
Applications/protocols that use this URI scheme name:
このURIスキーム名を使用するアプリケーション/プロトコル:
The "stun" URI scheme is intended to be used by applications with a need to identify a STUN server to be used for NAT traversal.
「スタン」URIスキームは、NATトラバーサルに使用するSTUNサーバーを識別する必要があるアプリケーションで使用することを目的としています。
Interoperability considerations: N/A
相互運用性に関する考慮事項:N / A
Security considerations: See Section 4
セキュリティに関する考慮事項:セクション4を参照
Contact: Suhas Nandakumar <snandaku@cisco.com>
Author/Change controller: The IESG
作成者/変更コントローラ:IESG
References: RFC 7064
参照:RFC 7064
URI scheme name: stuns
URIスキーム名:スタン
Status: permanent
ステータス:永続的
URI scheme syntax: See Section 3.1
URIスキームの構文:セクション3.1を参照
URI scheme semantics: See Section 3.2
URIスキームのセマンティクス:セクション3.2を参照
Encoding considerations: There are no encoding considerations beyond those in [RFC3986].
エンコーディングに関する考慮事項:[RFC3986]のエンコーディングに関する考慮事項以外はありません。
Applications/protocols that use this URI scheme name:
このURIスキーム名を使用するアプリケーション/プロトコル:
The "stuns" URI scheme is intended to be used by applications with a need to identify a STUN server to be used for NAT traversal over a secure connection.
「stuns」URIスキームは、安全な接続を介したNATトラバーサルに使用するSTUNサーバーを識別する必要があるアプリケーションで使用することを目的としています。
Interoperability considerations: N/A
相互運用性に関する考慮事項:N / A
Security considerations: See Section 4
セキュリティに関する考慮事項:セクション4を参照
Contact: Suhas Nandakumar <snandaku@cisco.com>
Author/Change controller: The IESG
作成者/変更コントローラ:IESG
References: RFC 7064
参照:RFC 7064
The authors would like to extend a very special thanks to Cullen Jennings for bringing to our attention to WebRTC's need for this document, as well as his detailed review and thoughtful comments on this document.
著者は、このドキュメントに対するWebRTCの必要性、およびこのドキュメントに関する彼の詳細なレビューと慎重なコメントに注目してくれたCullen Jenningsに非常に特別な感謝を表明したいと思います。
This document has benefited from extensive discussion and review of many of the members of the RTCWEB and BEHAVE working groups. The authors would also like to acknowledge Ted Hardie, Bjoern Hoehrmann, Russ Housley, Subramanian Moonesamy, Hadriel Kaplan, Graham Klyne, Peter Saint-Andre, Ted Lemon, Barry Leiba, Pete Resnick, Spencer Dawkins, Stephen Farrell, and Harald Alvestrand for their invaluable input, reviews, feedback comments, and suggestions that helped to improve this document.
このドキュメントは、RTCWEBおよびBEHAVEワーキンググループのメンバーの多くの広範な議論とレビューの恩恵を受けています。著者はまた、テッド・ハーディ、ビョーン・ホーマン、ラス・ハスリー、サブラマニアン・ムーネサミー、ハドリエル・カプラン、グラハム・クライン、ピーター・サンタンドレ、テッド・レモン、バリー・レイバ、ピート・レズニック、スペンサー・ドーキンス、スティーブン・ファレル、およびハラルド・アルベストランドに感謝しますこのドキュメントの改善に役立つ貴重な入力、レビュー、フィードバックコメント、および提案。
The authors would also like to express their gratitude to Dan Wing for his assistance in shepherding this document. We also want to thank Gonzalo Camarillo, the Real-time Applications and Infrastructure Area Director, for sponsoring this document as well as his careful reviews.
著者はまた、この文書の羊飼いを手伝ってくれたDan Wingに感謝の意を表したいと思います。また、このドキュメントのスポンサーおよび慎重なレビューを提供してくれた、リアルタイムアプリケーションおよびインフラストラクチャエリアディレクターのゴンザロカマリロにも感謝します。
[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月。
[RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, January 2005.
[RFC3986] Berners-Lee、T.、Fielding、R。、およびL. Masinter、「Uniform Resource Identifier(URI):Generic Syntax」、STD 66、RFC 3986、2005年1月。
[RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, January 2008.
[RFC5234] Crocker、D。およびP. Overell、「構文仕様の拡張BNF:ABNF」、STD 68、RFC 5234、2008年1月。
[RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, June 1999.
[RFC2629] Rose、M。、「Writing I-Ds and RFCs using XML」、RFC 2629、1999年6月。
[RFC4395] Hansen, T., Hardie, T., and L. Masinter, "Guidelines and Registration Procedures for New URI Schemes", BCP 35, RFC 4395, February 2006.
[RFC4395] Hansen、T.、Hardie、T。、およびL. Masinter、「新しいURIスキームのガイドラインと登録手順」、BCP 35、RFC 4395、2006年2月。
[RFC5389] Rosenberg, J., Mahy, R., Matthews, P., and D. Wing, "Session Traversal Utilities for NAT (STUN)", RFC 5389, October 2008.
[RFC5389] Rosenberg、J.、Mahy、R.、Matthews、P。、およびD. Wing、「NAT用セッショントラバーサルユーティリティ(STUN)」、RFC 5389、2008年10月。
[WEBRTC] Bergkvist, A., Burnett, D., Jennings, C., and A. Narayanan, "WebRTC 1.0: Real-time Communication Between Browsers", World Wide Web Consortium WD WD-webrtc-20120821, August 2012, <http://www.w3.org/TR/2012/WD-webrtc-20120821>.
[WEBRTC] Bergkvist、A.、Burnett、D.、Jennings、C。、およびA. Narayanan、「WebRTC 1.0:ブラウザー間のリアルタイム通信」、World Wide Web Consortium WD WD-webrtc-20120821、2012年8月、< http://www.w3.org/TR/2012/WD-webrtc-20120821>。
Table 1 shows examples for the "stun" and "stuns" URI schemes. For all these examples, the <host> component is populated with "example.org".
表1は、「stun」および「stuns」URIスキームの例を示しています。これらすべての例で、<host>コンポーネントには「example.org」が入力されています。
+-----------------------+ | URI | +-----------------------+ | stun:example.org | | stuns:example.org | | stun:example.org:8000 | +-----------------------+
Table 1
表1
o One recurring comment was to stop using the suffix "s" on the URI scheme and to move the secure option to a parameter (e.g., ";proto=tls"). We decided against this idea because the need for ";proto=" for the STUN URI cannot be sufficiently explained, and supporting it would render an incomplete specification. This would also result in lost symmetry between the TURN and STUN URIs.
o 繰り返しコメントの1つは、URIスキームでの接尾辞「s」の使用を停止し、セキュアオプションをパラメーターに移動することでした(たとえば、「; proto = tls」)。 STUN URIの「; proto =」の必要性を十分に説明できず、それをサポートすると仕様が不完全になるため、この考えに反対しました。これにより、TURN URIとSTUN URIの対称性も失われます。
o Following the advice of Section 2.2 of [RFC4395], and because the STUN URI does not describe a hierarchical structure, the STUN URIs are opaque.
o [RFC4395]のセクション2.2のアドバイスに従い、STUN URIは階層構造を記述していないため、STUN URIは不透明です。
Authors' Addresses
著者のアドレス
Suhas Nandakumar Cisco Systems 170 West Tasman Drive San Jose, CA 95134 USA
Suhas Nandakumar Cisco Systems 170 West Tasman Drive San Jose、CA 95134 USA
EMail: snandaku@cisco.com
Gonzalo Salgueiro Cisco Systems 7200-12 Kit Creek Road Research Triangle Park, NC 27709 USA
Gonzalo Salgueiro Cisco Systems 7200-12 Kit Creek Road Research Triangle Park、NC 27709 USA
EMail: gsalguei@cisco.com
Paul E. Jones Cisco Systems 7025 Kit Creek Road Research Triangle Park, NC 27709 USA
Paul E. Jones Cisco Systems 7025 Kit Creek Road Research Triangle Park、NC 27709 USA
EMail: paulej@packetizer.com
Marc Petit-Huguenin Impedance Mismatch
マルクプティフーゲニンインピーダンスミスマッチ
EMail: petithug@acm.org