RFC-952 (ostatnie zdanie punktu 1 w Założeniach) zabrania nazw hostów jednoznakowych, a ja miałem doświadczenia ( ponad 7 lat temu lato 2002 r.), W których niektóre usługi odmawiałyby pracy z nazwami hostów jednoznakowych (ponieważ takie nazwy były niezgodny ze standardami), ale w ciągu ostatnich kilku lat widziałem wiele jednoznakowych nazw hostów. Czy jednoznakowe nazwy hostów są teraz prawidłowe? (Jeśli tak, jakie jest właściwe odniesienie do walidacji?)
edycja (w celu skonsolidowania niektórych informacji z odpowiedzi): różne aspekty DNS wydają się być zdefiniowane w kilku RFC, w tym 1035 , 1123 i 2181 . Z RFC-2181 sekcja 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.
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].
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.
I wreszcie, jak pierwotnie wspomniano, z 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.
To z podążania za tym łańcuchem początkowo powiedziałem, że RFC-952 zabrania jednoznacznych nazw hostów.
źródło
There is a difference between 'valid' and 'it works'.
Ostatecznie uważam, że jest to najbardziej rozsądna odpowiedź, chociaż bardzo doceniłem całą wygenerowaną dyskusję. Doszedłem do wniosku, że jednoznakowe nazwy hostów są nadal technicznie niepoprawne, ale w tym momencie działają prawie ogólnie. (Podobnie podkreślenia są zabronione, ale w większości działają).Można by pomyśleć, że są one prawidłowe, ponieważ wszystkie główne serwery nazw są hostami jednoliterowymi (a.root-servers.net), a specyfikacja DNS nie tworzy dla nich konkretnego wyjątku. RFC, o którym mowa, dotyczy konkretnie formatu pliku hosta, a nie DNS. DNS został zdefiniowany w późniejszym RFC ( RFC 1035 go uruchamia). RFC 1123 (1989) wyraźnie to stwierdza.
Tak więc jednuliterowe nazwy hostów są prawidłowe w systemach opartych na DNS i istniały od czasu wynalezienia spamu. Systemy niezgodne z RFC i mogą być wyśmiewane. Chyba że w ogóle nie używają DNS i używają tylko plików hostów, w takim razie szkoda jest lepszym wyborem.
źródło
Ponieważ nazwy hostów istniały, zanim ktokolwiek pomyślał o napisaniu na ich temat RFC, nie widzę powodu, dla którego nazwy hostów jednoznakowych powinny nagle stać się „nielegalne”. Ten konkretny RFC stracił mnie, kiedy to stwierdził
ponieważ RFC NIE jest standardem. Nawet nie blisko.
Pomimo powyższego należy zauważyć, że przedmiotowa RFC została stworzona w celu zastosowania jej do stosunkowo niewielkiej grupy, a mianowicie Departamentu Obrony (prawdopodobnie USA).
źródło
Myślę, że obecne nazwy hostów są bardziej zależne od specyfikacji DNS, ponieważ DNS jest tym, czego większość ludzi będzie używać w sieci lub w Internecie. Powiedział, że przychodzą na myśl trzy RFC (1034 - koncepcje, 1035 - implementacja i 2181 - wyjaśnienia na temat DNS).
Sekcja 3 RFC 1034 mówi:
W sekcji 11 RFC 2181 wyjaśniono nazwy wszystkich węzłów adresu:
Tak więc, w świetle specyfikacji DNS, możesz mieć a.domain.tld
źródło
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.
Zasadniczo, ponieważ a.domain.tld jest poprawny w DNS, nie czyni go prawidłową nazwą hosta. Koniec sekcji 11 odwołuje się do sekcji 6.1.3.5 RFC-1123, która cytuje sekcję 2.1 o sobie i RFC-952, jak omówiono w odpowiedzi sysadmin1138.Jak ustaliłeś, RFC 1123 nie jest całkowicie jasne w tej kwestii długości.
Sekcja 2.1 mówi:
Ponieważ ten tekst skutecznie całkowicie zastępuje tekst z RFC 952, należy również uznać, że każda długość do 255 znaków jest dozwolona.
Niestety w 1989 r. Internet Draughty nie otrzymały tak rygorystycznej recenzji, jak teraz, więc dwuznaczność prawdopodobnie nie została zauważona.
źródło
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.
czy nie jest uzasadnione interpretowanie tego w ten sposób, że twój cytat nie zastępuje całkowicie tekstu z RFC-952?