Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Configured bootstrap_resolvers not used for the http_proxy domains #2256

Open
zer0tru5t opened this issue Dec 5, 2022 · 1 comment
Open

Comments

@zer0tru5t
Copy link

zer0tru5t commented Dec 5, 2022

Platform: macOS
Version: 2.1.2

./dnscrypt-proxy -version
2.1.2

./dnscrypt-proxy -check
[2022-12-05 13:10:45] [NOTICE] dnscrypt-proxy 2.1.2
[2022-12-05 13:10:45] [NOTICE] Source [public-resolvers] loaded
[2022-12-05 13:10:45] [NOTICE] Configuration successfully checked

./dnscrypt-proxy -resolve google.com
Resolving [google.com] using 127.0.0.1 port 53

Steps to Reproduce

  • Installed dnscrypt-proxy2
  • Configured - server_names, doh, bootstrap_resolvers and http_proxy
  • Started the dnscrypt-proxy2
  • dnscrypt-proxy2 cannot connect to the DOH servers over the proxy as it couldn't resolve the proxy using the bootstrap_resolvers
root@xxxx-mbp /Applications# ./dnscrypt-proxy
[2022-12-05 13:05:19] [NOTICE] dnscrypt-proxy 2.1.2
[2022-12-05 13:05:19] [NOTICE] Network connectivity detected
[2022-12-05 13:05:19] [NOTICE] Now listening to 127.0.0.1:53 [UDP]
[2022-12-05 13:05:19] [NOTICE] Now listening to 127.0.0.1:53 [TCP]
[2022-12-05 13:05:19] [NOTICE] Source [public-resolvers] loaded
[2022-12-05 13:05:19] [NOTICE] Firefox workaround initialized
[2022-12-05 13:05:39] [ERROR] Get "https://dns.cloudflare.com/dns-query?dns=yv4BAAABAAAAAAABAAACAAEAACkQAAAAAAAAFAAMABBAWJM8BRTVGzjmZQ4GvgyM": context deadline exceeded
[2022-12-05 13:05:39] [NOTICE] dnscrypt-proxy is waiting for at least one server to be reachable
^C[2022-12-05 13:08:41] [NOTICE] Stopped.

Configuration

listen_addresses = ['127.0.0.1:53']
server_names = ['google','cloudflare']

http_proxy = 'http://proxy.acme.com:1883'
doh_servers = true
ipv4_servers = true

bootstrap_resolvers = ['192.168.10.1:53']
ignore_system_dns = true

cache = true

[sources]
  [sources.public-resolvers]
    urls = ['https://download.dnscrypt.info/resolvers-list/v3/public-resolvers.md']
    cache_file = 'public-resolvers.md'
    minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
    refresh_delay = 72

Expected behavior (i.e., solution)

http_proxy domain (e.g., proxy.acme.com) must be resolved using the bootstrap_resolvers.

[2022-12-05 13:09:04] [NOTICE] dnscrypt-proxy 2.1.2
[2022-12-05 13:09:04] [NOTICE] Network connectivity detected
[2022-12-05 13:09:04] [NOTICE] Now listening to 127.0.0.1:53 [UDP]
[2022-12-05 13:09:04] [NOTICE] Now listening to 127.0.0.1:53 [TCP]
[2022-12-05 13:09:04] [NOTICE] Source [public-resolvers] loaded
[2022-12-05 13:09:04] [NOTICE] Firefox workaround initialized
[2022-12-05 13:09:04] [NOTICE] [cloudflare] OK (DoH) - rtt: 26ms
[2022-12-05 13:09:04] [NOTICE] [google] OK (DoH) - rtt: 33ms
[2022-12-05 13:09:04] [NOTICE] Sorted latencies:
[2022-12-05 13:09:04] [NOTICE] -    26ms cloudflare
[2022-12-05 13:09:04] [NOTICE] -    33ms google
[2022-12-05 13:09:04] [NOTICE] Server with the lowest initial latency: cloudflare (rtt: 26ms)
[2022-12-05 13:09:04] [NOTICE] dnscrypt-proxy is ready - live servers:

Other Comments

It works with the following scenarios, so the http_proxy domains are likely not resolved.

@lifenjoiner
Copy link
Member

Use IP instead of the domain for the http_proxy (e.g., https://192.168.1.100:1883/ instead of https://proxy.acme.com:1883/)

I think it is the easy solution and normal way, that leads people without motivation to do it in the hard way.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants