linux – 名称解析暂时失败

每当做任何需要在我的CentOS服务器上进行DNS查找的事情时,我都会收到错误消息.例如.:
[root@15557 etc]#  wget http://www.whitehouse.gov/sites/default/files/rss_viewer/birth-certificate-long-form.pdf
--2011-05-03 20:55:35--  http://www.whitehouse.gov/sites/default/files/rss_viewer/birth-certificate-long-form.pdf
Resolving www.whitehouse.gov... failed: Temporary failure in name resolution.
wget: unable to resolve host address `www.whitehouse.gov'

如果我重新启动服务器,那么这个问题会在短时间内消失,但一小时左右就会回来.如果我更改resolv.conf中列出的名称服务器IP,问题就不会得到解决,即使我用普通的名称服务器替换它们,如Google的8.8.8.8.如果我在更改resolve.conf后刷新主机缓存,它也不能解决问题.重新启动服务器后,resolv.conf将更改回其默认值(我猜是通过某些DHCP).

解决方法

这可能是由DHCP服务器引起的问题 – 实际上是由网络上的恶意或其他配置错误的DHCP服务器造成的.

可能会发生以下情况:当您的服务器启动时,它会设法从合法的DHCP服务器获取准确的参数(IP地址,网关,DNS服务器等),因此,在租约之前您不会遇到任何问题续约.在相对较短的时间后(取决于dhcp客户端和服务器配置),DHCP客户端将尝试通过联系合法的DHCP服务器(通过单播传输)来续订租约.如果由于某种原因失败或者您的dhcp客户端由于某种原因未从合法的DHCP服务器获得响应,它将进入重新绑定状态并将广播请求以延长租约时间.如果流氓/其他配置错误的DHCP服务器设法首先响应,它可能会向您的DHCP客户端发送不正确的参数 – 例如“错误的”DNS服务器地址,因此您将无法解析主机名.

如果我的推测是正确的,重新启动服务器并不总能解决问题,因为有时恶意DHCP服务器会首先响应,因此您会遇到您提到的问题.

在任何情况下,请尝试配置静态IP地址,禁用DHCP并手动设置DNS服务器.此外,除了您正在使用的服务器之外,您应该检查网络上是否还有其他任何DHCP服务器正在运行.

相关文章

linux常用进程通信方式包括管道(pipe)、有名管道(FIFO)、...
Linux性能观测工具按类别可分为系统级别和进程级别,系统级别...
本文详细介绍了curl命令基础和高级用法,包括跳过https的证书...
本文包含作者工作中常用到的一些命令,用于诊断网络、磁盘占满...
linux的平均负载表示运行态和就绪态及不可中断状态(正在io)的...
CPU上下文频繁切换会导致系统性能下降,切换分为进程切换、线...