Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Change "DNS forwarding" yet again #2100

Closed
Mygod opened this issue Jan 31, 2019 · 3 comments

Comments

Projects
None yet
2 participants
@Mygod
Copy link
Contributor

commented Jan 31, 2019

"DNS forwarding" has been a confusing option since the day its predecessor "UDP forwarding" has been associated with change in DNS behavior. Furthermore, currently this option also changes how DNS packets are routed.

UDP forwarding is active unconditionally (basically) in libss-local.so since quite a while ago. In this issue, I propose to replace (or rename) DNS forwarding with the following:

Send DNS over UDP
(default: off)
Requires UDP forwarding on server side

Its behavior will be simplified to basically changing this flag in #2096:

So that also means we are getting rid of libss-tunnel.so and always use LocalDnsServer. Thoughts? @madeye

@madeye

This comment has been minimized.

Copy link
Contributor

commented Feb 1, 2019

Not really, there are multiple ways to do DNS for shadowsocks-android:

  1. Local DNS server -> (UDP) -> system DNS
  2. Local DNS server -> (TCP) -> local socks5 proxy -> remote DNS
  3. Local DNS server -> (UDP) -> local socks5 proxy -> remote DNS
  4. -> (UDP) -> local socks5 proxy -> remote DNS

When enabling DNS forwarding, we will force all DNS queries going to local socks5 proxy, which is the case 4. It helps to avoid any DNS leak.

So maybe we can call it "Global DNS forwarding"?

@Mygod

This comment has been minimized.

Copy link
Contributor Author

commented Feb 1, 2019

Well there is actually no way to use 3 right now without changing code. All DNS packets sent from local DNS server (or overture) is TCP. Also local DNS service can do unconditional DNS forwarding.

@madeye

This comment has been minimized.

Copy link
Contributor

commented Feb 1, 2019

If so, I'm okay with renaming to DNS over UDP.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.