Wie konfiguriere ich meine DNS-Einstellungen auf dem Ubuntu-Server?

115

Nach dieser Seite scheint es einfach zu sein. Allerdings /etc/bindexistiert nicht auf der Standard - Installation von Ubuntu 12.04.3 LTS Server.

Wie kann DNS ohne Installation weiterer Software konfiguriert und dnsmasq auf dem Ubuntu-Server entfernt werden? Ich bin ziemlich vertraut mit sudo& nano.

Asta-Risky
quelle
Werfen Sie auch einen Blick auf help.ubuntu.com/community/Dnsmasq . Bind ist ein Nameserver. Wenn Sie Nameserver-Funktionalität auf Ihrem Server benötigen, müssen Sie einen Nameserver installieren. Es wäre hilfreich, wenn Sie beschreiben könnten, was Sie erreichen möchten.
Hmayag
1
Sie haben ein Handbuch zum Konfigurieren eines DNS-Servers gelesen und nicht, wie die DNS-Einträge auf dem Server konfiguriert werden. Das Handbuch, das Sie gelesen haben sollten, ist dies
Braiam
Ich kann keinen Kommentar zu einer anderen Antwort abgeben, aber als Antwort auf die Antwort von Nullet am 17. September 2013 hat dies für mich funktioniert. Ich dachte, es gäbe ein Problem mit meinem Router (ein billiger, vom ISP bereitgestellter). Ich halte es auch für erwähnenswert, dass Sie in der DNS -Nameserver-Zeile die IP des öffentlichen DNS verwenden sollten. Verwenden Sie nicht die lokale Adresse des DNS, die sich höchstwahrscheinlich auf Ihrem Router befindet. Ich habe auf meinem Router eine Verbindung zum DNS hergestellt, was aus unbekannten Gründen auf meinem Server nicht funktioniert hat. Stattdessen fand ich heraus, woher der DNS meines Routers seine Informationen
bezieht
1
Ich denke, es gibt eine bessere Antwort hier unix.stackexchange.com/a/154538/82018 - im Grunde können Sie Ihre DHCP-Einstellungen überschreiben, um einen Server vor den aktuell von Ihnen verwendeten "voranstellen". Das ist schön, da Sie sich nicht nur auf den neuen Server verlassen müssen, sondern diesen lediglich für Suchvorgänge vorziehen.
Steve Midgley

Antworten:

158

Stellen Sie die DNS-Server ein

Sie müssen die /etc/network/interfacesDatei konfigurieren , wenn Sie Ihren DNS-Server über die Befehlszeile ändern möchten.

Es sollte ungefähr so ​​aussehen:

# The loopback network interface  
auto lo  
iface lo inet loopback  


# The primary network interface  
auto eth0 
iface eth0 inet static  
address 192.168.X.X
netmask 255.255.255.0
gateway 192.168.X.X
dns-nameservers X.X.X.X 

Wenn Sie mehr als einen DNS-Server haben, fügen Sie zwischen jedem einfach ein Leerzeichen ein:

dns-nameservers X.X.X.X Y.Y.Y.Y Z.Z.Z.Z

Ersetzen Sie einfach die Xs, Ys und Zs durch Ihre eigenen IPs der DNS-Server Ihrer Wahl, und führen Sie anschließend den folgenden Befehl aus, um die Einstellungen zu aktualisieren:

sudo ifdown eth0 && sudo ifup eth0

Hoffe das hilft!

Nullet
quelle
1
Ja, wenn ich mich richtig erinnere, ist dnsmasq nicht standardmäßig auf dem Ubuntu-Server installiert.
Nullet
4
@Nullet-Lösung ausprobiert, aber dieser Fehler ist aufgetreten. longtth@long-ubuntu-14:~$ sudo ifdown eth0 && sudo ifup eth0 interface eth0 not configured RTNETLINK answers: File exists Failed to bring up eth0.Können Sie mir helfen, ihn zu beheben?
Luke
2
Ist hier meine Situation: Ich öffnete die Akte, die in dieser Antwort angezeigt wurde und ich hatte nur die ersten 3 Zeilen in ihr. Ich habe den Rest eingefügt. Ich habe den Befehl ausgeführt und Folgendes erhalten: ifdown: interface eth0 nicht konfiguriert. RTNETLINK antwortet: Datei existiert. Fehler beim Aufrufen von eth0. Damit ist die Ausgabe abgeschlossen, die ich erhalten habe. Wenn jemand irgendwelche Gedanken hat, die ihm in den Sinn kommen, kann er gerne antworten. Ich würde gerne wissen: Womit soll ich generell die X in Adresse und Gateway ersetzen?
GoProCameraByGoPro
2
@ Mr.Hyde Du solltest diese Zeilen nicht am Terminal eingeben, du musst sie in die /etc/network/interfacesDatei schreiben .
Richard
1
Stellen Sie sicher, dass Sie tatsächlich eth0 und nicht etwas anderes wie eth1 verwenden. ifconfig.
Briankip
9

Wenn Sie jedoch eine neuere Ubuntu-Version verwenden, verwenden Sie möglicherweise resolv.conf

Um DNS-Nameserver festzulegen, die nach dem Neustart nicht entfernt werden, fügen Sie diese hinzu

sudo nano /etc/resolvconf/resolv.conf.d/base 

mögen

nameserver x.x.x.x
nameserver x.x.y.y

Und danach einfach

sudo resolvconf -u
Aleksandar Pavić
quelle
Dieser Pfad existiert nicht auf meinem System. Ich habe nur /etc/resolvconf/update-libc.d/avahi-daemondie Schleife für ein anderes Bash-Skript, die /usr/lib/avahi/avahi-daemon-check-dns.shich möchte, um die Standardeinstellung zu erhalten 192.168.1.1 DNS Servers:
Salem F
@SalemF einfach loslegen und die fehlende Datei erstellen ...
Aleksandar Pavić
1
Es sieht so aus, als würde Ubuntu die DNS- DHCPEinstellungen auf andere Weise handhaben. Ich konnte sie nur über die grafische Benutzeroberfläche (nm) ändern , nachdem ich die Einstellung auf address onlyund die DNS-
Salem F