No se puede resolver localhost en Mac OS X Server

9

Tengo un servidor que ejecuta OS X Server 10.5 y no puede resolver localhost a 127.0.0.1.

Cuando intento hacer ping, esto es lo que sucede:

> ping localhost
ping: no se puede resolver localhost: host desconocido

SSH y los navegadores web obtienen resultados similares (host desconocido). Si intento usar 127.0.0.1 o la dirección IP asignada en la LAN, todo el trabajo anterior funciona.

Aquí está el contenido de mi archivo / etc / hosts:

> cat / etc / hosts
##
# Base de datos del host
# #
# localhost se usa para configurar la interfaz de bucle invertido
# cuando el sistema se está iniciando. No cambie esta entrada.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
:: 1 localhost 
fe80 :: 1% lo0 localhost

No tengo ningún servicio de DNS local en ejecución.

¿Alguien tiene alguna idea de por qué esto podría estar sucediendo o cómo puedo solucionarlo?

iainbeeston
fuente
1
Cambie el nombre de / etc / hosts a /etc/hosts.justworks
ta.speot.is
¿Cuáles son sus configuraciones de DNS en su servidor? ¿Estás ejecutando un servicio DNS?
Shaggy Frog

Respuestas:

6

Tuve este mismo problema con Mountain Lion (10.8.2). Lo resolví desactivando el "Modo invisible" en Seguridad y privacidad -> Firewall -> Opciones de firewall.

Kevin
fuente
También se solucionó el problema con El Capitán 10.11
sospechoso
3

Probablemente esto no esté relacionado con su pregunta original, pero hay otro problema que puede afectar las búsquedas de DNS en Mac OS X Lion, específicamente localhosto cualquier otra entrada que pueda tener /etc/hosts.

Aparentemente, el /etc/hostsarchivo ya no admite múltiples dominios por línea en el archivo, por lo que cada registro necesita su propia línea:

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

Encontré esto a través del blog de Justin Carmony . Continúa describiendo algún otro comportamiento "interesante" si está usando /etc/hosts, así que lea si todavía tiene problemas.

pix0r
fuente
1

Sé que es un poco tarde, pero en mi caso, cambiar las terminaciones de línea a UNIX, reemplazar las pestañas con espacios y guardar el archivo como UTF-8 lo hizo funcionar en Mountain Lion (10.8.2)

Espero que esto funcione para alguien más.

victmo
fuente
1

La codificación puede ser un problema, edité / etc / hosts usando Sublime Text que me mete en el problema reeditarlo usando vi solucionó el problema. asegúrese de que los catresultados salgan.

Issam Zoli
fuente
esto me paso a mi! gracias me estaba volviendo loco
Asgaroth 03 de
1

En mi computadora (los mismos síntomas) mi /etc/hostsarchivo había sido modificado para usar las terminaciones de línea de Macintosh (CR- 0x13) en lugar de las terminaciones de línea de Unix (LF- 0x10). El archivo fue de otra manera correcto.

Mi solución fue:

brew install dos2unix
sudo dos2unix -c mac /etc/hosts
Phrogz
fuente
0

Tengo el mismo problema. Acabo de configurar una nueva computadora portátil Mac y estaba funcionando hasta que migré de la anterior. Ahora ping localhost no se puede resolver. Debe haber alguna configuración que haya cambiado en alguna parte, pero no sé dónde ...

He descubierto que "ping localhost". trabajos. Agregar un punto final está destinado a omitir la búsqueda del nombre "localhost" en otros dominios de búsqueda. Eso es genial, pero todavía no entiendo por qué la entrada / etc / hosts no funciona ...

editar: resuelto.

bash-3.2# dscl . read /Hosts/localhost    
AppleMetaNodeLocation: /Local/Default
RecordName: localhost
RecordType: dsRecTypeStandard:Hosts
bash-3.2# ping localhost
ping: cannot resolve localhost: Unknown host
bash-3.2# dscl . append /Hosts/localhost IPAddress 127.0.0.1
bash-3.2# dscl . read /Hosts/localhost
AppleMetaNodeLocation: /Local/Default
IPAddress: 127.0.0.1
RecordName: localhost
RecordType: dsRecTypeStandard:Hosts
bash-3.2# ping localhost
PING localhost (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.083 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.140 ms

voila!

De alguna manera, el registro de servicios de directorio no estaba sincronizado con el archivo / etc / hosts. Y cuando no hay una dirección IP en la configuración de los servicios de directorio, el intento de resolver el nombre se dirige a mDNSResponder, que solicita DNS.

Matt Connolly
fuente
0

Al final, comenzó a funcionar nuevamente. Encontré una configuración DNS poco ortodoxa (e innecesaria) en el servidor y cambié eso a lo que debería haber sido, ¿y tal vez eso resolvió el problema? Sin embargo, no puedo estar seguro porque no estaba tratando de resolver el problema localhost en ese momento y, por lo tanto, no probé localhost antes y después.

iainbeeston
fuente
0

Edité mi / etc / hosts con Sublime Text y tuve el mismo problema, trato de editar y guardar su archivo / etc / hosts con vi o nano, eso me lo arregló ...

Helmut
fuente
0

Asegúrese de leer el registro de errores de Apache, ya que no todos los errores se lanzan en la consola al iniciar el servicio. Puede haber problemas, incluso si la sintaxis está bien.

Por defecto, deben almacenarse en / var / log / apache2 / y el archivo de registro es error.log.

Tuve exactamente el mismo problema, que el host podría resolverse y Apache no detectó ningún problema en la consola. El simple "problema" fue que el error.log definió mi configuración de vhost no se pudo crear después de cambiar una unidad externa.

Markus Zeller
fuente
-1

Elimine su archivo de hosts y vea qué sucede entonces. También reinicie sin conectarse a ninguna red.

Josh K
fuente
Estoy cansado de eliminar / etc / hosts porque es exactamente lo mismo que los archivos / etc / hosts en mis otros equipos Mac (y esos pueden resolver localhost). Además, este es nuestro servidor de producción ... He intentado reiniciar sin conectarme a ninguna red, pero aún así no pudo resolver localhost.
iainbeeston
En una Mac diferente (que no tiene este problema) acabo de intentar cambiar el nombre de / etc / hosts a otra cosa y reiniciar. No hizo ninguna diferencia visible, pero os x no reemplazó / etc / hosts con una nueva copia. De nuevo, estoy cansado de eliminar el archivo a menos que el sistema operativo lo vaya a regenerar.
iainbeeston
Si se trata de un servidor de producción, debería tener copias de seguridad recientes. Restaurar desde una copia de seguridad.
Josh K
Me temo que no es un problema reciente, ha sido así durante más de un año (durante el tiempo que he estado en el trabajo). Por lo tanto, restaurar desde una copia de seguridad sería difícil. En cualquier caso, esperaba encontrar la causa del problema, ¡no solo destruir todo con la esperanza de que vuelva a funcionar!
iainbeeston
No está "arruinando" todo, es un procedimiento estándar, especialmente con servidores. Si observa un problema y no puede encontrar la fuente, el método más fácil y más utilizado para resolver el problema sería restaurar desde una copia de seguridad. Lo primero que habría hecho en el trabajo habría sido arreglarlo. Dejar que los problemas se agraven no los hace desaparecer.
Josh K