On Fri, Mar 1, 2019 at 3:19 PM Mike Bishop <mbis...@evequefou.be> wrote:
>
> Stephen, there are a couple complicating factors here where I think we all 
> have varying knowledge gaps.
>
> There are two major ways of pointing to a CDN:  Direct A/AAAA records and 
> CNAMEs.  The easiest way to handle key update complexities on the part of the 
> CDN(s) is simply to CNAME the ESNI query for your domain to their ESNI 
> record, but you can certainly directly host your CDN’s keys in your domain if 
> you prefer.  Nothing should preclude that.
> The issue we’re trying to address is when the ESNI record and the A/AAAA 
> record follow different CNAME chains and you get the records from different 
> hosts.  Of course, if we move to an ESNI RRType with the same hostname (see 
> #105), there’s hopefully a single CNAME chain that gets cached at the 
> resolver and used when looking up both queries.  If they remain separate 
> hostnames, it seems like it gets much easier for them to diverge.
> It’s my understanding that DNSsec doesn’t play well with returning a subset 
> of all extant RRs for a given name+type.  However, some CDNs return DNS 
> results tailored to the user’s location; the load-balancing servers will (in 
> some cases) return CNAMEs to different targets based on the desired traffic 
> share.  That’s not a behavior that maps well to DNSsec as I understand it.  
> You mention DNSsec signing your domain as part of why you have issues with 
> the proposal, but I think this is an open issue beyond ESNI or these PRs.
>
> Maybe someone better-steeped in DNS/DNSsec can help us figure out how all 
> that should work, and I agree with you that there are definitely bumps here 
> we need to iron out – maybe those are just questions to answer, or maybe 
> changes to the structure of the record are warranted.
>
> However, these PRs are primarily about what information should be in these 
> records and how clients make use of it.  I disagree with you that we have to 
> resolve both questions at the same time.  Let’s agree on content first, and 
> spent some time separately with DNS folks to see whether the content can be 
> more pleasantly arranged.

Thanks all for the discussion so far! Focusing strictly on the content
of the records and not the formatting, as Mike suggests, we
essentially have the following:

- #137 gives clients a way to detect A/AAAA+ESNI mismatch and recover,
at the cost of another sequential DNS query for ESNI. In this change,
A/AAAA records still control where traffic goes.
- #136 never requires clients to send a second DNS query for ESNI
since clients ignore the A/AAAA results. In this change, ESNI records
dictate routing.

With #137, clients willing to send a second DNS query will get ESNI
for all supporting providers. Clients unwilling to send a second DNS
query will only get ESNI for those providers which ensure that their
A/AAAA and ESNI records very rarely mismatch. With #136, clients only
get ESNI for those providers capable of building ESNI records with
correct addresses. In theory, these providers should be the same ones
that could ensure A/AAAA and ESNI record matching.

Given this, the discussion seems to hinge on the following question:
Are operators comfortable with the risks of letting ESNI records
control routing. If so, #136 is probably a better design for said
operators. If not, then #137 is probably required.

Note that this does not mean we must choose between #136 and #137
right now. We can do both (after possibly simplifying #137!), use
them, and see what works best in practice.

Anyway, I hope this summary accurately captures the differences and
possible tradeoffs.

Best,
Chris

_______________________________________________
TLS mailing list
TLS@ietf.org
https://www.ietf.org/mailman/listinfo/tls

Reply via email to