Mac OS X Mountain Lion 无法 ping/telnet 本地主机。指向错误的公共 IP

Mac OS X Mountain Lion 无法 ping/telnet 本地主机。指向错误的公共 IP

过去两年我一直在本地主机的 1337 端口上开发 Node.js 应用程序,没有任何问题,如下所示。

$ node app
App started on port 1337

今天我想测试一下默认端口 80 的运行情况,所以我这样做了:

$ sudo node app
App started on port 80

但此后我的网络就变得一团糟。现在我无法访问任何本地地址,包括 localhost。当我 ping localhost 时,它指向一些奇怪的公共 IP 地址 (218.38.137.125),而不是 127.0.0.1。

$ ping localhost
PING localhost.local (218.38.137.125): 56 data bytes
...

218.38.137.125 不是我的公共 IP 地址。

当我通过 telnet 连接时,我看到了相同的错误 IP 地址:

$ telnet localhost
Trying 218.38.137.125...
telnet: connect to address 218.38.137.125: Connection refused
telnet: Unable to connect to remote host

我的/etc/hosts如下:

127.0.0.1   localhost
255.255.255.255 broadcasthost
::1             localhost
fe80::1%lo0 localhost

有人能指出哪里出了问题吗?

我完全没有办法猜测,甚至无法继续我的工作。

答案1

我找到了问题所在。它恰好是/etc/hosts文件。

我使用 Sublime Text 2 编辑了它,但这恰好是一个错误的选择,因为它添加了CR 线路终端器

$ file -b /etc/hosts
ASCII English text, with CR line terminators

正如所提到的https://discussions.apple.com/message/20103434#20103434,它必须只是ASCII 英文文本

因此,复制/etc/hosts内容并使用“vi”覆盖此文件,解决了问题。现在:

$ file -b /etc/hosts
ASCII English text

我希望这也能帮助其他人。

相关内容