Wie konfiguriere ich Yosemite so, dass DNS mit der Endung ".local" aufgelöst werden kann?


7

Yosemite scheint keine Domain zu verstehen, die auf .local endet

Mein DNS-Server zeigt auf die IP der Debian-Box, auf der dnsmasq ausgeführt wird.

Es sind eine Menge Apache-Sites konfiguriert, die alle Namen wie clientname.debserver.local haben - alle, die von den anderen Computern rund um das LAN (nicht Yosemite) einwandfrei aufgelöst werden.

(versucht, den Cache zu leeren, das Netzwerk zurückzusetzen, neu zu starten, alle üblichen Verdächtigen)

Antworten:


10

Apple hat hier einige zugehörige Dokumentationen bereitgestellt . In dem Vermeiden sie empfehlen , .localwenn Sie können und stattdessen ein Suffix wie die Verwendung von .private, .intranet, .internaloder .lan.

Der Grund .localsollte vermieden werden, weil es vom Bonjour-Dienst verwendet wird.


Kurze Antwort

Fügen Sie die folgende Suchdomäne wie im Screenshot hinzu (Sie können meine DNS-Servereinstellungen ignorieren):

Geben Sie hier die Bildbeschreibung ein


Lange Antwort

Eine andere Möglichkeit ist hier in einem Artikel über die Verwendung von Dnsmasq für die lokale Entwicklung unter OS X und einer verwandten StackOverflow-Frage dokumentiert, in der jemand es erfolgreich gefunden zu haben scheint, außer wenn er offline ist (was seitdem nicht viel ausmacht ... aber der Schlüssel Punkt hier ist, es scheint zumindest zeitweise für sie zu funktionieren)

Der verknüpfte Artikel weist Sie an, ein Verzeichnis zu erstellen, in dem /etc/resolveres mithilfe des Befehls noch nicht vorhanden ist

sudo mkdir -p /etc/resolver

Jetzt sollten Sie in diesem Verzeichnis für jeden Resolver, den Sie konfigurieren möchten, eine neue Datei erstellen. Konfigurieren Sie mit mindestens diesen beiden Optionen (es stehen weitere Optionen zur Verfügung):

  • der Name des Resolvers (entsprechend dem Domainnamen)
  • der zu verwendende DNS-Server.

Weitere Informationen zu diesen Dateien finden Sie auf der resolver(5)Handbuchseite:

man 5 resolver

Erstellen Sie eine neue Datei mit demselben Namen wie Ihre neue Top-Level-Domain im /etc/resolver/Verzeichnis und fügen Sie einen Nameserver hinzu, indem Sie die folgenden Befehle ausführen:

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

Hier localist der Domänenname der obersten Ebene, der für die Antwort konfiguriert ist, und 127.0.0.1die IP-Adresse des zu verwendenden Servers.

Ich habe nachgesehen, ob ich dieses Verzeichnis standardmäßig hatte und nicht, aber ich habe bemerkt, dass ich eine Datei hatte, /etc/resolv.confdie standardmäßig vorhanden war. Ich habe es nicht versucht, aber wenn die Lösung im Artikel nicht erfolgreich ist, würde ich versuchen, diese bereits vorhandene resolv.confDatei zu verwenden. Unter der Annahme , dass sie aus einem bestimmten Grund vorhanden sein muss .


1

Apple löst nicht .localmit einem DNS-Server, aber Apple Bonjour seine zeroconfImplementierung. Sie können Avahidie Linux- und BSD-Implementierung installieren .

Ich verwende netatalkauf meinen Linux-Boxen die Kommunikation mit OS X.



0

Wenn Sie nur einen Mac haben und sich die IP-Adressen nicht ändern, können Sie das gesamte Problem umgehen und den Namen / die Adresse in / etc / hosts eingeben. Die Leute vergessen, es gab eine Zeit vor DNS, in der wir die Hosts-Dateien synchronisiert haben, indem wir sie herumgeschleudert haben.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.