Ubuntu下设置DNS的方法 和国内公共DNS汇总

安装好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

 

8.8.8.8是Google提供的DNS服务,这里只是举一个例子,你也可以改成电信运营商的DNS。重启后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

 

方法二 通过修改:

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

在里面插入:

nameserver 8.8.8.8
nameserver 8.8.4.4

如果有多个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

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

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

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

 

国内常用公共DNS服务器、各省运营商DNS服务器汇总

14 DNS(http://www.114dns.com/),这应该是用户数量数一数二的公共DNS了,档主自己也在使用,推荐。

114.114.114.114

114.114.115.115

阿里 AliDNS(http://www.alidns.com/),来自阿里巴巴和马云旗下的公共DNS,还没有体验过,有兴趣可以试试。

223.5.5.5

223.6.6.6

CNNIC SDNS(http://www.sdns.cn/),来自天朝官方CNNIC的公共DNS,没使用过也没敢用……

1.2.4.8

210.2.4.8

oneDNS(http://www.onedns.net/),2013年才新推出的一个公共DNS服务器,官网介绍由恶意网站实验室创立,没用过。

112.124.47.27

114.215.126.16

Google DNS(https://developers.google.com/speed/public-dns/),曾经最火最热的一款公共DNS服务器,但是随着Google在中国的没落和国内官方的限制,已经不是太好用了。

8.8.8.8

8.8.4.4

OpenDNS(https://www.opendns.com/),和Google DNS 一样,来自于国外服务商提供的公共DNS,据说同样在国内水土不服。

208.67.222.222

208.67.220.220

 

上一篇:WSL2中设置DNS后重启终端又失效的解决方法


下一篇:VMware安装Ubuntu,配置静态ip并成功联网