IPv6アドレステキスト表現の推奨事項

英文を機械翻訳で日本語訳としています。日本語訳が正しくないことが考えられますので原文をメインとし、参考程度にご利用ください。

日本語訳

Internet Engineering Task Force (IETF)                       S. Kawamura
Request for Comments: 5952                             NEC BIGLOBE, Ltd.
Updates: 4291                                               M. Kawashima
Category: Standards Track                       NEC AccessTechnica, Ltd.
ISSN: 2070-1721                                              August 2010


         A Recommendation for IPv6 Address Text Representation

IPv6アドレステキスト表現の推奨事項


Abstract

概要


   As IPv6 deployment increases, there will be a dramatic increase in
   the need to use IPv6 addresses in text.  While the IPv6 address
   architecture in Section 2.2 of RFC 4291 describes a flexible model
   for text representation of an IPv6 address, this flexibility has been
   causing problems for operators, system engineers, and users.  This
   document defines a canonical textual representation format.  It does
   not define a format for internal storage, such as within an
   application or database.  It is expected that the canonical format
   will be followed by humans and systems when representing IPv6
   addresses as text, but all implementations must accept and be able to
   handle any legitimate RFC 4291 format.

IPv6の導入が増えると、IPv6アドレスをテキストで使用する必要性が劇的に高まります。 RFC 4291のセクション2.2のIPv6アドレスアーキテクチャは、IPv6アドレスのテキスト表現の柔軟なモデルを記述していますが、この柔軟性は、オペレーター、システムエンジニア、およびユーザーに問題を引き起こしています。 このドキュメントでは、正規のテキスト表現形式を定義しています。 アプリケーションやデータベース内などの内部ストレージのフォーマットは定義していません。 IPv6アドレスをテキストとして表現する場合、正規形式の後に人とシステムが続くことが予想されますが、すべての実装は、正当なRFC 4291形式を受け入れ、処理できる必要があります。


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コミュニティのコンセンサスを表しています。 これは公開レビューを受けており、Internet Engineering Steering Group(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/rfc5952.

このドキュメントの現在のステータス、エラータ、およびフィードバックの提供方法に関する情報は、http://www.rfc-editor.org/info/rfc5952で入手できます。
















Kawamura & Kawashima         Standards Track                    [Page 1]

RFC 5952                IPv6 Text Representation             August 2010


Copyright Notice

著作権表示


   Copyright (c) 2010 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

Copyright(c)2010 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に記載されているように保証なしで提供されます。






































Kawamura & Kawashima         Standards Track                    [Page 2]

RFC 5952                IPv6 Text Representation             August 2010


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  4
     1.1.  Requirements Language  . . . . . . . . . . . . . . . . . .  4
   2.  Text Representation Flexibility of RFC 4291  . . . . . . . . .  4
     2.1.  Leading Zeros in a 16-Bit Field  . . . . . . . . . . . . .  4
     2.2.  Zero Compression . . . . . . . . . . . . . . . . . . . . .  5
     2.3.  Uppercase or Lowercase . . . . . . . . . . . . . . . . . .  6
   3.  Problems Encountered with the Flexible Model . . . . . . . . .  6
     3.1.  Searching  . . . . . . . . . . . . . . . . . . . . . . . .  6
       3.1.1.  General Summary  . . . . . . . . . . . . . . . . . . .  6
       3.1.2.  Searching Spreadsheets and Text Files  . . . . . . . .  6
       3.1.3.  Searching with Whois . . . . . . . . . . . . . . . . .  6
       3.1.4.  Searching for an Address in a Network Diagram  . . . .  7
     3.2.  Parsing and Modifying  . . . . . . . . . . . . . . . . . .  7
       3.2.1.  General Summary  . . . . . . . . . . . . . . . . . . .  7
       3.2.2.  Logging  . . . . . . . . . . . . . . . . . . . . . . .  7
       3.2.3.  Auditing: Case 1 . . . . . . . . . . . . . . . . . . .  8
       3.2.4.  Auditing: Case 2 . . . . . . . . . . . . . . . . . . .  8
       3.2.5.  Verification . . . . . . . . . . . . . . . . . . . . .  8
       3.2.6.  Unexpected Modifying . . . . . . . . . . . . . . . . .  8
     3.3.  Operating  . . . . . . . . . . . . . . . . . . . . . . . .  8
       3.3.1.  General Summary  . . . . . . . . . . . . . . . . . . .  8
       3.3.2.  Customer Calls . . . . . . . . . . . . . . . . . . . .  9
       3.3.3.  Abuse  . . . . . . . . . . . . . . . . . . . . . . . .  9
     3.4.  Other Minor Problems . . . . . . . . . . . . . . . . . . .  9
       3.4.1.  Changing Platforms . . . . . . . . . . . . . . . . . .  9
       3.4.2.  Preference in Documentation  . . . . . . . . . . . . .  9
       3.4.3.  Legibility . . . . . . . . . . . . . . . . . . . . . .  9
   4.  A Recommendation for IPv6 Text Representation  . . . . . . . . 10
     4.1.  Handling Leading Zeros in a 16-Bit Field . . . . . . . . . 10
     4.2.  "::" Usage . . . . . . . . . . . . . . . . . . . . . . . . 10
       4.2.1.  Shorten as Much as Possible  . . . . . . . . . . . . . 10
       4.2.2.  Handling One 16-Bit 0 Field  . . . . . . . . . . . . . 10
       4.2.3.  Choice in Placement of "::"  . . . . . . . . . . . . . 10
     4.3.  Lowercase  . . . . . . . . . . . . . . . . . . . . . . . . 10
   5.  Text Representation of Special Addresses . . . . . . . . . . . 11
   6.  Notes on Combining IPv6 Addresses with Port Numbers  . . . . . 11
   7.  Prefix Representation  . . . . . . . . . . . . . . . . . . . . 12
   8.  Security Considerations  . . . . . . . . . . . . . . . . . . . 12
   9.  Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 12
   10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 12
     10.1. Normative References . . . . . . . . . . . . . . . . . . . 12
     10.2. Informative References . . . . . . . . . . . . . . . . . . 13
   Appendix A.  For Developers  . . . . . . . . . . . . . . . . . . . 14
   1.はじめに. . . . . . . . . . . . . . . . . . . . . . . . . 4
     1.1.要件言語. . . . . . . . . . . . . . . . . . 4
   2. RFC 4291のテキスト表現の柔軟性. . . . . . . . . 4
     2.1. 16ビットフィールドの先頭のゼロ. . . . . . . . . . . . . 4
     2.2.ゼロ圧縮. . . . . . . . . . . . . . . . . . . . . 5
     2.3.大文字または小文字. . . . . . . . . . . . . . . . . . 6
   3.フレキシブルモデルで発生した問題. . . . . . . . . 6
     3.1.検索しています. . . . . . . . . . . . . . . . . . . . . . . . 6
       3.1.1.一般的な概要. . . . . . . . . . . . . . . . . . . 6
       3.1.2.スプレッドシートとテキストファイルの検索. . . . . . . 6
       3.1.3. Whoisで検索しています. . . . . . . . . . . . . . . . . 6
       3.1.4.ネットワークダイアグラムでアドレスを検索する. . . 7
     3.2.解析と変更. . . . . . . . . . . . . . . . . . 7
       3.2.1.一般的な概要. . . . . . . . . . . . . . . . . . . 7
       3.2.2.ロギング. . . . . . . . . . . . . . . . . . . . . . . 7
       3.2.3.監査:ケース1. . . . . . . . . . . . . . . . . . . 8
       3.2.4.監査:ケース2. . . . . . . . . . . . . . . . . . . 8
       3.2.5.検証. . . . . . . . . . . . . . . . . . . . . 8
       3.2.6.予期しない変更. . . . . . . . . . . . . . . . . 8
     3.3.動作中. . . . . . . . . . . . . . . . . . . . . . . . 8
       3.3.1.一般的な概要. . . . . . . . . . . . . . . . . . . 8
       3.3.2.お客様からの電話. . . . . . . . . . . . . . . . . . . . 9
       3.3.3.虐待. . . . . . . . . . . . . . . . . . . . . . . . 9
     3.4.その他の軽微な問題. . . . . . . . . . . . . . . . . . . 9
       3.4.1.プラットフォームの変更. . . . . . . . . . . . . . . . . . 9
       3.4.2.ドキュメンテーションの設定. . . . . . . . . . . . . 9
       3.4.3.読みやすさ. . . . . . . . . . . . . . . . . . . . . . 9
   4. IPv6テキスト表現に関する推奨事項. . . . . . . . 10
     4.1. 16ビットフィールドでの先行ゼロの処理. . . . . . . . . 10
     4.2. "::" 使用法 . . . . . . . . . . . . . . . . . . . . . . . . 10
       4.2.1.可能な限り短くする. . . . . . . . . . . . . 10
       4.2.2. 1つの16ビット0フィールドの処理. . . . . . . . . . . . . 10
       4.2.3. "::"の配置の選択. . . . . . . . . . . . . 10
     4.3.小文字. . . . . . . . . . . . . . . . . . . . . . . . 10
   5.特別な住所のテキスト表現. . . . . . . . . . . 11
   6. IPv6アドレスとポート番号の組み合わせに関する注意事項. . . . . 11
   7.プレフィックス表現. . . . . . . . . . . . . . . . . . . . 12
   8.セキュリティに関する考慮事項. . . . . . . . . . . . . . . . . . . 12
   9.謝辞. . . . . . . . . . . . . . . . . . . . . . . 12
   10.参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . 12
     10.1規範的な参照. . . . . . . . . . . . . . . . . . . 12
     10.2有益な参照. . . . . . . . . . . . . . . . . . 13
   付録A.開発者向け. . . . . . . . . . . . . . . . . . . 14






Kawamura & Kawashima         Standards Track                    [Page 3]

RFC 5952                IPv6 Text Representation             August 2010


1.  Introduction

1.はじめに


   A single IPv6 address can be text represented in many ways.  Examples
   are shown below.

単一のIPv6アドレスは、さまざまな方法でテキストで表すことができます。 以下に例を示します。


      2001:db8:0:0:1:0:0:1

      2001:0db8:0:0:1:0:0:1

      2001:db8::1:0:0:1

      2001:db8::0:1:0:0:1

      2001:0db8::1:0:0:1

      2001:db8:0:0:1::1

      2001:db8:0000:0:1::1

      2001:DB8:0:0:1::1

   All of the above examples represent the same IPv6 address.  This
   flexibility has caused many problems for operators, systems
   engineers, and customers.  The problems are noted in Section 3.  A
   canonical representation format to avoid problems is introduced in
   Section 4.

上記の例はすべて同じIPv6アドレスを表しています。 この柔軟性は、オペレーター、システムエンジニア、および顧客に多くの問題を引き起こしています。 問題はセクション3に記載されています。 問題を回避するための正規表現形式は、セクション4で紹介されています。


1.1.  Requirements Language

1.1。 要件言語


   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」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「MAY」、および「OPTIONAL」は、 [RFC2119]で説明されているように解釈されます。


2.  Text Representation Flexibility of RFC 4291

2. RFC 4291のテキスト表現の柔軟性


   Examples of flexibility in Section 2.2 of [RFC4291] are described
   below.

[RFC4291]のセクション2.2の柔軟性の例を以下に示します。


2.1.  Leading Zeros in a 16-Bit Field

2.1。 16ビットフィールドの先行ゼロ


      'It is not necessary to write the leading zeros in an individual
      field.'

'個々のフィールドに先行ゼロを書き込む必要はありません。


   Conversely, it is also not necessary to omit leading zeros.  This
   means that it is possible to select from representations such as
   those in the following example.  The final 16-bit field is different,
   but all of these addresses represent the same address.

逆に、先行ゼロを省略する必要もありません。 これは、次の例のような表現から選択できることを意味します。 最後の16ビットフィールドは異なりますが、これらのアドレスはすべて同じアドレスを表します。





Kawamura & Kawashima         Standards Track                    [Page 4]

RFC 5952                IPv6 Text Representation             August 2010


      2001:db8:aaaa:bbbb:cccc:dddd:eeee:0001

      2001:db8:aaaa:bbbb:cccc:dddd:eeee:001

      2001:db8:aaaa:bbbb:cccc:dddd:eeee:01

      2001:db8:aaaa:bbbb:cccc:dddd:eeee:1

2.2.  Zero Compression

2.2。 ゼロ圧縮


      'A special syntax is available to compress the zeros.  The use of
      "::" indicates one or more groups of 16 bits of zeros.'

'ゼロを圧縮するための特別な構文が利用可能です。 「::」の使用は、16ビットのゼロの1つ以上のグループを示します。


   It is possible to select whether or not to omit just one 16-bit 0
   field.

16ビットの0フィールドを1つだけ省略するかどうかを選択できます。


      2001:db8:aaaa:bbbb:cccc:dddd::1

      2001:db8:aaaa:bbbb:cccc:dddd:0:1

   In cases where there is more than one field of only zeros, there is a
   choice of how many fields can be shortened.

ゼロのみのフィールドが複数ある場合は、短縮できるフィールドの数を選択できます。


      2001:db8:0:0:0::1

      2001:db8:0:0::1

      2001:db8:0::1

      2001:db8::1

   In addition, Section 2.2 of [RFC4291] notes,

さらに、[RFC4291]のセクション2.2は、


      'The "::" can only appear once in an address.'

「「::」は、アドレス内で1回だけ使用できます。」


   This gives a choice on where in a single address to compress the
   zero.

これにより、単一のアドレスのどこでゼロを圧縮するかを選択できます。


      2001:db8::aaaa:0:0:1

      2001:db8:0:0:aaaa::1










Kawamura & Kawashima         Standards Track                    [Page 5]

RFC 5952                IPv6 Text Representation             August 2010


2.3.  Uppercase or Lowercase

2.3。 大文字または小文字


   [RFC4291] does not mention any preference of uppercase or lowercase.

[RFC4291]は大文字または小文字の設定については触れていません。


      2001:db8:aaaa:bbbb:cccc:dddd:eeee:aaaa

      2001:db8:aaaa:bbbb:cccc:dddd:eeee:AAAA

      2001:db8:aaaa:bbbb:cccc:dddd:eeee:AaAa

3.  Problems Encountered with the Flexible Model

3.フレキシブルモデルで発生する問題


3.1.  Searching

3.1。 検索中


3.1.1.  General Summary

3.1.1。 総括


   A search of an IPv6 address if conducted through a UNIX system is
   usually case sensitive and extended options that allow for regular
   expression use will come in handy.  However, there are many
   applications in the Internet today that do not provide this
   capability.  When searching for an IPv6 address in such systems, the
   system engineer will have to try each and every possibility to search
   for an address.  This has critical impacts, especially when trying to
   deploy IPv6 over an enterprise network.

UNIXシステムを介して行われる場合のIPv6アドレスの検索は、通常、大文字と小文字が区別され、正規表現の使用を可能にする拡張オプションが役立ちます。 ただし、今日のインターネットには、この機能を提供しない多くのアプリケーションがあります。 そのようなシステムでIPv6アドレスを検索する場合、システムエンジニアはアドレスを検索するためにあらゆる可能性を試す必要があります。 これは、特に企業ネットワーク上でIPv6を展開しようとするときに、重大な影響を及ぼします。


3.1.2.  Searching Spreadsheets and Text Files

3.1.2。 スプレッドシートとテキストファイルの検索


   Spreadsheet applications and text editors on GUI systems rarely have
   the ability to search for text using regular expression.  Moreover,
   there are many non-engineers (who are not aware of case sensitivity
   and regular expression use) that use these applications to manage IP
   addresses.  This has worked quite well with IPv4 since text
   representation in IPv4 has very little flexibility.  There is no
   incentive to encourage these non-engineers to change their tool or
   learn regular expression when they decide to go dual-stack.  If the
   entry in the spreadsheet reads, 2001:db8::1:0:0:1, but the search was
   conducted as 2001:db8:0:0:1::1, this will show a result of no match.
   One example where this will cause a problem is, when the search is
   being conducted to assign a new address from a pool, and a check is
   being done to see if it is not in use.  This may cause problems for
   the end-hosts or end-users.  This type of address management is very
   often seen in enterprise networks and ISPs.

スプレッドシートアプリケーションとGUIシステムのテキストエディタでは、正規表現を使用してテキストを検索する機能はほとんどありません。 さらに、これらのアプリケーションを使用してIPアドレスを管理する非エンジニア(大文字と小文字の区別や正規表現の使用を認識していない)がたくさんいます。 IPv4でのテキスト表現は柔軟性がほとんどないため、これはIPv4で非常にうまく機能しています。 これらの非エンジニアがツールを変更したり、デュアルスタックに移行することを決定したときに正規表現を学ぶように奨励するインセンティブはありません。 スプレッドシートのエントリが2001:db8 :: 1:0:0:1であるが、検索が2001:db8:0:0:1 :: 1として行われた場合、これは一致しない結果を示します。 これが問題の原因となる1つの例は、プールから新しいアドレスを割り当てるために検索が実行され、そのアドレスが使用されていないかどうかを確認する場合です。 これにより、エンドホストまたはエンドユーザーに問題が発生する可能性があります。 このタイプのアドレス管理は、企業ネットワークやISPでよく見られます。


3.1.3.  Searching with Whois

3.1.3。 Whoisで検索


   The "whois" utility is used by a wide range of people today.  When a
   record is set to a database, one will likely check the output to see
   if the entry is correct.  If an entity was recorded as 2001:db8::/48,



Kawamura & Kawashima         Standards Track                    [Page 6]

RFC 5952                IPv6 Text Representation             August 2010


   but the whois output showed 2001:0db8:0000::/48, most non-engineers
   would think that their input was wrong and will likely retry several
   times or make a frustrated call to the database hostmaster.  If there
   was a need to register the same prefix on different systems, and each
   system showed a different text representation, this would confuse
   people even more.  Although this document focuses on addresses rather
   than prefixes, it is worth mentioning the prefix problems because the
   problems encountered with addresses and prefixes are mostly equal.

「whois」ユーティリティは、今日、さまざまな人々によって使用されています。 レコードがデータベースに設定されると、おそらく出力をチェックして、エントリが正しいかどうかを確認します。 エンティティが2001:db8 :: / 48として記録されていて、whois出力が2001:0db8:0000 :: / 48を示している場合、ほとんどの非エンジニアは入力が間違っていると考え、数回再試行するか、イライラする可能性があります データベースのホストマスターを呼び出します。 異なるシステムで同じプレフィックスを登録する必要があり、各システムが異なるテキスト表現を示した場合、これは人々をさらに混乱させるでしょう。 このドキュメントではプレフィックスではなくアドレスに焦点を当てていますが、アドレスとプレフィックスで発生する問題はほとんど同じであるため、プレフィックスの問題について言及する価値があります。


3.1.4.  Searching for an Address in a Network Diagram

3.1.4。 ネットワークダイアグラムでのアドレスの検索


   Network diagrams and blueprints often show what IP addresses are
   assigned to a system devices.  In times of trouble shooting there may
   be a need to search through a diagram to find the point of failure
   (for example, if a traceroute stopped at 2001:db8::1, one would
   search the diagram for that address).  This is a technique quite
   often in use in enterprise networks and managed services.  Again, the
   different flavors of text representation will result in a time-
   consuming search leading to longer mean times to restoration (MTTR)
   in times of trouble.

多くの場合、ネットワークダイアグラムとブループリントは、システムデバイスに割り当てられているIPアドレスを示しています。 トラブルシューティングの際に、障害箇所を見つけるために図を検索する必要がある場合があります(たとえば、tracerouteが2001:db8 :: 1で停止した場合、図でそのアドレスを検索します)。 これは、企業ネットワークやマネージドサービスでよく使用される手法です。 繰り返しになりますが、テキスト表現の種類が異なると検索に時間がかかり、問題が発生した場合の平均復旧時間(MTTR)が長くなります。


3.2.  Parsing and Modifying

3.2。 解析と変更


3.2.1.  General Summary

3.2.1。 総括


   With all the possible methods of text representation, each
   application must include a module, object, link, etc. to a function
   that will parse IPv6 addresses in a manner such that no matter how it
   is represented, they will mean the same address.  Many system
   engineers who integrate complex computer systems for corporate
   customers will have difficulties finding that their favorite tool
   will not have this function, or will encounter difficulties such as
   having to rewrite their macros or scripts for their customers.

テキスト表現の可能なすべての方法で、各アプリケーションにはモジュール、オブジェクト、リンクなどを含める必要があります。 IPv6アドレスをどのように表現しても同じアドレスを意味するようにIPv6アドレスを解析する関数に。 法人顧客向けの複雑なコンピューターシステムを統合する多くのシステムエンジニアは、お気に入りのツールにこの機能がないことを発見したり、顧客のためにマクロやスクリプトを書き直したりするなどの困難に直面するでしょう。


3.2.2.  Logging

3.2.2。 ロギング


   If an application were to output a log summary that represented the
   address in full (such as 2001:0db8:0000:0000:1111:2222:3333:4444),
   the output would be highly unreadable compared to the IPv4 output.
   The address would have to be parsed and reformed to make it useful
   for human reading.  Sometimes logging for critical systems is done by
   mirroring the same traffic to two different systems.  Care must be
   taken so that no matter what the log output is, the logs should be
   parsed so they are equivalent.

アプリケーションがアドレス全体を表すログサマリーを出力する場合(2001:0db8:0000:0000:1111:2222:3333:4444など)、出力はIPv4出力に比べて非常に読みにくくなります。 人間の読書に役立つようにするために、アドレスを解析および修正する必要があります。 重要なシステムのロギングは、同じトラフィックを2つの異なるシステムにミラーリングすることによって行われる場合があります。 ログ出力が何であっても、ログが同等になるようにログを解析するように注意する必要があります。








Kawamura & Kawashima         Standards Track                    [Page 7]

RFC 5952                IPv6 Text Representation             August 2010


3.2.3.  Auditing: Case 1

3.2.3。 監査:ケース1


   When a router or any other network appliance machine configuration is
   audited, there are many methods to compare the configuration
   information of a node.  Sometimes auditing will be done by just
   comparing the changes made each day.  In this case, if configuration
   was done such that 2001:db8::1 was changed to 2001:0db8:0000:0000:
   0000:0000:0000:0001 just because the new engineer on the block felt
   it was better, a simple diff will show that a different address was
   configured.  If this was done on a wide scale network, people will be
   focusing on 'why the extra zeros were put in' instead of doing any
   real auditing.  Lots of tools are just plain diffs that do not take
   into account address representation rules.

ルーターまたはその他のネットワークアプライアンスマシン構成を監査する場合、ノードの構成情報を比較する方法は多数あります。 毎日行われる変更を比較するだけで監査が行われることもあります。 この場合、2001:db8 :: 1が2001:0db8:0000:0000:0000:0000:0000:0001に変更されるように構成が行われた場合、ブロックの新しいエンジニアはそれがより良いと感じたため、単純な差分 別のアドレスが構成されたことを示します。 これが大規模ネットワークで行われた場合、人々は実際の監査を行うのではなく、「なぜ追加のゼロが挿入されたのか」に焦点を当てます。 多くのツールは、アドレス表現規則を考慮に入れていない単なる差分です。


3.2.4.  Auditing: Case 2

3.2.4。 監査:ケース2


   Node configurations will be matched against an information system
   that manages IP addresses.  If output notation is different, there
   will need to be a script that is implemented to cover for this.  The
   result of an SNMP GET operation, converted to text and compared to a
   textual address written by a human is highly unlikely to match on the
   first try.

ノード構成は、IPアドレスを管理する情報システムと照合されます。 出力表記が異なる場合は、これをカバーするために実装されているスクリプトが必要です。 SNMP GET操作の結果がテキストに変換され、人間が書き込んだテキストアドレスと比較すると、最初の試行で一致する可能性はほとんどありません。


3.2.5.  Verification

3.2.5。 検証


   Some protocols require certain data fields to be verified.  One
   example of this is X.509 certificates.  If an IPv6 address field in a
   certificate was incorrectly verified by converting it to text and
   making a simple textual comparison to some other address, the
   certificate may be mistakenly shown as being invalid due to a
   difference in text representation methods.

一部のプロトコルでは、特定のデータフィールドを確認する必要があります。 この1つの例はX.509証明書です。 証明書のIPv6アドレスフィールドがテキストに変換され、他のアドレスと単純なテキスト比較を行うことで誤って検証された場合、テキスト表現方法の違いにより、証明書が誤って無効であると表示されることがあります。


3.2.6.  Unexpected Modifying

3.2.6。 予期しない変更


   Sometimes, a system will take an address and modify it as a
   convenience.  For example, a system may take an input of
   2001:0db8:0::1 and make the output 2001:db8::1.  If the zeros were
   input for a reason, the outcome may be somewhat unexpected.

時々、システムはアドレスを取得し、便宜上それを変更します。 たとえば、システムが2001:0db8:0 :: 1の入力を受け取り、出力を2001:db8 :: 1にする場合があります。 何らかの理由でゼロが入力された場合、結果は予期しないものになる可能性があります。


3.3.  Operating

3.3。 オペレーティング


3.3.1.  General Summary

3.3.1。 総括


   When an operator sets an IPv6 address of a system as 2001:db8:0:0:1:
   0:0:1, the system may take the address and show the configuration
   result as 2001:DB8::1:0:0:1.  Someone familiar with IPv6 address
   representation will know that the right address is set, but not
   everyone may understand this.

オペレーターがシステムのIPv6アドレスを2001:db8:0:0:1:0:0:1として設定すると、システムはアドレスを取得して、2001:DB8 :: 1:0:0:として構成結果を表示します。 1。 IPv6アドレスの表現に詳しい人は、正しいアドレスが設定されていることを知っていますが、誰もがこれを理解しているとは限りません。




Kawamura & Kawashima         Standards Track                    [Page 8]

RFC 5952                IPv6 Text Representation             August 2010


3.3.2.  Customer Calls

3.3.2。 顧客からの電話


   When a customer calls to inquire about a suspected outage, IPv6
   address representation should be handled with care.  Not all
   customers are engineers, nor do they have a similar skill level in
   IPv6 technology.  The network operations center will have to take
   extra steps to humanly parse the address to avoid having to explain
   to the customers that 2001:db8:0:1::1 is the same as
   2001:db8::1:0:0:0:1.  This is one thing that will never happen in
   IPv4 because IPv4 addresses cannot be abbreviated.

お客様が停止の疑いについて問い合わせる場合、IPv6アドレス表現は慎重に処理する必要があります。 すべてのお客様がエンジニアであるわけではなく、IPv6テクノロジーで同様のスキルレベルを持っているわけでもありません。 ネットワークオペレーションセンターは、2001:db8:0:1 :: 1が2001:db8 :: 1:0:0:0と同じであることを顧客に説明する必要がないように、人為的にアドレスを解析する追加の手順を実行する必要があります。 :1。 IPv4アドレスは省略できないため、これはIPv4では決して起こらないことの1つです。


3.3.3.  Abuse

3.3.3。 乱用


   Network abuse reports generally include the abusing IP address.  This
   'reporting' could take any shape or form of the flexible model.  A
   team that handles network abuse must be able to tell the difference
   between a 2001:db8::1:0:1 and 2001:db8:1::0:1.  Mistakes in the
   placement of the "::" will result in a critical situation.  A system
   that handles these incidents should be able to handle any type of
   input and parse it in a correct manner.  Also, incidents are reported
   over the phone.  It is unnecessary to report if the letter is
   uppercase or lowercase.  However, when a letter is spelled uppercase,
   people tend to specify that it is uppercase, which is unnecessary
   information.

ネットワーク乱用レポートには、通常、乱用しているIPアドレスが含まれています。 この「レポート」は、柔軟なモデルの任意の形または形式を取ることができます。 ネットワークの悪用を処理するチームは、2001:db8 :: 1:0:1と2001:db8:1 :: 0:1の違いを認識できる必要があります。 「::」の配置を間違えると、重大な状況になります。 これらのインシデントを処理するシステムは、あらゆるタイプの入力を処理し、正しい方法で解析できる必要があります。 また、事件は電話で報告されます。 文字が大文字か小文字かを報告する必要はありません。 ただし、大文字のスペルの場合、大文字であると指定される傾向があり、これは不要な情報です。


3.4.  Other Minor Problems

3.4。 その他の軽微な問題


3.4.1.  Changing Platforms

3.4.1。 プラットフォームの変更


   When an engineer decides to change the platform of a running service,
   the same code may not work as expected due to the difference in IPv6
   address text representation.  Usually, a change in a platform (e.g.,
   Unix to Windows, Cisco to Juniper) will result in a major change of
   code anyway, but flexibility in address representation will increase
   the work load.

エンジニアが実行中のサービスのプラットフォームを変更する場合、IPv6アドレスのテキスト表現が異なるため、同じコードが期待どおりに機能しない可能性があります。 通常、プラットフォーム(UnixからWindows、CiscoからJuniperなど)を変更するとコードが大幅に変更されますが、アドレス表現の柔軟性により作業負荷が増加します。


3.4.2.  Preference in Documentation

3.4.2。 ドキュメントの好み


   A document that is edited by more than one author may become harder
   to read.

複数の作成者によって編集されたドキュメントは、読みにくくなる場合があります。


3.4.3.  Legibility

3.4.3。 読みやすさ


   Capital case D and 0 can be quite often misread.  Capital B and 8 can
   also be misread.

大文字のDと0はよく誤解されることがあります。 大文字のBと8も誤読されることがあります。







Kawamura & Kawashima         Standards Track                    [Page 9]

RFC 5952                IPv6 Text Representation             August 2010


4.  A Recommendation for IPv6 Text Representation

4. IPv6テキスト表現の推奨事項


   A recommendation for a canonical text representation format of IPv6
   addresses is presented in this section.  The recommendation in this
   document is one that complies fully with [RFC4291], is implemented by
   various operating systems, and is human friendly.  The recommendation
   in this section SHOULD be followed by systems when generating an
   address to be represented as text, but all implementations MUST
   accept and be able to handle any legitimate [RFC4291] format.  It is
   advised that humans also follow these recommendations when spelling
   an address.

このセクションでは、IPv6アドレスの正規のテキスト表現形式に関する推奨事項を示します。 このドキュメントの推奨事項は、[RFC4291]に完全に準拠し、さまざまなオペレーティングシステムによって実装され、人に優しいものです。 このセクションの推奨事項は、テキストとして表されるアドレスを生成するときにシステムが従うべきです(SHOULD)が、すべての実装は、正当な[RFC4291]形式を受け入れ、処理できる必要があります。 住所を綴るときは、人間もこれらの推奨事項に従うことをお勧めします。


4.1.  Handling Leading Zeros in a 16-Bit Field

4.1。 16ビットフィールドでの先行ゼロの処理


   Leading zeros MUST be suppressed.  For example, 2001:0db8::0001 is
   not acceptable and must be represented as 2001:db8::1.  A single 16-
   bit 0000 field MUST be represented as 0.

先行ゼロは抑制されなければなりません。 たとえば、2001:0db8 :: 0001は受け入れられず、2001:db8 :: 1として表す必要があります。 単一の16ビット0000フィールドは0として表現されなければなりません(MUST)。


4.2.  "::" Usage

4.2。 "::" 使用法


4.2.1.  Shorten as Much as Possible

4.2.1。 できるだけ短くする


   The use of the symbol "::" MUST be used to its maximum capability.
   For example, 2001:db8:0:0:0:0:2:1 must be shortened to 2001:db8::2:1.
   Likewise, 2001:db8::0:1 is not acceptable, because the symbol "::"
   could have been used to produce a shorter representation 2001:db8::1.

記号「::」の使用は、その最大の能力まで使用されなければなりません。 たとえば、2001:db8:0:0:0:0:2:1は2001:db8 :: 2:1に短縮する必要があります。 同様に、2001:db8 :: 0:1は受け入れられません。これは、記号「::」を使用して2001:db8 :: 1という短い表現を生成できたためです。


4.2.2.  Handling One 16-Bit 0 Field

4.2.2。 1つの16ビット0フィールドの処理


   The symbol "::" MUST NOT be used to shorten just one 16-bit 0 field.
   For example, the representation 2001:db8:0:1:1:1:1:1 is correct, but
   2001:db8::1:1:1:1:1 is not correct.

記号「::」は、1つの16ビット0フィールドだけを短縮するために使用してはなりません。 たとえば、2001:db8:0:1:1:1:1:1という表現は正しいですが、2001:db8 :: 1:1:1:1:1は正しくありません。


4.2.3.  Choice in Placement of "::"

4.2.3。 「::」の配置の選択


   When there is an alternative choice in the placement of a "::", the
   longest run of consecutive 16-bit 0 fields MUST be shortened (i.e.,
   the sequence with three consecutive zero fields is shortened in 2001:
   0:0:1:0:0:0:1).  When the length of the consecutive 16-bit 0 fields
   are equal (i.e., 2001:db8:0:0:1:0:0:1), the first sequence of zero
   bits MUST be shortened.  For example, 2001:db8::1:0:0:1 is correct
   representation.

「::」の配置に代替の選択肢がある場合、連続する16ビット0フィールドの最長の実行を短縮する必要があります(つまり、3つの連続するゼロフィールドを持つシーケンスは2001年に短縮されます:0:0:1: 0:0:0:1)。 連続する16ビット0フィールドの長さが等しい場合(つまり、2001:db8:0:0:1:0:0:1)、ゼロビットの最初のシーケンスを短くする必要があります。 たとえば、2001:db8 :: 1:0:0:1は正しい表現です。


4.3.  Lowercase

4.3。 小文字


   The characters "a", "b", "c", "d", "e", and "f" in an IPv6 address
   MUST be represented in lowercase.

IPv6アドレスの文字「a」、「b」、「c」、「d」、「e」、および「f」は、小文字で表す必要があります。





Kawamura & Kawashima         Standards Track                   [Page 10]

RFC 5952                IPv6 Text Representation             August 2010


5.  Text Representation of Special Addresses

5.特別なアドレスのテキスト表現


   Addresses such as IPv4-Mapped IPv6 addresses, ISATAP [RFC5214], and
   IPv4-translatable addresses [ADDR-FORMAT] have IPv4 addresses
   embedded in the low-order 32 bits of the address.  These addresses
   have a special representation that may mix hexadecimal and dot
   decimal notations.  The decimal notation may be used only for the
   last 32 bits of the address.  For these addresses, mixed notation is
   RECOMMENDED if the following condition is met: the address can be
   distinguished as having IPv4 addresses embedded in the lower 32 bits
   solely from the address field through the use of a well-known prefix.
   Such prefixes are defined in [RFC4291] and [RFC2765] at the time of
   this writing.  If it is known by some external method that a given
   prefix is used to embed IPv4, it MAY be represented as mixed
   notation.  Tools that provide options to specify prefixes that are
   (or are not) to be represented as mixed notation may be useful.

IPv4-Mapped IPv6アドレス、ISATAP [RFC5214]、IPv4-translatableアドレス[ADDR-FORMAT]などのアドレスには、アドレスの下位32ビットにIPv4アドレスが埋め込まれています。 これらのアドレスには、16進表記とドット10進表記を混在させることができる特別な表現があります。 10進表記は、アドレスの最後の32ビットにのみ使用できます。 これらのアドレスでは、次の条件を満たす場合、混合表記が推奨されます。アドレスは、既知のプレフィックスを使用することにより、アドレスフィールドからのみIPv4アドレスが下位32ビットに埋め込まれていると区別できます。 このような接頭辞は、この記事の執筆時点で[RFC4291]および[RFC2765]で定義されています。 特定のプレフィックスがIPv4を埋め込むために使用されていることが何らかの外部メソッドによって知られている場合、それは混合表記として表される場合があります。 混合表記として表される(またはされない)プレフィックスを指定するオプションを提供するツールが役立つ場合があります。


   There is a trade-off here where a recommendation to achieve an exact
   match in a search (no dot decimals whatsoever) and a recommendation
   to help the readability of an address (dot decimal whenever possible)
   does not result in the same solution.  The above recommendation is
   aimed at fixing the representation as much as possible while leaving
   the opportunity for future well-known prefixes to be represented in a
   human-friendly manner as tools adjust to newly assigned prefixes.

ここでトレードオフがあり、検索で完全一致を実現するための推奨事項(ドット小数は一切なし)とアドレスの可読性を向上させるための推奨事項(可能な場合は常にドット10進数)が同じ解決策にならない場合があります。 上記の推奨事項は、ツールを新しく割り当てられたプレフィックスに調整するときに、将来の既知のプレフィックスが人にやさしい方法で表される機会を残しながら、できるだけ多くの表現を修正することを目的としています。


   The text representation method noted in Section 4 should be applied
   for the leading hexadecimal part (i.e., ::ffff:192.0.2.1 instead of
   0:0:0:0:0:ffff:192.0.2.1).

セクション4で説明したテキスト表現方法は、先頭の16進数部分に適用する必要があります(つまり、0:0:0:0:0:ffff:192.0.2.1の代わりに:: ffff:192.0.2.1)。


6.  Notes on Combining IPv6 Addresses with Port Numbers

6. IPv6アドレスとポート番号の組み合わせに関する注意事項


   There are many different ways to combine IPv6 addresses and port
   numbers that are represented in text.  Examples are shown below.

テキストで表されるIPv6アドレスとポート番号を組み合わせるには、さまざまな方法があります。 以下に例を示します。


   o  [2001:db8::1]:80

   o  2001:db8::1:80

   o  2001:db8::1.80

   o  2001:db8::1 port 80

   o  2001:db8::1p80

   o  2001:db8::1#80

   The situation is not much different in IPv4, but the most ambiguous
   case with IPv6 is the second bullet.  This is due to the "::"usage in



Kawamura & Kawashima         Standards Track                   [Page 11]

RFC 5952                IPv6 Text Representation             August 2010


   IPv6 addresses.  This style is NOT RECOMMENDED because of its
   ambiguity.  The [] style as expressed in [RFC3986] SHOULD be
   employed, and is the default unless otherwise specified.  Other
   styles are acceptable when there is exactly one style for the given
   context and cross-platform portability does not become an issue.  For
   URIs containing IPv6 address literals, [RFC3986] MUST be followed, as
   well as the rules defined in this document.

IPv4でも状況はそれほど変わりませんが、IPv6で最も曖昧なケースは2番目の箇条書きです。 これは、IPv6アドレスでの「::」の使用によるものです。 このスタイルは、あいまいであるため推奨されません。 [RFC3986]で表現されている[]スタイルを採用する必要があります(SHOULD)。特に指定のない限り、デフォルトです。 特定のコンテキストにスタイルが1つだけあり、クロスプラットフォームの移植性が問題にならない場合は、他のスタイルを使用できます。 IPv6アドレスリテラルを含むURIについては、[RFC3986]と、このドキュメントで定義されているルールに従う必要があります。


7.  Prefix Representation

7.プレフィックス表現


   Problems with prefixes are the same as problems encountered with
   addresses.  The text representation method of IPv6 prefixes should be
   no different from that of IPv6 addresses.

プレフィックスの問題は、アドレスで発生する問題と同じです。 IPv6プレフィックスのテキスト表現方法は、IPv6アドレスのそれと同じでなければなりません。


8.  Security Considerations

8.セキュリティに関する考慮事項


   This document notes some examples where IPv6 addresses are compared
   in text format.  The example on Section 3.2.5 is one that may cause a
   security risk if used for access control.  The common practice of
   comparing X.509 data is done in binary format.

このドキュメントでは、IPv6アドレスがテキスト形式で比較されるいくつかの例について説明します。 セクション3.2.5の例は、アクセス制御に使用するとセキュリティリスクを引き起こす可能性がある例です。 X.509データを比較する一般的な方法は、バイナリ形式で行われます。


9.  Acknowledgements

9.謝辞


   The authors would like to thank Jan Zorz, Randy Bush, Yuichi Minami,
   and Toshimitsu Matsuura for their generous and helpful comments in
   kick starting this document.  We also would like to thank Brian
   Carpenter, Akira Kato, Juergen Schoenwaelder, Antonio Querubin, Dave
   Thaler, Brian Haley, Suresh Krishnan, Jerry Huang, Roman Donchenko,
   Heikki Vatiainen, Dan Wing, and Doug Barton for their input.  Also, a
   very special thanks to Ron Bonica, Fred Baker, Brian Haberman, Robert
   Hinden, Jari Arkko, and Kurt Lindqvist for their support in bringing
   this document to light in IETF working groups.

10.  References

10.リファレンス


10.1.  Normative References

10.1 規範的な参考文献


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

   [RFC2765]      Nordmark, E., "Stateless IP/ICMP Translation Algorithm
                  (SIIT)", RFC 2765, February 2000.

   [RFC3986]      Berners-Lee, T., Fielding, R., and L. Masinter,
                  "Uniform Resource Identifier (URI): Generic Syntax",
                  STD 66, RFC 3986, January 2005.





Kawamura & Kawashima         Standards Track                   [Page 12]

RFC 5952                IPv6 Text Representation             August 2010


   [RFC4291]      Hinden, R. and S. Deering, "IP Version 6 Addressing
                  Architecture", RFC 4291, February 2006.

10.2.  Informative References

10.2 参考情報


   [ADDR-FORMAT]  Bao, C., "IPv6 Addressing of IPv4/IPv6 Translators",
                  Work in Progress, July 2010.

   [RFC4038]      Shin, M-K., Hong, Y-G., Hagino, J., Savola, P., and E.
                  Castro, "Application Aspects of IPv6 Transition",
                  RFC 4038, March 2005.

   [RFC5214]      Templin, F., Gleeson, T., and D. Thaler, "Intra-Site
                  Automatic Tunnel Addressing Protocol (ISATAP)",
                  RFC 5214, March 2008.




































Kawamura & Kawashima         Standards Track                   [Page 13]

RFC 5952                IPv6 Text Representation             August 2010


Appendix A.  For Developers

付録A.開発者向け


   We recommend that developers use display routines that conform to
   these rules.  For example, the usage of getnameinfo() with flags
   argument NI_NUMERICHOST in FreeBSD 7.0 will give a conforming output,
   except for the special addresses notes in Section 5.  The function
   inet_ntop() of FreeBSD7.0 is a good C code reference, but should not
   be called directly.  See [RFC4038] for details.

開発者はこれらのルールに準拠した表示ルーチンを使用することをお勧めします。 たとえば、FreeBSD 7.0でフラグ引数NI_NUMERICHOSTを指定してgetnameinfo()を使用すると、セクション5の特別なアドレスに関する注記を除いて、適合出力が得られます。 FreeBSD7.0の関数inet_ntop()は、優れたCコードリファレンスですが、直接呼び出すことはできません。 詳細については、[RFC4038]を参照してください。


Authors' Addresses

   Seiichi Kawamura
   NEC BIGLOBE, Ltd.
   14-22, Shibaura 4-chome
   Minatoku, Tokyo  108-8558
   JAPAN

   Phone: +81 3 3798 6085
   EMail: kawamucho@mesh.ad.jp


   Masanobu Kawashima
   NEC AccessTechnica, Ltd.
   800, Shimomata
   Kakegawa-shi, Shizuoka  436-8501
   JAPAN

   Phone: +81 537 23 9655
   EMail: kawashimam@necat.nec.co.jp






















Kawamura & Kawashima         Standards Track                   [Page 14]