[2] example.com.
のようにドメイン名の末尾に .
を付けることで、 FQDN であることを明示的に示すことができます。
この .
は TLD より上位にある root domain (その名前は空文字列)
との区切りを表しているとされています。
[3] Web においては、末尾の点付きのドメインとそうでないドメインは、
異なるとみなされます。例えば URLの正準化でこれらは同じとはみなされません。
Host:
や SNI でも末尾の点はそのまま送信されます。
[21] サーバーの実装によっては、 Host:
や SNI
に末尾の点が含まれる場合、指しているホストを認識できず、
エラー (未知のホスト) と扱うことがあります。
[4] クッキーの Domain
属性では、末尾の点は認められていません。
指定されると属性全体が無視されることになっています。
[11] こうした理由から Web で末尾の点が使われることは滅多にありません。
[36] しかし http://to./ のように TLD にアクセスしたい時は内部名と誤認されることを防ぐため .
を明示します。
[14] localhost.
やその他 /etc/hosts
で定義された名前と末尾の点の組み合わせについて、
[19] Chrome のアドレスバーでは末尾の点が複数あると、1つに正規化されます。 URLの解決ではこの正規化は行われません。 Firefox のアドレスバーでもこの正規化は行われません。
[15] service identity の検証において、 Chrome も Firefox も、 証明書に末尾の点が含まれない場合、 末尾の点付きのドメイン名でも一致するものと判断します。 証明書に末尾の点が含まれる場合、 Firefox は URL のドメインの末尾の点の有無に関わらず一致しないと判断しますが、 Chrome は URL のドメインの末尾の点の有無に関わらず、 一致すると判断します。
[24] eTLD+1 のことを root domain と呼ぶ人もいるので、注意が必要です。
[1] Root name server - Wikipedia, the free encyclopedia ( 版) http://en.wikipedia.org/wiki/Root_name_server#Root_domain
The zero length full name is defined as representing the root of the DNS tree, and is typically written and displayed as ".".
The trailing
dot required when these names are stored in a DNS zone is implicit and MUST NOT be provided when exchanging host and domain names.
[7] 134402 – URLs with trailing dots in host names (FQDN) produce cert name mismatches ( 版) https://bugzilla.mozilla.org/show_bug.cgi?id=134402
[8] 774769 – strict transport security can be defeated by using a FQDN ( 版) https://bugzilla.mozilla.org/show_bug.cgi?id=774769
[9] 27266 – Deal with domain names and trailing dots ( 版) https://www.w3.org/Bugs/Public/show_bug.cgi?id=27266#c1
[10] 774769 – strict transport security can be defeated by using a FQDN ( 版) https://bugzilla.mozilla.org/show_bug.cgi?id=774769
[12] Appended period to hostnames can bypass HPKP and HSTS protections — Mozilla ( 版) https://www.mozilla.org/en-US/security/advisories/mfsa2015-13/
If the domainpart includes a final character considered to be a label separator (dot) by [RFC1034], this character MUST be stripped from the domainpart before the JID of which it is a part is used for the purpose of routing an XML stanza, comparing against another JID, or constructing an XMPP URI or IRI [RFC5122]. In particular, such a character MUST be stripped before any other canonicalization steps are taken.
[20] 134402 – URLs with trailing dots in host names (FQDN) produce cert name mismatches ( ()) https://bugzilla.mozilla.org/show_bug.cgi?id=134402
[22] Issue 593952 - chromium - SNI hostnames include erroneous trailing dots - Monorail ( ()) https://bugs.chromium.org/p/chromium/issues/detail?id=593952
[23] UTS #46: Unicode IDNA Compatibility Processing () http://www.unicode.org/reports/tr46/#ToASCII は 「root label and its dot」 と言っています。
[25] RFC 8128 - IETF Appointment Procedures for the ICANN Root Zone Evolution Review Committee () https://tools.ietf.org/html/rfc8128