Jigsaw-Code / outline-apps

Outline Client and Manager, developed by Jigsaw. Outline Manager makes it easy to create your own VPN server. Outline Client lets you share access to your VPN with anyone in your network, giving them access to the free and open internet.
https://getoutline.org/
Apache License 2.0
8.22k stars 1.35k forks source link

Smartdnsblock.exe slowing down whole dns #985

Open Roki100 opened 3 years ago

Roki100 commented 3 years ago

Describe the bug So basically while im (my friends as well) are connected to outline server the dns queries take around 10 seconds to complete, but after killing smartdnsblock.exe they complete instantly.

To Reproduce Just connect to the outline vpn.

Expected behavior Instant dns resolving

Screenshots If applicable, add screenshots to help explain your problem.

Client System (please complete the following information):

Submit Feedback Please submit feedback through the app and label it with this issue number.

Additional context Add any other context about the problem here.

alalamav commented 3 years ago

Hi @Roki100, smartdnsblock prevents the system from leaking DNS queries by blocking UDP traffic to the default interface and redirecting it through the VPN. The behavior you observe is expected: without smartdnsblock your DNS queries get sent to the default interface resolver, which is faster than routing them through Outline (hop to the proxy + encryption/decryption).

However, DNS queries over UDP should not take ~10s to resolve, even through the VPN. Do your network and server support UDP forwarding? Outline enables a DNS over TCP fallback when the network and/or server do not support UDP forwarding, so that may explain the longer resolution time.

Roki100 commented 3 years ago

Hi @Roki100, smartdnsblock prevents the system from leaking DNS queries by blocking UDP traffic to the default interface and redirecting it through the VPN. The behavior you observe is expected: without smartdnsblock your DNS queries get sent to the default interface resolver, which is faster than routing them through Outline (hop to the proxy + encryption/decryption).

However, DNS queries over UDP should not take ~10s to resolve, even through the VPN. Do your network and server support UDP forwarding? Outline enables a DNS over TCP fallback when the network and/or server do not support UDP forwarding, so that may explain the longer resolution time.

im pretty sure both network and the server support udp forwarding, i am not sure how to check that to be 100% sure tho, however i was reading that https://supportcenter.checkpoint.com/supportcenter/portal?eventSubmit_doGoviewsolutiondetails=&solutionid=sk111657 but i am not sure if that is related, i would like to fix this issue with the resolving taking so long because our fix for now was replacing the .exe with some random .exe

edit: i did use netcat and it seems udp connection is working fine if thats what you mean 2nd edit: i forgot to mention it only happens on windows, on linux and android everything works fine

grandsilence commented 2 years ago

I have the same issue on Windows 10 (1803), Outline Client v1.6.0. After killing smartdnsblock process it's working instant. On Mac OS and iOS DNS working as expected well.