将计算机配置为使用静态ip时,遇到了Ubuntu 12.04 Server版中的名称解析问题。
在/ etc / network / interfaces中:
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.28
netmask 255.255.255.0
gateway 192.168.1.1
运行$ sudo apt-get upgrade
,将导致“无法提取...”:
. . . W: Failed to fetch http://us.archive.ubuntu.com/ubuntu/dists/precise-backports/universe/i18n/Translation-en_US Something wicked happened resolving 'us.archive.ubuntu.com:http' (-5 - No address associated with hostname)
[...]
当我将/ etc / network / interfaces更改为:
auto eth0
iface eth0 inet dhcp
一切正常。
查看/etc/resolv.conf可提供更多提示。
如果遇到解决问题,则resolv.conf为空;未指定名称服务器。然后,我从静态更改为DHCP,然后重新启动网络。/etc/resolv.conf更改为:“名称服务器192.168.1.1”。
从DHCP切换回静态并重新启动不会删除名称服务器条目。但是,当我使用静态设置重新启动系统时,resolv.conf为空。当我使用DHCP设置重新启动系统时,resolv.conf的名称服务器为192.168.1.1。因此,看来问题在于解决方案.conf没有正确写入?哪个程序包/代码负责写入resolv.conf?我是否可以查看一个特定的软件包?
更新:istream发布了一篇不错的文章,讨论了12.04中对resolve.conf的更改。 http://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/
DHCP
,那么您要建议“修复”的是“问题”。您的局域网是什么样的?您使用哪种类型的路由器?(什么是192.168.1.1?)当您使用静态IP时,您指定哪些DNS服务器?