1

我们使用 VpnService 来设置具有自定义 DNS 设置的 VPN。我们只是对更改设备的 DNS 设置感兴趣。

在当前版本的 Android(P 及以下)中,通过不在 VPN 中设置路由,服务流量会直接路由到应用程序,DNS 请求会发送到提供的地址。我们不需要 TUN 接口,因为我们不提供真正的 VPN 服务。

在 Android Q beta 3 上,VPN 已建立,但 DNS 设置被忽略。发生了什么变化?

下面是我们如何在 onStartCommand 中启动服务

                b.addAddress("10.0.2.15", 32);
                b.addDnsServer("8.8.8.8");
                b.addDnsServer("8.8.4.4");
                b.establish();
4

1 回答 1

2

DNS 配置确实有效。

我观察到它实际上不是由 Chrome 引起的。Chrome(不确定哪个版本)使用自己的 dns 解析器,绕过 VPN 应用的 DNS 设置。

此处讨论:https ://www.xda-developers.com/fix-dns-ad-blocker-chrome/

于 2019-06-26T12:21:35.587 回答