Hi Joe and others,

Let me try to respond to several comments in one place.

1. On “knowing your parent”.

I agree with Joe, in general a child is ignorant of its parent. And while there 
are methods like the one Mark describes that usually work there are certainly 
corners where they don’t. Horrible stuff like forwarding configs where folks 
synthesise a child unknown to the parent comes to mind.

However, without claiming that I’ve done any kind of exhaustive inventory of 
these corners I will argue that they are among the least likely places to 
deploy DNSSEC in general and even if they do deploy DNSSEC the parent CDS 
scanner is likely to also have issues. But, for the sake of argument, lets 
assume that a broken corner, having deployed DNSSEC and with a parent doing 
CDS/CSYNC scanning is unable to figure out the parent and therefore not send 
these notifies.

I think that’s ok. They will just have to untangle their corner or wait for the 
next regular scan.

2. On using UPDATE vs NOTIFY:

Joe wrote (in response to Mark suggesting UPDATE):

Sending a signal that the parent should investigate the child is nice because 
it limits the range of unpleasant consequences that might result of the signal 
not being authentic or of the target not being the right one. The worst that 
can happen is that the signal doesn't arrive or that the recipient is too busy 
to deal with it. In this context sending something like an UPDATE seems less 
nice.

This is exactly my view, too. Another issue with UPDATE is that the parent 
(especially in the case of TLD registries) often has a strong opinion on owning 
the decision of making changes to the zone content. With a NOTIFY the child is 
maintaining exactly the same relationship with the parent as with only 
CDS/CSYNC, but if we switched to using UPDATE that relationship changes 
completely.

3. Olafur wrote:

#1 this should cover normal notify as well as there is no reason parent should 
have to be updates every time an external DNS provider changes its distribution 
"top"

I don’t understand what you’re saying here. Sorry.

#2 I would love the examples to use a different port than  53 as there is no 
need for the notifies to go to that overloaded port

I agree.

#3 As of new type vs SRV the argument against new type at apex is always size 
of ANY, which I do not buy but I like new types :-)

We are not suggesting that the notification address is published at the APEX, 
regardless of whether SRV or a new RR type us used. That said, I also like new 
types 😊

#4 It should be clear that there is no need to run a "nameserver code" as the 
target of the NOTIFY messages, similarly there is no real reason why the issuer 
of the Notify is a "nameserver code" i.e. both of ends are front/back ends of 
provision systems

I agree. And not using port 53 would help with that signaling.

4. Paul wrote:

The main concern at the time was they TLDs didn’t want any kind of triggers 
hitting their production nameservers.

As having been responsible for a global anycast network for many years I 
obviously agree with this. But, as I think someone already pointed out, we 
specifically choose to avoid that by publishing information about where to send 
notifications. Of course, the CDS scanner is also a production system, so if a 
parent, like a TLD, doesn’t want notifications to hit the scanner 
infrastructure then they will just (assuming they want to improve service to 
their registrants) have to choose another notification address.

5. Joe wrote:

How often do you send a NOTIFY, given that the action triggered (or not) is 
expected to be asynchronous? Should the draft say something about retrying? If 
widely deployed this mechanism has the potential to deliver a lot of traffic to 
a small number of targets (e.g. if this was supprted by a zone with lots of 
children like COM). Retries would amplify the traffic volume.

We pondered this a bit and decided to leave it out of the initial draft, 
awaiting this discussion. My personal view is that as NOTIFY does generate a 
response (or at least should generate a response) the best way of dealing with 
retries is probably to just examine the response that the child gets back from 
the parent:

NOERROR: all is great, the notification has been noted, FWIW, there is no need 
to resend.

REFUSED: please don’t send any more notifications here as I’m probably a 
misconfigured parent.

And of course, the important case of no response at all to the NOTIFY… which 
likely should trigger a retry. The normal behavior for NOTIFY(SOA) is trying 
three times if I remember correctly.

But, on the topic of traffic volume, please note that there are two possible 
benefits to a parent listening to NOTIFY(CDS) and NOTIFY(CSYNC). One is to 
provide an improved service to the child. The other is that, given the usually 
extremely low frequency of “hits” to the scanner, the traffic generated by the 
scanner is most likely many orders of magnitude higher than the traffic 
generated by the notifications.

Hence, if you want to improve the traffic volume (as a parent), then implement 
support for NOTIFY(CDS) and NOTIFY(CSYNC), wait a bit for children to implement 
this, and then decrease the scanning frequency. Hopefully by a lot.

6. Mark wrote:

Separately, it might be worth specifying that all NOTIFY targets obtained 
through the DNS MUST be subject to DNSSEC validation and that the DNS responses 
involved must be verifiably secure. I can't immediately think of an exploit 
that would derive from the ability for a third party to receive such NOTIFY 
messages but it seems entirely plausible that there is one.

I agree.

7. Mark wrote:

In the case of conventional use of NOTIFY it's common for the NOTIFY/*XFR graph 
to involve servers other than those published in NS sets. In some cases it is 
desirable for the identity of those NOTIFY targets not to be published, e.g. 
since they refer to internal infrastructure and are not intended to be 
used/abused by others. Have you thought about whether there are any similar 
considerations for these new uses of NOTIFY? I guess one answer is that (just 
like conventional NOTIFY) local policy could override the SRV-published 
(NS-published) targets.

My view: I don’t like the “local policy overrides” alternative. Eg., if .SE 
publishes a desire to receive NOTIFY(CDS) at a particular address, then that’s 
where we want them. Full stop. But, again using .SE as an example, we (and our 
service providers) have lots of internal infrastructure that we don’t want to 
have abused. But publishing the desired target where we *want* to have the 
notifications completely alleviates this issue as far as I understand.

I hope I managed to get all your comments. If not, my apologies. I appreciate 
that so many people chose to spend time on our draft so quickly. Thanks.

Regards,
Johan

PS. Joe wrote:

I have wondered aloud about reusing NOTIFY for other purposes in the past too. 
In fact I seem to remember a certain tall Swede referring to 
draft-jabley-dnsop-dns-flush as abolutely the worst idea he had ever heard of, 
a review which I continue to wear as a badge of pride.

This is still the absolutely worst idea I’ve ever heard of. I’m so proud of 
you. 😊

_______________________________________________
DNSOP mailing list
DNSOP@ietf.org
https://www.ietf.org/mailman/listinfo/dnsop

Reply via email to