nslookup funciona con /etc/resolv.conf, ping y ssh no

10

En nuestra red de universidades locales, tengo (obtenido por DHCP) la siguiente configuración en /etc/resolv.conf:

search a.domain.com b.domain.com domain.com
nameserver x.x.x.x
nameserver y.y.y.y

Las configuraciones son las mismas en las Preferencias del sistema también. Ocurre el siguiente problema:

nslookup server

funciona, y está utilizando uno de los servidores de nombres para solicitar correctamente server.a.domain.com. Si intento hacer ping sin embargo,

ping server

falla con el host inalcanzable.

ping server.a.domain.com

trabajos. Agregar manualmente el servidor con la dirección ip obtenida por nslookup a / etc / hosts también hace que el ping funcione, pero esta "solución" elude los servidores de nombres y, por lo tanto, no es ideal (y también tendría que agregar otras 20 entradas). ¿Alguna idea que está causando esto? ¿Por qué ping no usa los resultados de nslookup / the searchdomains?

ssh server

También falla, que es el verdadero problema / inconveniente.

Ya agregué AlwaysUseSearchDomains a mDNSResponder, pero esta solución solo ayuda al problema cuando uso server.foo.

Estoy usando OS X Lion 10.7.3.

tholu
fuente
Los paquetes de ping pueden ser bloqueados por equipos de red. Lo mismo con los paquetes ssh: es posible que no quieran que hagas lo que haces.
Thorbjørn Ravn Andersen
Ver solución a continuación, ese no era el problema.
tholu
"Host inalcanzable" significa un problema de conectividad de red (o ICMP bloqueado), no un problema de resolución de DNS
Daniel Serodio

Respuestas:

2

Bueno, ¿has leído los comentarios en la parte superior de /etc/resolv.conf?

# Mac OS X Notice
#
# This file is not used by the host name and address resolution
# or the DNS query routing mechanisms used by most processes on
# this Mac OS X system.

La solución correcta es agregar los dominios de búsqueda a través del panel de Red en las Preferencias del Sistema como se describe aquí .

Old Pro
fuente
Yo si. Los dominios de búsqueda se ingresan automáticamente en el panel de Red en las Preferencias del Sistema según la configuración de DHCP (y, por lo tanto, están en gris y no se pueden cambiar) Los mismos valores / configuración son / se encuentran en /etc/resolv.conf.
tholu
No sé qué decirte, entonces. Obtengo mi configuración de Ethernet y WiFi a través de DHCP y puedo cambiar mis dominios de búsqueda a través del panel de Preferencias del sistema.
Old Pro
Los dominios de búsqueda son correctos en Preferencias del sistema y /etc/resolv.conf; el problema es que ping y ssh no lo están utilizando. Si usaran la salida de nslookup, todo funcionaría bien, pero de alguna manera, no lo hacen. Ellos buscan / etc / hosts, sin embargo.
tholu
Agregué manualmente los dominios de búsqueda (aunque estaban en gris) uno por uno a través de las Preferencias del Sistema y ahora funciona. ¡Gracias!
tholu
4

Yo tuve el mismo problema. La solución que utilicé fue crear un directorio / etc / resolver. Dentro de ese directorio, cree un archivo con el nombre de cada dominio que desee resolver. Dentro de cada archivo debe haber dos líneas

nameserver 10.0.100.2
domain  home.cainmanor.com

El archivo de arriba se llamaría / etc / resolver / home. Es posible que deba llamarse home.cainmanor.com, pero no puedo probarlo ahora.

¡Buena suerte!

Greg Cain
fuente
Lo hice funcionar estableciendo los dominios de búsqueda a través de las Preferencias del Sistema uno por uno, anulando la configuración DHCP que OS X no pudo analizar correctamente, obviamente. No pude probar tu solución, pero gracias!
tholu
Este enfoque funciona bien cuando su cliente VPN corporativo hace algo incorrecto con respecto a las preferencias transitorias del sistema.
Peter
1

Creo que el problema reside en la configuración de searchdomains: ping / ssh están tratando de usar gethostbyname2() que falla porque llamado Ya no se está ejecutando (al menos en León) y /etc/resolv.conf con los dominios de búsqueda configurados se ignora. /etc/hosts es el último recurso para gethostbyname2() y así ssh trabaja de nuevo con entradas apropiadas en /etc/hosts. Debe ser arreglado por Apple imho.

La adición manual de los dominios de búsqueda uno por uno lo solucionó, vea la solución anterior.

tholu
fuente
Cuando agrego un dominio de búsqueda a mi conexión WiFi (que se configura a través de DNS) en OS 10.7.3 a través de Preferencias del sistema - & gt; Panel de red, es utilizado por ping y ssh tal como lo esperaría. No toco /etc/resolv.conf o / etc / hosts manualmente / directamente, pero los cambios de las Preferencias del Sistema se reflejan en /etc/resolv.conf automáticamente. OS X hace muchas cosas de manera diferente a otros sistemas Unix y esta es una de ellas.
Old Pro
1
Gracias, esto funcionó al agregar los dominios de búsqueda manualmente uno por uno, vea mi comentario sobre la solución sugerida más arriba.
tholu
Agregar dominios de búsqueda no solucionó los problemas ... ¿Alguien más tiene otra solución?
¿Cómo los agregaste?
tholu
1

Recibo este problema de vez en cuando, cuando mi Mac Book Pro (OS X versión 10.10.1) ha estado dormida. Despiértalo & amp; No puedo ssh usando el nombre de host de las máquinas en mi red (y el ping tampoco funciona). nslookup funciona bien. No se pueden ver los mensajes relevantes en / var / log. Solo déjalo unos minutos y amp; Hey presto funciona de nuevo .....

Ian Ellis
fuente