Come configurare Yosemite per poter risolvere il DNS che termina con ".local"?

7

Yosemite non sembra comprendere alcun dominio che finisca in .local

Il mio server DNS è puntato sull'ip della casella debian, che esegue dnsmasq.

Ha un sacco di siti Apache configurati che hanno nomi come clientname.debserver.local - tutti che risolvono bene dalle altre macchine attorno alla lan (non da Yosemite).

(provato a svuotare la cache, resettare la rete, riavviare, tutti i soliti sospetti)

    
posta frumbert 11.11.2014 - 02:58
fonte

4 risposte

10

Apple ha fornito qui una documentazione correlata . In cui ti consigliamo di evitare .local se puoi e invece di utilizzare un suffisso come .private , .intranet , .internal o .lan .

La ragione per cui .local dovrebbe essere evitata è perché è usata dal servizio Bonjour.

Risposta breve

Aggiungi il seguente dominio di ricerca come nello screenshot (puoi ignorare le mie impostazioni del server DNS):

Rispostalunga

Un'altrapossibilitàèdocumentataquiinunarticolosu utilizzando Dnsmasq per lo sviluppo locale su OS X e un < a href="https://stackoverflow.com/questions/26840768/yosemite-localhost-resolver-and-dnsmasq-fails-offline"> domanda relativa a StackOverflow in cui qualcuno sembra aver avuto successo salvo quando il loro offline (che non fa molto da quando .. ma il punto chiave qui è che sembra funzionare almeno per parte del tempo)

L'articolo collegato indica che dovresti creare una directory su /etc/resolver se non esiste già utilizzando il comando

sudo mkdir -p /etc/resolver

Now you should create a new file in this directory for each resolver you want to configure. Configure with at least these two options (there are more options available):

  • the name of the resolver (corresponding to the domain name)
  • the DNS server to be used.

For more information about these files, see the resolver(5) manual page:

man 5 resolver

Create a new file with the same name as your new top-level domain in the /etc/resolver/ directory and add a nameserver to it by running the following commands:

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

Here local is the top-level domain name configured to respond to and 127.0.0.1 is the IP address of the server to use.

Ho cercato di vedere se avevo quella directory di default e non l'ho fatto, ma ho notato che avevo un file /etc/resolv.conf che esisteva per impostazione predefinita. Non ho tentato, ma se la soluzione nell'articolo non ha successo, proverei a usare questo file resolv.conf preesistente .. sotto l'ipotesi .. deve esserci per un motivo .

    
risposta data 11.11.2014 - 06:46
fonte
1

Apple non risolve .local utilizzando un server DNS, ma Apple Bonjour la sua zeroconf impementation. Puoi installare Avahi dell'implementazione Linux e BSD.

Uso netatalk sulle mie macchine Linux per comunicare con OS X

    
risposta data 11.11.2014 - 05:19
fonte
1

Vedi link per un modo per automatizzare sudo discoveryutil mdnsactivedirectory yes che forza la risoluzione DNS dei domini .local su Yosemite.

    
risposta data 13.06.2015 - 02:20
fonte
0

Se hai solo un Mac e gli indirizzi IP non cambiano, puoi ignorare l'intero problema e inserire il nome / indirizzo in / etc / hosts. La gente dimentica, c'è stato un tempo prima del DNS in cui abbiamo tenuto sincronizzati i file host eseguendoli in giro.

    
risposta data 23.05.2015 - 00:43
fonte

Leggi altre domande sui tag