Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Improve protection of DNS queries #43
Go on Android cannot determine the system's preferred DNS servers.
This change requires a Protector to indicate the list of DNS
Go on Android cannot determine the system's preferred DNS servers. This is normally fine, because Resolver.PreferGo defaults to false, but we need to set PreferGo to true when protection is enabled, in order to protect the DNS query's UDP socket. This change requires a Protector to indicate the list of DNS servers, so that the Resolver can create a protected socket to one of those servers.
This change depends on Jigsaw-Code/outline-go-tun2socks#43. This change does not affect Intra's default behavior. It adds a remote configuration option that can be used to test full-VPN support on versions below API 23. If this configuration works well, we should be able to remove OkHttp and related codepaths.