Ubuntu实践(5):DNS服务器设置

来源:互联网 发布:淘宝怎么买烟怎么搜 编辑:程序博客网 时间:2024/06/06 05:43

       12.04LTS中的resolv.conf是动态生成的,对它直接进行的手动修改都会丢失,因为它在resolvconf下一次重启的时候将被重写。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
           通过图形界面工具Network manager配置静态IP和DNS服务器,能ping到局域网中的电脑,但是上不了。因为,resolv.conf没有nameserver的信息。如果是通过动态IP上网,不存在这个问题的。那么,如果你使用静态IP,怎么在哪里添加你的DNS配置呢?

     (一)可以通过在 /etc/network/interfaces里面添加静态ip的同时写入DNS的配置,如下所示:

# The loopback network interfaceauto loiface to inet loopback#The primary network interfaceauto eth0iface eth0 inet static       address xxx.xxx.xxx.xxx       ...       dns-nameservers 8.8.8.8
      这里使用google的DNS服务器,手动添加了DNS配置然后重启networking和resolvconf程序,你会发现resolvconf有了nameserver的信息,可以上网了。

      dns-nameservers后面可以带多个服务器IP,只需要用空格隔开即可。

       ()修改 /etc/resolvconf/resolv.conf.d/ 目录下的文件,resolvconf启动时会读取文件里面的DNS信息。一般该目录下,只有base和head两个文件,另外的两个original和tail需要手动创建。

       base是resolvconf在其他文件里找不到服务器信息时,才会被使用。head,顾名思义,里面的信息是作为resolv.conf服务器列表的第一个被使用的。original只是在resolvconf启动时,做一个备份。tail,和head恰恰相反,里面的信息会被追加到resolv.conf服务列表的最后。

       手动创建 /etc/resolvconf/resolv.conf.d/tail文件,并按照如下格式写入服务器信息(base文件也是该格式):

nameserver 8.8.8.8
       接下来重启resolvconf程序,就可以下发服务器信息了。

       如果想添加多个服务器IP,需要分多行写,每行格式一样。


注:本文主要是针对ubuntu 12.04LTS 的DNS,其他旧版本或者未来的新版本可能不同,注意区分。


原创粉丝点击