android - 如何更改 Android 上的 3g dns 设置?

标签 android

我想更改 Android 2.1 设备上的 3G dns 设置。我设法在我的设备上安装了 busybox,我还可以使用 adb shell getprop | 获取 dns 信息。 grep DNS。唯一的问题是它显示了 net.pdp0.dns1net.pdp0.dns2,而不是 net.rmnet0.dns1net.rmnet0.dns1 所以我无法更改设置。

我知道net.rmnet0.dns1是3G连接的,那么net.pdp0.dns1呢?我如何更改为 net.rmnet0.dns1

谢谢

最佳答案

Android DSN 文件包含在以下目录中:

在安卓文件系统中
system/etc/dhcpcd/dhcpcd-hooks/20-dns.conf

20-dns.conf 文件包含dns 设置,您可以通过以下方式修改此文件:

# Set net.<iface>.dnsN properties that contain the
# DNS server addresses given by the DHCP server.

set_dns_props()
{
    case "${new_domain_name_servers}" in
    "")   return 0;;
    esac

    count=1
    for i in 1 2 3 4; do
        setprop dhcp.${interface}.dns${i} ""
    done

    count=1
    for dnsaddr in ${new_domain_name_servers}; do
        setprop dhcp.${interface}.dns${count} ${dnsaddr}
        count=$(($count + 1))
    done

    setprop dhcp.eth0.dns1 8.8.8.8
    setprop dhcp.eth0.dns2 8.8.8.4
}

unset_dns_props()
{
    for i in 1 2 3 4; do
        setprop dhcp.${interface}.dns${i} ""
    done
}

case "${reason}" in
BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT)       set_dns_props;;
EXPIRE|FAIL|IPV4LL|RELEASE|STOP)                unset_dns_props;;
esac

(注意:如需源文件,请备份源文件)

在以下行中设置您的 dns

setprop dhcp.eth0.dns1 8.8.8.8
setprop dhcp.eth0.dns2 8.8.8.4

关于android - 如何更改 Android 上的 3g dns 设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4615426/

相关文章:

android - 在带有 Fragment 和 ListActivity 的 onCreate() 之前,系统服务对 Activity 不可用

android - Box2d 和 Andengine 物理教程

android - Scene2d 与 Sprite

fragment 中的 Android 动态微调器

android - 如何将2个布局放在彼此之上

java - 在 Android 中隐藏 keystore 密码的最佳方法是什么?

java - 我现在可以使用 Android 开发 "use"Java 8 吗?

android - 我可以隐藏布局上的图像按钮(尺寸和背景)直到调用设置可见吗?

android - 如何在 Android 中为对齐的组件添加边距

android - 如何从 TextView 显示每个点击的单词