18. IANA Considerations (IANAに関する考慮事項)
IANAは3つの新しいレジストリを作成しました:「STUN Methods Registry」(STUNメソッドレジストリ)、「STUN Attribute Registry」(STUN属性レジストリ)、および「STUN Error Codes Registry」(STUNエラーコードレジストリ)。IANAはまた、STUNのIANA割り当てポート名を「nat-stun-port」から「stun」に変更しました。
18.1. STUN Methods Registry (STUNメソッドレジストリ)
STUNメソッドは、0x000 - 0xFFFの範囲の16進数です。STUNメソッドをSTUNメッセージにエンコードする方法については、セクション6で説明されています。
初期STUNメソッドは次のとおりです:
- 0x000: (Reserved,予約済み)
- 0x001: Binding
- 0x002: (Reserved; was SharedSecret,予約済み;以前はSharedSecret)
0x000 - 0x7FFの範囲のSTUNメソッドは、IETF Review [RFC5226]によって割り当てられます。0x800 - 0xFFFの範囲のSTUNメソッドは、Designated Expert [RFC5226]によって割り当てられます。専門家の責任は、選択されたコードポイントが使用されていないこと、および要求が異常に多数のコードポイントを求めていないことを確認することです。拡張自体の技術的レビューは、指定された専門家の責任の範囲外です。
18.2. STUN Attribute Registry (STUN属性レジストリ)
STUN属性タイプは、0x0000 - 0xFFFFの範囲の16進数です。0x0000 - 0x7FFFの範囲のSTUN属性タイプは理解必須と見なされ、0x8000 - 0xFFFFの範囲のSTUN属性タイプは理解オプションと見なされます。STUNエージェントは、未知の理解必須属性と理解オプション属性を異なる方法で処理します。
初期STUN属性タイプは次のとおりです:
理解必須範囲 (0x0000-0x7FFF):
- 0x0000: (Reserved,予約済み)
- 0x0001: MAPPED-ADDRESS
- 0x0002: (Reserved; was RESPONSE-ADDRESS,予約済み;以前はRESPONSE-ADDRESS)
- 0x0003: (Reserved; was CHANGE-ADDRESS,予約済み;以前はCHANGE-ADDRESS)
- 0x0004: (Reserved; was SOURCE-ADDRESS,予約済み;以前はSOURCE-ADDRESS)
- 0x0005: (Reserved; was CHANGED-ADDRESS,予約済み;以前はCHANGED-ADDRESS)
- 0x0006: USERNAME
- 0x0007: (Reserved; was PASSWORD,予約済み;以前はPASSWORD)
- 0x0008: MESSAGE-INTEGRITY
- 0x0009: ERROR-CODE
- 0x000A: UNKNOWN-ATTRIBUTES
- 0x000B: (Reserved; was REFLECTED-FROM,予約済み;以前はREFLECTED-FROM)
- 0x0014: REALM
- 0x0015: NONCE
- 0x0020: XOR-MAPPED-ADDRESS
理解オプション範囲 (0x8000-0xFFFF):
- 0x8022: SOFTWARE
- 0x8023: ALTERNATE-SERVER
- 0x8028: FINGERPRINT
理解必須範囲の前半 (0x0000 - 0x3FFF) および理解オプション範囲の前半 (0x8000 - 0xBFFF) のSTUN属性タイプは、IETF Review [RFC5226]によって割り当てられます。理解必須範囲の後半 (0x4000 - 0x7FFF) および理解オプション範囲の後半 (0xC000 - 0xFFFF) のSTUN属性タイプは、Designated Expert [RFC5226]によって割り当てられます。専門家の責任は、選択されたコードポイントが使用されていないこと、および要求が異常に多数のコードポイントを求めていないことを確認することです。拡張自体の技術的レビューは、指定された専門家の責任の範囲外です。
18.3. STUN Error Code Registry (STUNエラーコードレジストリ)
STUNエラーコードは、0 - 699の範囲の数値です。STUNエラーコードには、人間が使用することを目的としたUTF-8 [RFC3629]のテキスト理由フレーズが付随し、適切な内容であれば何でもかまいません。本ドキュメントは推奨値のみを提案しています。
STUNエラーコードは、コードポイントの割り当てとセマンティクスにおいてSIP [RFC3261]およびHTTP [RFC2616]と一貫しています。
このレジストリの初期値は、セクション15.6に示されています。
新しいSTUNエラーコードは、IETF Review [RFC5226]に基づいて割り当てられます。仕様は、要求を許可する前に、このエラーコードを理解しないクライアントがそれをどのように処理するかを慎重に検討しなければなりません。セクション7.3.4のルールを参照してください。
18.4. STUN UDP and TCP Port Numbers (STUN UDPおよびTCPポート番号)
IANAは以前、STUNにポート3478を割り当てました。このポートは、IANAレジストリで「nat-stun-port」という名前で表示されます。DNS SRV手順を登録されたプロトコルサービスと連携させるために、IANAは、ポート3478に割り当てられたプロトコル名を「nat-stun-port」から「stun」に変更し、テキスト名を「Simple Traversal of UDP Through NAT (STUN)」から「Session Traversal Utilities for NAT」に変更するように要求されています。これにより、IANAポートレジストリは次のように表示されます:
stun 3478/tcp Session Traversal Utilities for NAT (STUN) port
stun 3478/udp Session Traversal Utilities for NAT (STUN) port
さらに、IANAはTCPおよびUDPで定義される「stuns」サービスにポート番号5349を割り当てました。UDPポートは現在定義されていません。ただし、将来の使用のために予約されています。