RFC-952 (letzter Satz von Punkt 1 unter Annahmen) verbietet Hostnamen mit einzelnen Zeichen, und ich habe Erfahrungen gemacht (vor über 7 Jahren, Sommer 2002), in denen einige Dienste die Arbeit mit Hostnamen mit einzelnen Zeichen ablehnten (weil solche Namen vorhanden waren) nicht standardkonform), aber ich habe in den letzten Jahren eine Reihe von Einzelzeichen-Hostnamen gesehen, die verwendet wurden. Sind Einzelzeichen-Hostnamen jetzt gültig? (Wenn ja, was ist die richtige Validierungsreferenz?)
Bearbeiten (um einige Informationen aus den Antworten zu konsolidieren): Verschiedene Aspekte von DNS scheinen in mehreren RFCs definiert zu sein, darunter 1035 , 1123 und 2181 . Aus RFC-2181 Abschnitt 11 :
Note however, that the various applications that make use of DNS data
can have restrictions imposed on what particular values are
acceptable in their environment. For example, that any binary label
can have an MX record does not imply that any binary name can be used
as the host part of an e-mail address.
[ ... ]
See also [RFC1123] section 6.1.3.5.
Aus RFC-1123 Abschnitt 6.1.3.5 :
The DNS defines domain name syntax very generally -- a
string of labels each containing up to 63 8-bit octets,
separated by dots, and with a maximum total of 255
octets. Particular applications of the DNS are
permitted to further constrain the syntax of the domain
names they use, although the DNS deployment has led to
some applications allowing more general names. In
particular, Section 2.1 of this document liberalizes
slightly the syntax of a legal Internet host name that
was defined in RFC-952 [DNS:4].
Aus RFC-1123 Abschnitt 2.1 :
The syntax of a legal Internet host name was specified in RFC-952
[DNS:4]. One aspect of host name syntax is hereby changed: the
restriction on the first character is relaxed to allow either a
letter or a digit. Host software MUST support this more liberal
syntax.
Und schließlich, wie ursprünglich erwähnt, aus RFC-952 :
1. A "name" (Net, Host, Gateway, or Domain name) is a text string up
to 24 characters drawn from the alphabet (A-Z), digits (0-9), minus
sign (-), and period (.). Note that periods are only allowed when
they serve to delimit components of "domain style names". (See
RFC-921, "Domain Name System Implementation Schedule", for
background). No blank or space characters are permitted as part of a
name. No distinction is made between upper and lower case. The first
character must be an alpha character. The last character must not be
a minus sign or period.
[ ... ]
Single character names or nicknames are not allowed.
Aus dieser Kette ging hervor, dass RFC-952 Hostnamen mit einem Zeichen verbietet.
quelle
There is a difference between 'valid' and 'it works'.
Letztendlich denke ich, dass dies die vernünftigste Antwort ist, obwohl ich die gesamte Diskussion sehr geschätzt habe. Die Schlussfolgerung, die ich ziehen möchte, ist, dass Hostnamen mit einem Zeichen technisch immer noch ungültig sind, aber an diesem Punkt praktisch universell funktionieren. (Ebenso sind Unterstriche verboten, funktionieren aber größtenteils.)Sie könnten annehmen, dass sie gültig sind, da die Root-Nameserver alle aus einem Buchstaben bestehende Hosts (a.root-servers.net) sind und die DNS-Spezifikation keine spezielle Ausnahme für sie erstellt. Der betreffende RFC ist speziell für das Hostdateiformat vorgesehen, nicht für DNS. DNS wurde in einem späteren RFC definiert ( RFC 1035 startet es). RFC 1123 (1989) stellt es klar.
Einzelbuchstaben-Hostnamen sind also in DNS-basierten Systemen gültig und seit der Erfindung von Spam-E-Mails gültig. Systeme, die nicht RFC-konform sind, können verspottet werden. Es sei denn, sie verwenden überhaupt kein DNS und nur Hosts-Dateien. Zu diesem Zeitpunkt ist Schade die bessere Wahl.
quelle
Da es Hostnamen gab, bevor jemand darüber nachdachte, einen RFC darüber zu schreiben, kann ich keinen Grund erkennen, warum Hostnamen mit einem einzelnen Zeichen plötzlich "illegal" werden sollten. Dieser bestimmte RFC hat mich verloren, als er sagte
weil ein RFC KEIN Standard ist. Nicht einmal annähernd.
Trotz alledem ist anzumerken, dass der fragliche RFC für eine relativ kleine Gruppe geschaffen wurde, nämlich das Verteidigungsministerium (vermutlich USA).
quelle
Ich denke, dass die aktuellen Hostnamen mehr von den DNS-Spezifikationen abhängen, da DNS von den meisten Benutzern innerhalb eines Netzwerks oder im Internet verwendet wird. Es kommen drei RFCs in den Sinn (1034 - Konzepte, 1035 - Implementierung und 2181 - Erläuterungen zu DNS).
Abschnitt 3 von RFC 1034 lautet:
In Abschnitt 11 von RFC 2181 finden Sie eine Erläuterung zur Benennung der einzelnen Knoten der Adresse:
Nach den DNS-Spezifikationen können Sie also a.domain.tld haben
quelle
Note however, that the various applications that make use of DNS data can have restrictions imposed on what particular values are acceptable in their environment. For example, that any binary label can have an MX record does not imply that any binary name can be used as the host part of an e-mail address.
Grundsätzlich gilt, dass eine Domain, die in DNS gültig ist, keinen gültigen Hostnamen darstellt. Das Ende von Abschnitt 11 verweist auf Abschnitt 6.1.3.5 von RFC-1123, in dem Abschnitt 2.1 von sich selbst und RFC-952 aufgeführt sind, wie in der Antwort von sysadmin1138 erläutert.Wie Sie festgestellt haben, ist RFC 1123 in diesem Längenproblem nicht vollständig klar.
In Abschnitt 2.1 heißt es:
Da dieser Text den Text aus RFC 952 effektiv vollständig überschreibt, sollte auch impliziert werden, dass eine Länge von bis zu 255 Zeichen zulässig ist.
Leider erhielten Internet-Entwürfe 1989 nicht die unglaublich strenge Bewertung, die sie jetzt erhalten, so dass die Mehrdeutigkeit wahrscheinlich einfach nicht entdeckt wurde.
quelle
The syntax of a legal Internet host name was specified in RFC-952 [DNS:4]. One aspect of host name syntax is hereby changed: the restriction on the first character is relaxed to allow either a letter or a digit.
Ist es nicht sinnvoll, dies so zu interpretieren, dass Ihr Zitat den Text aus RFC-952 nicht vollständig überschreibt?