Subject: [DNSOP] why did SRV care to avoid conflicts

From: Paul Vixie <[email-masked]>
Date: Mon, 26 Mar 2018 15:07:56 -0700

following klensin's observations that cross-rrtype conflicts cannot 
occur and that the only _necessary_ registry is of predefined labels 
with specific meanings _within each rrtype_, i've strugged to piece 
together my memory of why i wanted _ names for SRV at all.

it's because the meaning of RCODE=0 && ANCOUNT=00 was once different, or 
at least interpreted differently, by some stub resolvers, compared to 
RCODE=3. it had to do with temporary vs. permanent failures in e-mail, 
as i recall.

in any case today it's a non-issue. if i were specifying SRV today i 
would not bother with underbars, because TCP.REDBARN.ORG or 
UDP.REDBARN.ORG would not confuse any app that looks up AAAA (or A), 
since they would hear RCODE=0 && ANCOUNT=0, and fail hard.

-- 
P Vixie

---

From: Mark Andrews <[email-masked]>
Date: Tue, 27 Mar 2018 09:18:16 +1100

Type comes AFTER name when looking up records.  Label name spaces are NOT type specific.  They are relative to the  RHS of the name they are part of.

There needs to be a registry of all label that can appear immediately to the left of a valid host name.
For each of those labels there needs to registries of what can appear to the immediate left of it.
For each of those labels there needs to registries of what can appear to the immediate left of it.
For each of those labels there needs to registries of what can appear to the immediate left of it.
For each of those labels there needs to registries of what can appear to the immediate left of it.
For each of those labels there needs to registries of what can appear to the immediate left of it.
For each of those labels there needs to registries of what can appear to the immediate left of it.

EACH of these registries are INDEPENDENT of type.

For SRV records only the first two levels matter.  For other types there are different numbers of registries involved.

> On 27 Mar 2018, at 9:07 am, Paul Vixie <[email-masked]> wrote:
> 
> following klensin's observations that cross-rrtype conflicts cannot occur and that the only _necessary_ registry is of predefined labels with specific meanings _within each rrtype_, i've strugged to piece together my memory of why i wanted _ names for SRV at all.
> 
> it's because the meaning of RCODE=0 && ANCOUNT=00 was once different, or at least interpreted differently, by some stub resolvers, compared to RCODE=3. it had to do with temporary vs. permanent failures in e-mail, as i recall.
> 
> in any case today it's a non-issue. if i were specifying SRV today i would not bother with underbars, because TCP.REDBARN.ORG or UDP.REDBARN.ORG would not confuse any app that looks up AAAA (or A), since they would hear RCODE=0 && ANCOUNT=0, and fail hard.
> 
> -- 
> P Vixie
> 
> _______________________________________________
> DNSOP mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/dnsop

-- 
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742              INTERNET: [email-masked]

---

From: Mark Andrews <[email-masked]>
Date: Tue, 27 Mar 2018 09:25:32 +1100

But the real reason for using _blah is so you can split ownership of
tcp.com from _tcp.com which you couldn’t do if the well know label names
used the preferred name format (LDH) is it would be “tcp” rather than “_tcp”.

> On 27 Mar 2018, at 9:18 am, Mark Andrews <[email-masked]> wrote:
>

---

From: Mark Andrews <[email-masked]>
Date: Tue, 27 Mar 2018 09:31:51 +1100

Additionally some types may naturally lend themselves to wildcards and others don’t so you really want to try to seperate usage as much as possible.

---

From: Paul Vixie <[email-masked]>
Date: Mon, 26 Mar 2018 15:39:29 -0700

Mark Andrews wrote:
> Type comes AFTER name when looking up records.  Label name spaces are
> NOT type specific.  They are relative to the  RHS of the name they
> are part of.  ...

i think you didn't read klensin's analysis. your above statements do not 
disagree with it, and the rest of your message was unrelated to it.

-- 
P Vixie

---

From: Paul Vixie <[email-masked]>
Date: Mon, 26 Mar 2018 15:41:44 -0700

> used the preferred name format (LDH) is it would be “tcp” rather than “_tcp”.

in my day, COM wasn't a service identifier, and its subdomains were all 
delegation points, so all had NS RRsets, some had DS RRsets, and if one 
wanted a service name like MARKA.COM, the SRV named _TCP (or just TCP, 
if i were doing it today) would be inside the MARKA zone, as a child of 
the apex.

-- 
P Vixie

---

From: Mark Andrews <[email-masked]>
Date: Tue, 27 Mar 2018 10:23:25 +1100

COM and the root for that matter still potentially need to advertise services associated with their roll of being a registry.

e.g. _whois._tcp.com

Mark

> On 27 Mar 2018, at 9:41 am, Paul Vixie <[email-masked]> wrote:
> 
> 
> 
> Mark Andrews wrote:
> in my day, COM wasn't a service identifier, and its subdomains were all delegation points, so all had NS RRsets, some had DS RRsets, and if one wanted a service name like MARKA.COM, the SRV named _TCP (or just TCP, if i were doing it today) would be inside the MARKA zone, as a child of the apex.
> 
> -- 
> P Vixie
>

---

From: Phillip Hallam-Baker <[email-masked]>
Date: Mon, 26 Mar 2018 19:29:27 -0400

It is potentially very useful that we have the underscore convention. We
could define wildcards that worked correctly (i.e. as expected) if we
wanted to.

The DNS was designed to publish addresses for hosts, we now use services.
As a result we have an overloading issue because we only have one hierarchy
for two distinct types.

---

From: Mark Andrews <[email-masked]>
Date: Tue, 27 Mar 2018 10:37:10 +1100

> On 27 Mar 2018, at 10:29 am, Phillip Hallam-Baker <[email-masked]> wrote:
> 
> It is potentially very useful that we have the underscore convention. We could define wildcards that worked correctly (i.e. as expected) if we wanted to. 
> 
> The DNS was designed to publish addresses for hosts, we now use services. As a result we have an overloading issue because we only have one hierarchy for two distinct types.

The DNS was designed to publish data with hierarchical ownership of the keying.  It is only registry policy that stops non LDH names being delegated that the top level.  The DNS was ALWAYS more than just data related to hosts see MAILA, MAILB, MX etc.  Those records are designed for names that are NOT hosts though they can be used in conjunction with names refer to hosts.

---

From: Paul Vixie <[email-masked]>
Date: Mon, 26 Mar 2018 17:39:17 -0700

> COM and the root for that matter still potentially need to advertise services associated with their roll of being a registry.

ah! ok.

-- 
P Vixie