¿Cómo configuro Yosemite para poder resolver el DNS que termina en “.local”?

7

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

Mi servidor DNS está apuntado a la ip del cuadro debian, que ejecuta dnsmasq.

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

(intentó vaciar el caché, reiniciar la red, reiniciar, todos los sospechosos habituales)

    
pregunta frumbert 11.11.2014 - 02:58

4 respuestas

10

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

El motivo .local se debe evitar porque el servicio Bonjour lo utiliza.

Respuesta corta

Agregue el siguiente dominio de búsqueda como se muestra en la captura de pantalla (puede ignorar la configuración de mi servidor DNS):

Respuestalarga

Otraposibilidadsedocumentaaquíenunartículosobre utilizando Dnsmasq para el desarrollo local en OS X y un < a href="https://stackoverflow.com/questions/26840768/yosemite-localhost-resolver-and-dnsmasq-fails-offline"> relacionado con StackOverflow en cuestión en el que alguien parece haberlo encontrado exitosamente, excepto cuando fuera de línea (lo que no hace mucho desde ... pero el punto clave aquí es que parece funcionar para ellos al menos parte del tiempo)

El artículo vinculado indica que debe crear un directorio en /etc/resolver si aún no existe mediante 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 resolutor (correspondiente al nombre de dominio)
  •   
  • el servidor DNS que se utilizará.
  •   

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

     

man 5 resolver

     

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

     

sudo tee /etc/resolver/local >/dev/null <<EOF      %código%       nameserver 127.0.0.1

     

Aquí EOF es el nombre de dominio de nivel superior configurado para responder y local es la dirección IP del servidor que se debe usar.

Busqué para ver si tenía ese directorio por defecto y no, pero noté que tenía un archivo 127.0.0.1 que existía por defecto. No lo he intentado, pero si la solución en el artículo no tiene éxito, intentaría usar este archivo /etc/resolv.conf preexistente ... bajo el supuesto ... debe estar allí por una razón .

    
respondido por el davidcondrey 11.11.2014 - 06:46
1

Apple no resuelve .local usando un servidor DNS, pero Apple Bonjour su zeroconf de empeoramiento. Podría instalar Avahi la implementación de Linux y BSD.

Uso netatalk en mis cajas de Linux para comunicarme con OS X

    
respondido por el Milliways 11.11.2014 - 05:19
1

Consulte enlace para obtener una manera de automatizar sudo discoveryutil mdnsactivedirectory yes que fuerza la resolución de DNS de los dominios .local en Yosemite.

    
respondido por el Stan Kurdziel 13.06.2015 - 02:20
0

Si solo tiene una Mac y las direcciones IP no cambian, puede evitar todo el problema y poner el nombre / dirección en / etc / hosts. La gente olvida, hubo un tiempo antes del DNS en el que mantuvimos sincronizados los archivos de los hosts mediante el uso de ellos.

    
respondido por el phil 23.05.2015 - 00:43

Lea otras preguntas en las etiquetas