Mac OS X 10.7 не может выполнить ping/telnet localhost

Mac OS X 10.7 не может выполнить ping/telnet localhost

Я разрабатываю с использованием django/postgresql на Mac OS X 10.7 и внезапно не могу получить доступ к тестовому серверу черезhttp://localhost:8000/. Я могу заставить его слушать на 0.0.0.0:8000, и тогда это работает...

Затем я заметил проблемы с запуском SABnzbd. Всякий раз, когда я пытаюсь его запустить, он умирает и выключается. В журналах показано

IOError: Port 8080 not bound on '127.0.0.1'

запуск netstat -an | grep 8080показывает, что на самом деле порт 8080 никто не прослушивает.

Затем я попробовал telnet и ping localhost. Ни то, ни другое не работает. Когда я telnet, я получаю:

$ telnet localhost
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...

и он просто висит там.

При попытке выполнить ping я получаю следующее:

$ ping localhost
PING localhost (127.0.0.1): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2

Странно, но когда я подключаюсь по telnet к порту 80, все работает!

$ telnet localhost 80
Trying ::1...
Connected to localhost.
Escape character is '^]'.

Мой /etc/hostsфайл выглядит нормально:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost 
fe80::1%lo0     localhost

Есть ли способ исправить эту проблему или проще всего будет просто стереть все и начать заново?

решение1

Большинство брандмауэров сейчас блокируют ping-запросы, в моей установке OSX Lion такое поведение было по умолчанию.

Попробуйте перейти наhttp://localhost:80если вы можете подключиться к порту 80, и посмотрите, что работает на этом порту. Также посмотрите на настройки общего доступа — раньше была функция общего доступа к веб-сайту, и она могла использовать порт 80.

Также попробуйте подключиться через Telnet к localhost:8080 и проверьте, сможете ли вы подключиться (если сможете, значит, этот порт использует другое приложение).

Попробуйте открытьhttp://localhost:8080затем в своем браузере попытайтесь выяснить, какая программа работает на этом порту.

решение2

В некоторых случаях это вызвано проблемами кодировки текста; /etc/hosts выглядит нормально, но на самом деле имеет неправильную кодировку. СмотритеMac OS X Mountain Lion не может ping/telnet localhost. Укажите неправильный публичный IP

Связанный контент