我正在使用 RHEL 6.6 设置工作站。当我做
ping server1
它说ping: unknown host server1
。但是我可以ping
使用 IP 地址 xx.xx.xx.xxx 的 server1。
在我看来,/etc/resolv.conf
它将被 NetworkManager 重写。
我确实将这些添加到我的/etc/sysconfig/network-scripts/ifcfg-eth0
:
DNS1=xx.xx.xx.xxx
DNS2=xx.xx.xx.xxx
DOMAIN=xxx.xxx.xx
有什么建议可能出了什么问题吗?
答案1
server1 是互联网站点(例如 www.google.com)的占位符吗?或者它是您在本地网络上控制的机器?
如果这是你自己的机器,你的 DNS 可能不知道它。你可以在 hosts 文件中添加一行来解析它。
如果是本地计算机,您的选择是:
将其添加到每台计算机的主机文件中(这些文件在 Windows 和 OSX 主机上也可用) - 最简单,但很耗时
通过 DHCP 服务器分发机器 IP(可能通过 MAC id),该服务器还处理 DNS 并为这些名称提供服务 - 这不太可能。这取决于您的 DHCP 服务器,但 DD-WRT 固件可以执行此操作。
运行您自己的 DNS 服务器(可能使用缓存 DNS)并在配置中定义您的服务器 IP
这里是在 Ubuntu 服务器上设置缓存 DNS 的示例,对于 Red Hat EL 不确定。
https://help.ubuntu.com/lts/serverguide/dns-configuration.html
答案2
在 /etc/hosts 文件中创建此条目:
xxx.xxx.xxx.xxx 服务器1
其中 xxx.xxx.xxx.xxx 是 server1 的 IP。
另外,如果 server1 有公共 DNS,请确保您的 /etc/resolv.conf 指向 8.8.8.8 和 4.2.2.2:
猫/etc/resolv.conf:
名称服务器 8.8.8.8
名称服务器 4.2.2.2
如果您不知道 server1 的公共解析,请在您的网络上查找 server1 的私有解析。如果没有私有或公共解析,server1 只存在于您的想象中,但您仍然可以使用 /etc/hosts 文件使其在您的本地计算机上真实存在。