Hi Petr, > On 26 Oct 2021, at 11:02, Petr Špaček <pspa...@isc.org> wrote: > > On 26. 10. 21 11:14, Vladimír Čunát wrote: >> Hello. >>> DNS Error reporting SHOULD be done using DNS Query Name Minimization >>> [RFC7816 <https://datatracker.ietf.org/doc/html/rfc7816>] to improve >>> privacy. >> It's just a detail and "SHOULD" isn't strong, but I expect it might be worth >> elaborating here. The name used in the reporting query adds a few labels to >> the failing QNAME and the whole reporting agent domain, so together that's >> lots of labels, and expending a packet for *each* of those labels would seem >> quite wasteful. Perhaps we could agree on some boundary (e.g. around the >> "_er" label) under which minimization isn't recommended anymore, and put >> that as a suggestion into the text? > > We need to consider & document interaction between Query Name Minimization > and NXDOMAIN processing as per RFC 8020. If minimization & RFC 8020 are on > default then it might very easily happen that most of _er subtrees (which are > presumably empty) will be cut out by cache and nothing will be sent out when > an error is detected.
Ack, lets discuss this afternoon. > All in all, I think the text should warn about this interaction instead of > mandating query name minimization on/off. Yes, one way of dealing with it is to have the reporting agent server (where the reports go), deploy a wildcard under their reporting agent zone. Additionally, I think we should never require additional complexity to query name minimisation. The issue caused by query name minimisation can be solved by prepending an _er label, so the erroneous qname is encapsulated by _er’s. > > >>> The reporting resolver MUST NOT report about queries and responses >>> from an encrypted channel (such as DNS over TLS [RFC7858 >>> <https://datatracker.ietf.org/doc/html/rfc7858>] and DNS >>> over HTTPS [RFC8484 <https://datatracker.ietf.org/doc/html/rfc8484>]). >> I believe this needs some explanation at least (in the text, ideally). The >> failing query triggering the report is towards an authoritative server (i.e. >> unencrypted), and the reporting queries do not really carry more >> information. They may travel by a different path, but on the whole I can't >> see significant motivation for the paragraph, especially in "MUST NOT" form. > > I will use stronger language: This is under-specified to the point where it > starts causing confusion. I agree. > * Is the paragraph considering channel from stub to resolver? No. > * From resolver to auth? Yes. > * Both? No. > * What to do with queries executed by resolver on its own (prefetch)? They’re not special. > * What if multiple clients are waiting for the same query, using different > channels? (query deduplication in the resolver) > etc. Assuming you’re referring to stubs (not sure if you do, apologies): The reporting is independent of the client. i.e. the report will not go to clients, but to authoritative servers. > > I think this should go to Security Considerations section and be left for > implementations to decide. MUST mandate is way too strong and does not > accommodate implementation- and deployment- specific circumstances. Ack. > > >>> This method MUST NOT >>> be deployed by default on reporting resolvers and authoritative >>> servers without requiring an explicit configuration element. >> I'm not so sure about forbidding this on resolvers so strongly, but >> certainly OK if the WG prefers it that way. (On auths it wouldn't make >> sense to enable by default; what agent?) If the error-reporting is meant >> really seriously, I'd rather improve the mechanism to never induce >> significant overhead and encourage enabling it by default on resolvers (at >> some point). >> To make the error-reporting work, you need noticeable commitment to deploy >> on both sides, because otherwise the perceived benefit from deploying might >> be quite low. On resolver side, I believe that it will be quite rare for >> operators to tweak such highly technical options[*]. So if this MUST be off >> by default, you at least need commitment from some significant operators - >> say, I'm not even sure if Quad9 by themselves would suffice to bootstrap >> this. > > I agree. Mandating "disabled by default" configuration on _resolvers_ sounds > like a way to get to a working-but-never-deployed protocol. I agree. Roy > > -- > Petr Špaček @ ISC > > _______________________________________________ > 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