mirror of
https://github.com/hickory-dns/hickory-dns.git
synced 2026-04-25 03:05:51 +03:00
[GH-ISSUE #1412] bad dns_name: 1.1.1.1 #666
Labels
No labels
blocked
breaking-change
bug
bug:critical
bug:tests
cleanup
compliance
compliance
compliance
crate:all
crate:client
crate:native-tls
crate:proto
crate:recursor
crate:resolver
crate:resolver
crate:rustls
crate:server
crate:util
dependencies
docs
duplicate
easy
easy
enhance
enhance
enhance
feature:dns-over-https
feature:dns-over-quic
feature:dns-over-tls
feature:dnsssec
feature:global_lb
feature:mdns
feature:tsig
features:edns
has workaround
ops
perf
platform:WASM
platform:android
platform:fuchsia
platform:linux
platform:macos
platform:windows
pull-request
question
test
tools
tools
trust
unclear
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/hickory-dns#666
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @onoketa on GitHub (Mar 14, 2021).
Original GitHub issue: https://github.com/hickory-dns/hickory-dns/issues/1412
Describe the bug
bad dns_name: 1.1.1.1when using 1.1.1.1 astls_dns_nameinResolverConfigTo Reproduce
Expected behavior
https://1.1.1.1/dns-queryis a valid DoH service so it should not be a bad dns nameSystem:
Version:
Crate: resolver
Version: 0.20
@djc commented on GitHub (Mar 14, 2021):
The rustls stack doesn't support connecting to IP addresses over TLS. You can use the domain name or switch to native-tls via the relevant feature flags.
@bluejekyll commented on GitHub (Mar 14, 2021):
Additionally, I don't believe that is the correct SNI for Cloudflare, which I'm nearly certain is
cloudflare-dns.com. For ease of use you can just use the Cloudflare configs baked in:ResolverConfig::cloudflare_https.@onoketa commented on GitHub (Mar 15, 2021):
When you connect with 1.1.1.1 there is no SNI in client hello. In China, connecting to 1.1.1.1 with SNI 'cloudflare-dns.com' is blocked by the Great Firewall. It will be helpful if connecting without SNI is supported in trust-dns's DNS over HTTPS resolver.
@djc commented on GitHub (Mar 15, 2021):
As I mentioned, I think this would work with the openssl or native-tls support already available in the resolver crate. You just have to configure it using the crate's Cargo features.
@onoketa commented on GitHub (Mar 15, 2021):
DNS over HTTPS resolver has only rustls support.
@djc commented on GitHub (Mar 15, 2021):
Ah, sorry, I missed that. Maybe we could have an
tls_enable_snioption forNameServerConfig(conditional onrustlsfeatures) to thehttps::HttpsClientStreamBuilder(and probably also thedns_over_rustlsstream builder) which can propagate the flag into the rustlsClientConfig. @bluejekyll what do you think?@bluejekyll commented on GitHub (Mar 15, 2021):
I think that sounds fine. We could always add OpenSSL/NativeTLS support, though I've been thinking of dropping OpenSSL and leaning more on Rustls/ring in the long run, I just never got around to it myself.
I'm forgetting about SNI right now in terms of security in TLS. Does SNI add any security to the protocol, or is it purely for server-side multi-homing?
@djc commented on GitHub (Mar 15, 2021):
I don't think SNI is important for security.
@trinity-1686a commented on GitHub (Apr 19, 2021):
Some would argue that SNI decrease security as it leaks information on the service being reached, creating the need for something like Encrypted SNI.
@djc commented on GitHub (Nov 1, 2022):
Yes, it looks like DNS over HTTPS is currently only supported with rustls. If you want, consider submitting a PR to add a
dns-over-https-native-tlsfeature (which probably wouldn't be very hard, mostly just a bunch of copy and pasting from thedns-over-https-rustlscode -- though of course we'd prefer to abstract over the difference instead of outright copying where possible).(As a rustls co-maintainer, rustls is likely to have support for IP address in certificates by the end of January.)
@djc commented on GitHub (May 30, 2023):
For people following along here, the trust-dns 0.23.0-alpha.1 release depends on the new rustls release and should support connecting to IP addresses.