7 votos

¿Cómo configuro Yosemite para poder resolver los DNS que terminan en ".local"?

Yosemite no parece entender ningún dominio que termine en .local

Mi servidor DNS apunta a la ip de la caja debian, que ejecuta dnsmasq.

Tiene una tonelada de sitios apache configurados que todos tienen nombres como nombredelcliente.debserver.local - todos los cuales se resuelven bien desde las otras máquinas alrededor de la lan (no Yosemite).

(he probado a vaciar la caché, a reiniciar la red, a reiniciar, a todos los sospechosos habituales)

11voto

davidcondrey Puntos 450

Apple ha proporcionado alguna documentación relacionada aquí . En el que recomiendan evitar .local si puede y en su lugar utilizar un sufijo como .private , .intranet , .internal o .lan .

La razón .local debe evitarse es porque es utilizado por el servicio Bonjour.


Respuesta corta

Añada el siguiente dominio de búsqueda como en la captura de pantalla (puede ignorar la configuración de mi servidor DNS):

enter image description here


Respuesta larga

Otra posibilidad se documenta aquí en un artículo sobre utilizando Dnsmasq para el desarrollo local en OS X y un pregunta relacionada con StackOverflow en el que alguien parece haber encontrado el éxito, excepto cuando su fuera de línea (que no hace un montón de desde .. pero el punto clave aquí es, que parece funcionar para ellos al menos parte del tiempo)

El artículo enlazado indica que se debe crear un directorio en /etc/resolver si no existe ya, utilizando el comando

sudo mkdir -p /etc/resolver

Ahora debe crear un nuevo archivo en este directorio para cada resolución que desee configurar. Configure con al menos estas dos opciones (hay más opciones disponibles):

  • el nombre del resolvedor (correspondiente al nombre de dominio)
  • el servidor DNS que se va a utilizar.

Para más información sobre estos archivos, consulte el resolver(5) página del manual:

man 5 resolver

Cree un nuevo archivo con el mismo nombre que su nuevo dominio de nivel superior en el /etc/resolver/ y añada un servidor de nombres ejecutando los siguientes comandos:

sudo tee /etc/resolver/local >/dev/null <<EOF nameserver 127.0.0.1 EOF

Aquí local es el nombre de dominio de primer nivel configurado para responder y 127.0.0.1 es la dirección IP del servidor a utilizar.

He mirado si tenía ese directorio por defecto y no lo tenía, pero sí me he dado cuenta de que tenía un archivo /etc/resolv.conf que existía por defecto. No lo he intentado, pero si la solución del artículo no tiene éxito probaría a utilizar este resolv.conf archivo .. bajo la suposición .. debe estar ahí por una razón .

1voto

Milliways Puntos 1548

Apple no resuelve .local utilizando un servidor DNS, pero Apple Bonjour su zeroconf impementación. Puede instalar Avahi la implementación de Linux y BSD.

Yo uso netatalk en mis cajas de Linux para comunicarme con OS X

1voto

wnoise Puntos 121

Ver https://apple.stackexchange.com/a/152892/65787 para una forma de automatizar sudo discoveryutil mdnsactivedirectory yes que fuerza la resolución DNS de los dominios .local en Yosemite.

0voto

hap497 Puntos 17934

Si sólo tienes un Mac y las direcciones ip no cambian, puedes obviar todo el problema y poner el nombre/dirección en /etc/hosts. La gente se olvida, hubo un tiempo antes de DNS donde mantuvimos los archivos de hosts sincronizados por uucp'ing alrededor.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X