DNS信息是由/etc/resolv.conf提供的,它是每次开机时,由/sbin/resolvconf生成的
/etc/resolv.conf是/run/resolvconf/resolv.conf的符号链接
错误的修改方法
直接修改/etc/resolv.conf文件添加DNS的方法并不可行,因为重启系统后,该配置文件会被重新覆盖。
这一点也可以该文件顶部的注释行证明
原因解释:
在Ubuntu中有一个 resolvconf的服务,这个服务用来控制/etc/resolv.conf的内容。
所以一旦我们重启了系统或者该服务,那么/etc/resolv.conf文件中的内容将被还原为原来的内容。
所以直接修改/etc/resolv.conf并不能解决这个问题。
正确的修改方法
修改如下文件,默认是空的
sudo vim /etc/resolvconf/resolv.conf.d/base
在里面加入你想添加的DNS服务器,一行一个
修改好后保存,然后执行
sudo /sbin/resolvconf -u
或者
sudo etc/init.d/resolvconf restart
或者重启系统
再查看/etc/resolv.conf文件,已经将我们添加的内容加上了
cat /etc/resolv.conf
另一种方法
sudo vim /etc/network/interfaces
dns-nameservers 8.8.8.8 114.114.114.114
遇到的问题
无法实现上面的功能,不知道是什么原因?
最后的折衷解决方案,在网卡配置GUI中手动加入dns配置,然后使用下面的命令检查
nmcli dev list iface wlan0 | grep DNS
把wlan0换成你网路连接的硬体,看DNS是哪一个,就知道现在使用的DNS是谁。
CentOS 6.6永久修改DNS地址的方法:http://www.linuxdiyf.com/linux/9579.html
启用Ubuntu本地DNS缓存功能提升浏览速度:http://www.linuxdiyf.com/linux/9201.html
Ubuntu配置静态IP和DNS:http://www.linuxdiyf.com/linux/1790.html
如何在Linux/Unix/Mac下清除DNS查询缓存:http://www.linuxdiyf.com/linux/953.html
手动配置Ubuntu指定DNS服务器地址:http://www.linuxdiyf.com/linux/886.html