当前位置: > Linux服务器 > DNS >

Ubuntu DNS 修改 /etc/resolv.conf 被清空 或重启不生效解决

时间:2015-08-24 17:32来源:linux.it.net.cn 作者:IT

修改Ubuntu DNS时, 查看/etc/resolv.conf 会看到他使用的dns是 nameserver 127.0.1.1,
是因为Ubuntu 会启动dnsmasq服务, 解析域名时不需要到网络运营商获取..
在解析速度上会慢于网络运营商(有cache).
自己是使用电信的网络, ping 电信的dns速度在 (1 ms , 2 ms)左右, 速度是非常快的..
但使用网络运营商的DNS会有一些不爽的地方, 比如无法解析的域名跳转到114xxxxxxxxxxxxxx….
有些解析还没到GFW就被屏蔽(GFW会再过滤解析).
使用dnsmasq是好处远远大于使用网络运营商的DNS的..

使用Ubuntu一直以来很少动到/etc/resolv.conf这个文件, 原因是本身的dnsmasq加上路由器可以劫持域名
不过最近有需要修改下DNS, 并记录下过程.

操作系统: Ubuntu 14.04
相关软件: dnsmasq NetworkManager

操作过程:

正常的修改Linux的DNS是编辑/etc/resolv.conf文件.
格式是: nameserver ,
如修改DNS为218.85.152.99(福建电信DNS)

或直接编辑/etc/resolv.conf.
一般这样就直接好了..

系统装有NetworkManager的话, 这样的修改只是临时的, 如重启计算机, 或者插拔网线/etc/resolv.conf被重置为:”nameserver 127.0.0.1
Ubuntu默认是有装NetworkManager的..

如果需要永久生效的话, 需要执行以下操作:
编辑

将dns=dnsmasq注释掉. 禁止使用dnsmasq插件.

然后重启NetworkManager
注意: 这里终端不能使用su 切换到root, 只能在当前用户使用sudo 去执行.

这个时候我们编辑/etc/resolv.conf 或者在Ubuntu网络连接里面指定DNS就不会清空/etc/resolv.conf了.

相关链接:

Ubuntu: http://www.ubuntu.com/
dnsmasq: http://www.thekelleys.org.uk/dnsmasq/doc.html



(责任编辑:IT)
------分隔线----------------------------