问题
安卓(Android)系统底层没有/etc/resolv.conf这个文件,所以没法像linux那样添加nameserver记录。
解决办法
安卓系统下通过Network Daemon(Netd) 网络守护进程进行管理。封装了庞杂的底层各种类型的网络(NAT,PLAN,PPP,SOFTAP,TECHER,ETHO,MDNS等),隔离了底层网络接口的差异,给Framework提供了同一调用接口,简化了网络的使用。
其中设置DNS与安卓系统版本有关:
# 对于安卓6.0以前,采用如下格式
# ndc resolver setifdns (interface) (dns1) (dns2)
ndc resolver setifdns eth0 8.8.8.8 8.8.4.4
# 对于安卓6.0以上,采用如下格式
# ndc resolver setnetdns (interface) (dns1) (dns2)
ndc resolver setnetdns eth0 8.8.8.8 8.8.4.4
本文介绍安卓系统中如何配置DNS。由于Android系统底层不包含/etc/resolv.conf文件,因此不能直接添加nameserver记录。针对不同版本的Android系统(6.0之前及6.0及以上),文章详细说明了使用NetworkDaemon(Netd)网络守护进程来设置DNS的方法。
1508





