Ubuntu下修改为永久DNS的方法

时间:2018-03-19 15:26:33   收藏:0   阅读:3008

安装好Ubuntu之后设置了静态IP地址,再重启后就无法解析域名。想重新设置一下DNS,打开/etc/resolv.conf

cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

内容是一段警告:说这个文件是resolvconf程序动态创建的,不要直接手动编辑,修改将被覆盖。

果不其然,修改后重启就失效了,搜索了Ubuntu下设置DNS的相关资料,总结出两个办法:

方法一 通过/etc/network/interfaces,在它的最后增加一句:

dns-nameservers 8.8.8.8
dns-nameservers 123.125.81.6
dns-nameservers 101.226.4.6

8.8.8.8是Google提供的DNS服务,这里只是一个例子(有时候谷歌或阿里的DNS也不好用),你也可以改成其他运营商的DNS(比如上面最后两个)。重启后(reboot) ,DNS就生效了,这时候再看/etc/resolv.conf,最下面就多了一行:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 8.8.8.8
dns-nameservers 123.125.81.6
dns-nameservers 101.226.4.6





方法二 通过修改:

/etc/resolvconf/resolv.conf.d/base(这个文件默认是空的)

在里面插入:
nameserver 8.8.8.8
nameserver 8.8.4.4
nameservers 123.125.81.6
nameservers 101.226.4.6

如果有多个DNS就一行一个

修改好保存,然后执行

resolvconf -u

再看/etc/resolv.conf,最下面就多了2行:

cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 8.8.8.8
nameserver 8.8.4.4
nameservers 123.125.81.6
nameservers 101.226.4.6


可以看到我们的设置已经加上了,然后再ping一个域名,当时就可以解析了,无需重启。

附:CentOS下修改DNS则容易的多了,直接修改/etc/resolv.conf,内容是:
nameserver 8.8.8.8
nameserver 8.8.4.4
nameservers 123.125.81.6
nameservers 101.226.4.6


保存就生效了,重启也没问题。

原文链接http://blog.csdn.net/todd911/article/details/9251087

我百度之后大部分的方法都是第二种方法,我这儿试过之后就是不可以,也不知道什么原因,所幸找到了这篇文章,亲测第一种方法有效。
评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!