Subject: [DNSOP] Hello, and welcome to DNS

From: bert hubert <[email-masked]>
Date: Thu, 29 Mar 2018 12:18:36 +0200

Hi everyone,

[tl;dr: check out https://powerdns.org/hello-dns/ and
https://powerdns.org/hello-dns/meta.md.html ]

As part of looking into the complexity of the current DNS specification, I
have been pointed at earlier efforts to improve the situation, both for DNS
and for other protocols. (https://tools.ietf.org/html/draft-ietf-dnsext-dns-protocol-profile-01
for example).

As has been noted here, "redoing the spec" is a stupendous amount of work,
easily a person-year.  And not a pleasant year at that since it leads to
endless relitigations of previous battles fought, even in a supportive
environment.  This was confirmed by Paul Hoffman and Andrew Sullivan for two
protocols.

I think I and the WGs in general can't credibly commit to this effort, but I
have had it confirmed from several sides that even to the highly skilled
outsider, the DNS specification is currently completely impenetrable. We may
not see this ourselves since we've lived in it for a decade or more.

The reasons for this impenetrability are partially to the age of the
documents, which spend a lot of time talking about conditions which no
longer exist, or at the very least no longer need explaining or defending.

In addition, over the decades, a lot of the original 1034/1035 era text has
been updated, replaced or obsoleted by dozens of later documents.  This
makes it hard to assemble what DNS actually is today. If you start at the
bottom, many things are no longer true. If you start at the end, you can't
make sense of the changes without understanding the earlier documents.

On the positive side, the documents themselves are in pretty good shape once
you get them (!).  Most questions are eventually answered and if you add up
all the text, it ends up as a pretty decent specification.

Given that we likely have no appetite or time to write 1034-bis/1035-bis, I
think the best thing we can do is create an entrypoint for newcomers.  For
this idea, I've been inspired by the wonderful work of Richard Stevens (who
we still miss, nearly two decades on).

In his seminal works on TCP/IP, networks and Unix, he managed to explain
these complicated environments in a far better way than an RFC ever could,
importantly, while not contradicting the standards documents, or misleading
the user with an overly simplified picture of the world.

Crucially, the document may also be opinionated and not talk about things
that are legal, but that we no longer think you should do, like for example
mixing authoritative and recursive service on one IP address.

I've made a start of describing DNS like this on https://powerdns.org/hello-dns/
Of specific interest is the 'meta' document which sets out the goals, 
https://powerdns.org/hello-dns/meta.md.html

I very much welcome help in working on these documents. I do realize WGs are
geared for standards action and this is what attracts a lot of attention.
But I also think that realistically speaking, if we conclude we do not have
the oomph to do a full redo of the standards, this is the best we can do.

Perhaps once we end up with a document we are happy with we could give it
some publicity or perhaps publish it as an informational RFC. Who knows. 

Please let me know your thoughts, or even better, head to https://github.com/ahupowerdns/hello-dns/
to fix my inevitable mistakes or contribute text!

	Bert