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
方法二
通过修改: 
sudo vi /etc/resolvconf/resolv.conf.d/base(这个文件默认是空的) 
在里面插入: 
 
nameserver 8.8.8.8 
nameserver 8.8.4.4 
 
如果有多个dns就一行一个 
修改好保存,然后执行 
sudo 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
保存就生效了,重启也没问题。