web-dev-qa-db-ja.com

Mac OS X MountainLionはローカルホストにping / telnetできません。間違ったパブリックIPを指す

以下に示すように、私は過去2年間、ポート1337のローカルホストでNode.jsアプリを問題なく開発してきました。

$ node app
App started on port 1337

今日は、デフォルトのポート80でどのように動作するかをテストしたかったので、次のことを行いました。

$ Sudo node app
App started on port 80

しかしその後、私のネットワークはおかしくなりました。現在、ローカルホストを含​​むローカルアドレスにアクセスできません。ローカルホストにpingを実行すると、127.0.0.1ではなく奇妙なパブリックIPアドレス(218.38.137.125)を指します。

$ 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
Eye

私は問題を見つけました。 / 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

これが他の人にも役立つことを願っています。

3
Eye