Wie füge ich einige zusätzliche DNS-Suchdomänen hinzu, ohne die DHCP-Domänen zu ignorieren?


12

Ich möchte nur meine eigene Liste von Suchdomänen hinzufügen, ohne jedoch die vom DHCP zurückgegebenen zu überschreiben.

Wie sich jeder vorstellen kann, habe ich bereits versucht, sie zu Netzwerk> Erweitert> DNS hinzuzufügen, aber wenn ich sie dort hinzufüge, werden die von DHCP überschrieben, was nicht meine Absicht ist.

Es wäre perfekt, wenn ich sie nach denen von DHCP hinzufügen könnte, aber ich würde auch eine Lösung akzeptieren, die sie nachher hinzufügt.

Der zweite Versuch wäre, /etc/resolv.confaber die Nachricht aus der Datei ist so klar wie möglich:

# 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.
#
# This file is automatically generated.

Persönlich würde ich den Mann, der diese Nachricht geschrieben hat, schicken, um zwei Monate lang telefonischen Support zu leisten. Also würde er lernen, beim nächsten Dokumentieren einige Hinweise hinzuzufügen: Wo sollen Sie die Einstellungen anpassen? oder fügen Sie einen Link zu einem Knowledge Base-Artikel hinzu.

Trotzdem möchte ich nichts, was bei einem kleineren OS X-Update verloren geht.

Wie kann ich das für OS X 10.7 tun?


1
Sie könnten ein bisschen mehr erklären, was Sie versucht haben und warum das Eingeben von Suchdomänen an der normalen Stelle nicht das ist, was Sie wollen. Insbesondere - möchten Sie, dass Ihre Suchdomänen vor den DHCP-Domänen oder nach den bereitgestellten durchsucht werden?
bmike

Antworten:


1

Versuchen Sie vielleicht, sie hinzuzufügen / anzuhängen /etc/resolv.conf? Sie können sie nicht manuell am Ende der Liste hinzufügen und in Lion durch ein Komma abgrenzen. Es scheint in 10.6 zu funktionieren, es fügt es zusätzlich zu den von DHCP bereitgestellten hinzu, und die gesamte Menge von ihnen wird sofort in resolv.conf angezeigt.

Vielleicht funktioniert dies für Ihre Zwecke nicht, aber warum nicht einfach die mitgelieferten DHCP-Dateien und die, die Sie hinzufügen möchten, manuell hinzufügen und in den Systemeinstellungen speichern? Dann müssen Sie sich keine Gedanken mehr über das Überschreiben machen, da Sie diese manuell hinzufügen. Ich nehme nicht an, dass Ihre Domain den Namen sehr häufig ändern wird.

Ich kann Ihnen sagen, dass ab Snow Leopard mDNSResponder (Bonjour) das gesamte DNS (nicht nur Multicast-DNS) verwaltet.


resolve.confDie Verwendung ist veraltet und wird in der Datei dokumentiert.
Sorin

Dies funktioniert nicht und sollte nicht die akzeptierte Antwort sein. @ Yoberts Antwort funktioniert großartig und macht genau das , was der Fragesteller wollte.
JakeRobb

3

Sie können den networksetupBefehl verwenden und die zusätzlichen Suchdomänen in einem Array in der Befehlszeile hinzufügen: Auf der Manpage:

-setsearchdomains networkservice domain1 [domain2] [...]

Use this command to designate the search domain for the specified
<networkservice>. You can list any number of search domains
(replace domain1, domain2, and so on with the name of a local
domain). If you want to clear all search domain entries for the
specified network service, type aemptya in place of the domain

Damit:

sudo networksetup -setsearchdomains Wi-Fi legacydomain.com secondlegacydomain.com additionaldomain.org evenmoresearchdomain.net

Dieser Aufruf sollte die richtige Reihenfolge haben.


3
Obwohl ich den Befehlszeilenansatz liebe, muss ich sagen, dass das Ausführen dieses Befehls die vom DHCP-Server empfangenen DNS-Domänen überschreibt und daher keine geeignete Lösung darstellt. Ich möchte sie weiterhin verwenden können, nur um meine oben in der Liste hinzuzufügen. Benötigen Sie eine automatisierte Lösung.
Sorin

3

Legen Sie einfach eine Datei in / etc / resolver / mit einem Namen wie "searchappend" mit folgenden Inhalten ab:

search example.com

Nennen Sie die Datei einfach nicht "com" oder eine andere gültige TLD. Dies funktioniert aufgrund der Resolver-Magie von OSX. Weitere Informationen finden Sie unter https://developer.apple.com/legacy/library/documentation/Darwin/Reference/ManPages/man5/resolver.5.html

Ich habe dort eine Datei namens "consul", die so aussieht:

nameserver 127.0.0.1
port 8600
search consul

Das macht es auf magische Weise so, dass .consul an den Suchpfad angehängt wird und jede Auflösung für .consul-TLDs meinen lokalen Nameserver verwendet.


Links defekt, kann keinen Ersatz finden.
Slm

Ich bin damit einverstanden, dass die Links defekt sind, aber das hat bei mir am 10.13.6 funktioniert. Ich musste zuerst / etc / resolver erstellen. Die von mir erstellte Datei enthielt nur search mydomain.com. Die zusätzliche Suchdomäne wird auf alle Netzwerkadapter angewendet und an die vorhandenen DHCP-Suchdomänen angehängt.
JakeRobb

Das funktioniert bei mir in Mojave nicht mehr. :(
JakeRobb

Möglicherweise können Sie dies man 5 resolverauf Ihrem Mac tun ? Der Link führte zu einer Webversion derselben Manpage.
Yobert

1

Fügen Sie sie zu Systemeinstellungen> Netzwerk> Erweitert> | hinzu DNS |

(Gibt es einen bestimmten Grund dafür, dass dies abgelehnt wurde? Es macht genau das, was der Anforderer verlangt, und erfordert nicht die Verwendung eines Terminals.)


2
Weil er schrieb, dass er die DHCP-DNS-Einträge nicht überschreiben wollte. Außerdem müssten Sie sie jeder Schnittstelle hinzufügen.
Joelpittet

0

Angenommen, Ihr Router stellt seine DNS-Server bereit, fügen Sie seine IP-Adresse (die Ihres Routers) zu Ihrer DNS-Serverliste hinzu . Fügen Sie darunter Ihre eigenen DNS-Server hinzu.

Ihr Computer fragt zuerst Ihren Router ab und durchläuft dann die manuell definierten.

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.