←back to thread

1895 points _l4jh | 1 comments | | HN request time: 0.202s | source
Show context
bluejekyll ◴[] No.16728385[source]
DNS-over-HTTPS doesn’t make as much sense to me as DNS-over-TLS. They are effectively the same thing, but HTTPS has the added overhead of the HTTP headers per request. If you look at the currently in progress RFC, https://tools.ietf.org/html/draft-ietf-doh-dns-over-https-04, this is quite literally the only difference. The DNS request is encoded as a standard serialized DNS packet.

The article mentions QUIC as being something that might make HTTPS faster than standard TLS. I guess over time DNS servers can start encoding HTTPS requests into JSON, like google’s impl, though there is no spec that I’ve seen yet that actually defines that format.

Can someone explain what the excitement around DNS-over-HTTPS is all about, and why DNS-over-TLS isn’t enough?

EDIT: I should mention that I started implementing this in trust-dns, but after reading the spec became less enthusiastic about it and more interested in finalizing my DNS-over-TLS support in the trust-dns-resolver. The client and server already support TLS, I couldn't bring myself to raise the priority enough to actually complete the HTTPS impl (granted it's not a lot of work, but still, the tests etc, take time).

replies(9): >>16728460 #>>16728600 #>>16728618 #>>16728709 #>>16728748 #>>16728753 #>>16728813 #>>16729267 #>>16729468 #
Twirrim ◴[] No.16728618[source]
Some ISPs block outbound DNS from customers to anywhere but their resolvers, filtering based on target port. This is a particularly common trick in countries that attempt to censor the internet.

It's a lot harder to do that with DNS-over-HTTPS because it looks like normal traffic.

That said, in this case ISPs can just null route the IP address of the obvious main resolvers such as 1.1.1.1. I imagine most of the benefit is surely to people who can spin up their own resolvers.

replies(2): >>16728809 #>>16729885 #
bluejekyll ◴[] No.16728809[source]
When we add TLS on top of the protocol, ISPs can only filter based on port at that point. We can run DNS on 443 if that helps, but as you said, static well-known IPs can then be blocked.

> I imagine most of the benefit is surely to people who can spin up their own resolvers.

There are already many easily run DNS resolvers available. Is there a benefit you see in operating them over HTTPS that improves on that?

replies(1): >>16729088 #
gsnedders ◴[] No.16729088[source]
> When we add TLS on top of the protocol, ISPs can only filter based on port at that point.

And SNI… :(

replies(3): >>16729197 #>>16729570 #>>16729589 #
Operyl ◴[] No.16729197[source]
If this were to become an issue, I guess Cloudflare could try to disable SNI.
replies(1): >>16729300 #
hsivonen ◴[] No.16729300[source]
The client sends SNI, so how could the server opt out?
replies(2): >>16729342 #>>16729731 #
1. d33 ◴[] No.16729731[source]
Server could advertise no need to use SNI in advance. Or we could do SNI after actually establishing an encrypted session...