2

我想永久更改我的 dns,最好使用初始化脚本。

到目前为止,这是我尝试过的任何方法:

setprop net.rmnet0.dns1 8.8.8.8(过时的)

ndc resolver setifdns rmnet0 8.8.8.8 8.8.4.4(这似乎也过时了)

这似乎是正确的做法:

ndc resolver setnetdns <netID> <domains> <dns1> <dns2>

但我不知道如何找到 rmnet0 的 netID 以及在域部分中放置什么?

可能有更好的方法,比如更改一些文件或应用补丁。

4

1 回答 1

1

要执行的正确命令取决于所使用的 Android 版本。由于我迟到了这个答案,我假设您不再使用 5.1.1(或 6.0),答案将是

ndc resolver setnetdns <netId> <domains> <dns1> <dns2> ...
ndc resolver clearnetdns <netId>
ndc resolver flushnet <netId>

<netId>简直就是在哪里rmnet0。大多数版本的列表可以在AFWall Wiki 中找到。

请注意,只有在下一次从 WiFi 切换到移动数据(我已经尝试过)之前,第一个命令才会生效。不确定后面的两个命令是否能坚持下去——我担心它会像 DHCP 一样工作,所以在下一次连接时,无论如何都会覆盖这些值。如果是这样,您需要在每次连接更改时运行该脚本(即在移动连接被激活时收听该广播并运行该脚本)。

于 2017-11-29T23:09:40.340 回答