------ Original Message ------
From: "Ted Lemon" <mel...@fugue.com>
To: "Adrien de Croy" <adr...@qbik.com>
Cc: "dnsop@ietf.org" <dnsop@ietf.org>
Sent: 8/04/2016 2:03:17 p.m.
Subject: Re: [DNSOP] hostnames vs domain names vs RFC1034/1035 vs
RFC2818 vs Wikipedia etc
No, you're confusing hostnames and domain names. Read Ed Lewis'
draft, https://tools.ietf.org/html/draft-lewis-domain-names-02
Yeah I was trying to avoid confusing them. I did read that draft which
is how I ended up at this point.
Section 3.5 of 1034 does not limit this definition to hostnames by my
reading of it.
Paragraph 1 alludes to the existence of some specification of domain
names and says that they are "as general as possible". It also says we
should be prudent when assigning names to objects. I read a lot of the
prose of the document and there's very little could be construed as a
formal specification for domain names.
Paragraph 2 follows on from the concept of assigning names to objects
and discusses additional restrictions for mail domains, and also host
names.
Paragraph 3 starts off the definition. It doesn't say that it's a
definition for any particular type of name (mail domain or host name),
it just helpfully suggests that "The following syntax will result in
fewer problems with many applications...."
etc.
So, someone reading only this specification could be excused for
concluding (as many seem to have done) that the BNF isn't just for
hostnames. You'd have to make some leaps and assumptions to conclude
that.
understood the thing was written in 1987.
So is the encoding scheme for IDN due to the fact that everyone else got
this wrong, or is it only for encoding internationalised hostnames?
Has ICANN issued any domains that use anything other than ASCII
alphanumeric + hypen?
Adrien
On Thu, Apr 7, 2016 at 10:37 PM, Adrien de Croy <adr...@qbik.com>
wrote:
Hi all
I guess you're all aware of the issue of what constitutes a valid
domain name, what characters are valid in labels etc. So forgive me
for what must be me re-raising an ancient maybe
long-thought-put-to-rest issue...
but there's a serious problem out there.
RFC1034 secion 3.5 which is almost copied in RFC1035 section 2.3.1,
both labelled "preferred name syntax" clearly define
<domain> ::= <subdomain> | " " <subdomain> ::= <label> | <subdomain>
"." <label> <label> ::= <letter> [ [ <ldh-str> ] <let-dig> ] <ldh-str>
::= <let-dig-hyp> | <let-dig-hyp> <ldh-str> <let-dig-hyp> ::=
<let-dig> | "-" <let-dig> ::= <letter> | <digit> <letter> ::= any one
of the 52 alphabetic characters A through Z in upper case and a
through z in lower case <digit> ::= any one of the ten digits 0
through 9 Note that while upper and lower case letters are allowed in
domain names, no significance is attached to the case. That is, two
names with the same spelling but different case are to be treated as
if identical. The labels must follow the rules for ARPANET host names.
They must start with a letter, end with a letter or digit, and have as
interior characters only letters, digits, and hyphen. There are also
some restrictions on the length. Labels must be 63 characters or less.
which allows DNS labels (not just host names) to contain alphanumeric
and hyphen only. There doesn't seem to be a MUST level requirement to
use this, but there doesn't seem to be any specification elsewhere in
the documents either.
RFC2818 on the other hand says
The DNS itself places only one restriction on the particular labels
that can be used to identify resource records. That one restriction
relates to the length of the label and the full name. The length of
any one label is limited to between 1 and 63 octets. A full domain
name is limited to 255 octets (including the separators). The zero
length full name is defined as representing the root of the DNS tree,
and is typically written and displayed as ".". Those restrictions
aside, any binary string whatever can be used as the label of any
resource record. Similarly, any binary string can serve as the value
of any record that includes a domain name as some or all of its value
(SOA, NS, MX, PTR, CNAME, and any others that may be added).
So how did we get from alphanumeric+hyphen to "any binary"?
If we truly allow "any binary" why the need for special
ascii-compatible encodings for IDN?
Later RFCs (the ones I checked) seem to corroborate RFC2818, but I'm
pretty sure the last time I tried to register a domain I couldn't
enter any special chars. So there's a (probably mixed) de facto
standard in use anyway.
Plus the countless pages on various answer sites about "what is a
valid DNS name" which state alphanumeric+hyphen, and seem to gloss
over the underscore used for SRV records.
Is this just a mess that it's been decided we can't really adequately
fix?
Thanks
Adrien
_______________________________________________
DNSOP mailing list
DNSOP@ietf.org
https://www.ietf.org/mailman/listinfo/dnsop
_______________________________________________
DNSOP mailing list
DNSOP@ietf.org
https://www.ietf.org/mailman/listinfo/dnsop