无法解析 Mac OS X Server 上的本地主机

无法解析 Mac OS X Server 上的本地主机

我有一台运行 OS X Server 10.5 的服务器,它无法将 localhost 解析为 127.0.0.1。

当我尝试 ping 时,发生了以下情况:

> ping 本地主机
ping:无法解析本地主机:未知主机

SSH 和 Web 浏览器得到的结果类似(未知主机)。如果我尝试使用 127.0.0.1 或 LAN 上分配的 IP 地址,上述所有操作均有效。

这是我的 /etc/hosts 文件的内容:

> 猫/等/主机
##
# 主机数据库
#
# localhost 用于配置环回接口
# 在系统启动时。请勿更改此条目。
##
127.0.0.1 本地主机
255.255.255.255 广播主机
::1 本地主机
fe80::1%lo0 本地主机

我没有运行本地 DNS 服务。

有谁知道为什么会发生这种情况或者我该如何解决它?

答案1

我在使用 Mountain Lion (10.8.2) 时也遇到了同样的问题。我通过在“安全和隐私”->“防火墙”->“防火墙选项”中禁用“隐身模式”解决了这个问题。

答案2

这可能与您的原始问题无关,但还有另一个问题可能会影响 Mac OS X Lion 中的 DNS 查找,具体来说localhost或您可能拥有的任何其他条目/etc/hosts

显然,该/etc/hosts文件不再支持每行多个域,因此每个记录都需要自己的行:

127.0.0.1 localhost
127.0.0.1 some.site.local
127.0.0.1 some.site.dev

发现此信息Justin Carmony 的博客。他继续描述了使用时的一些其他“有趣”的行为/etc/hosts,因此如果您仍然遇到问题,请仔细阅读。

答案3

我知道有点晚了,但就我而言,将行尾更改为 UNIX,用空格替换制表符并将文件保存为 UTF-8 使其在 Mountain Lion (10.8.2) 上运行

希望这对其他人也有效。

答案4

在我的电脑上(同样的症状),我的/etc/hosts文件被弄乱,使用 Macintosh 行尾(CR— 0x13)而不是 Unix 行尾(LF— 0x10)。除此之外,文件是正确的。

我的解决方案是:

brew install dos2unix
sudo dos2unix -c mac /etc/hosts

相关内容