[2] ドメイン名ではいろいろな文字が使えますが、厳しい制限もあります。
[37] ドメイン名では当初 ASCII文字のみが使われていました。
[38]
しかも英数字と -
のみに限られ、更に英字以外は位置にも制限が加わっています。
文字数制限もあります。
[39]
これをラベルといい、 .
で連結してドメイン名となります。
[41] 古い時代には大文字が好んで使われました。 近年は小文字が好んで使われます。ドメイン名に限らず見られる傾向です。
[3] RFC 882 "DOMAIN NAMES - CONCEPTS and FACILITIES", November 1983. (Obsoleted by RFC 1035)
[6]
>>4
注意: 当時既に IN-ADDR.ARPA
が使われていたわけですが。。。
[7] RFC 1035 DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION, November 1987.
[42] IDNA によって非ASCII文字に拡張され、 IDN と呼ばれています。
[43] IDN はASCIIドメイン名の単純な拡張ではなく、
[46]
Uラベルで利用できる文字には複雑な制限があり、
IDNA の版やUnicodeの版によっても違いがあります。
HOSTS.TXT
におけるドメイン名[15] RFC 608 "HOST NAMES ON-LINE", January 10, 1974. (Obsoleted by RFC 810)
[17] RFC 810 "DoD INTERNET HOST TABLE SPECIFICATION", 1 March 1982. (Obsoleted by RFC 952)
[19] RFC 952 "DOD INTERNET HOST TABLE SPECIFICATION", October 1985.
[47]
DNS では一般的なドメイン名の他にもいろいろな情報を格納できるデータベースです。
DNS のラベルは LDHラベル以外の種別もあり、
-
以外の記号類を含めたり、バイナリーデータを含めたりもできます。
[50] インターネットメールのRFC 822メッセージや SMTP やその他の関連プロトコルでは、 メールアドレスの一部としてドメイン名が使われています。
[51] 当初の仕様ではメッセージIDの一部としてもドメイン名が使われていました。 現在はドメイン名に近い独特の構文とされています。
[52]
RFC 822メッセージでは .
を区切りとする字句化の規則の対象となるため、
空白や注釈を .
の前後に挿入できるとされていました。
RFC 2822 以後そうしたものの生成は禁止されていますが、
受信はできる必要があります。
しかしこうしたものはドメイン名やラベルの一部を構成するものとはみなされません。
[53] また、ドメイン名部分には domain-literal としてインターネットのドメイン名の構文と異なるものも記述できることに (少なくても仕様上は) なっています。
[21] RFC 819 "The Domain Naming Convention for Internet User Applications", August 1982.
[23] RFC 821 "SIMPLE MAIL TRANSFER PROTOCOL", August 1982. (Obsoleted by RFC 2821)
[25] RFC 822 "STANDARD FOR THE FORMAT OF ARPA INTERNET TEXT MESSAGES", August 13, 1982. (Obsoleted by RFC 2822)
[54] URL においては authority としてドメイン名を記述でき(ることがあり)ます。
[55]
また、 mailto:
URL にメールアドレスの一部としてドメイン名を記述できるように、
URL scheme 依存の構文としてドメイン名が使えることがあります。
[56] authority としてのドメイン名は、 IDN を含む任意の文字を含められます。 ただし URL として直接記述できない場合はパーセント符号化することになります。 記述できる場合もパーセント符号化を使えます。
[57]
ドメイン名の解釈は URL scheme によりますが、 https:
など通常の場合はシステムの名前解決によって解釈されます。
DNS の場合もあれば、 /etc/hosts
やプラットフォーム依存のネットワークプロトコルが使われることもあります。
[58] 従ってインターネットのドメイン名では認められない文字が URL に出現することがあり、正常に使える場合があります。
[59]
ただし authority の構文と処理には .
によるラベルの区切りや IDNA
の処理が組み込まれているので、これと矛盾する使い方はできません。
[60]
mailto:
の場合はメールアドレスとして解釈されるので、
インターネットメール関連仕様の規定による構文を適宜パーセント符号化したものが使えます。
authority の場合と構文や処理に違いがあり、要注意です。
他の URL scheme 固有の構文でも同様の場合があります。
[61] 歴史的には ASCII のドメイン名のみが認められており、その後非ASCII文字に拡張されました。
[31] RFC 1630 "Universal Resource Identifiers in WWW", June 1994.
[33] RFC 1738 "Uniform Resource Locators (URL)", December 1994. (Updated by RFC 2396)
[35] RFC 2396 "Uniform Resource Identifiers (URI): Generic Syntax", August 1998.