Ich vermute, dass der von meinem ADSL-Modem / Router bereitgestellte Nameserver fehlerhaft ist. Wann immer ich zum ersten Mal in Ubuntu auf eine Website gehe, dauert das Auflösen des Domainnamens mindestens 15 Sekunden.
Um dieses Problem /etc/resolv.conf
zu umgehen , habe ich die Nameserverkonfiguration in 192.168.1.1 (mein ADSL-Modem) auf 8.8.8.8 (Googles primäres DNS) geändert. Dies scheint das Problem zu beheben, aber leider werden meine Änderungen /etc/resolv.conf
bei jedem Start von "NetworkManager" überschrieben.
Was ist der richtige Weg, um die Nameserver-IP in Ubuntu 10.4 zu konfigurieren?
network-manager
dns
Wim Coenen
quelle
quelle
/etc/NetworkManager/system-connections/
Sie sich das an (Sie benötigen Administratorrechte, um auf diese Konfigurationsdateien zugreifen zu können).nmtui
übrigens genauso!Sie können sie so ändern.
Klicken Sie zuerst auf das Netzwerkmanagersymbol in Ihrer Menüleiste und dann auf das
Edit Connections...
Element.Wechseln Sie nun zu den Registerkarten "Verkabelt" oder "Drahtlos", je nachdem, was Sie verwenden - ich verwende WLAN, also werde ich das verwenden.
Wählen Sie den Namen Ihres Netzwerks und klicken Sie auf
Edit...
Wechseln Sie zur Registerkarte IPv4, und ändern Sie sie dann von automatischem DHCP in Nur automatische (DHCP) Adressen.
Geben Sie die IP-Adresse Ihres DNS-Servers ein.
Klicken Sie auf Speichern und fertig!
quelle
8.8.8.8,8.8.4.4
. Das Einstellen von DNS für ein LAN kann auch hilfreich sein, wenn das LAN groß genug ist, verwende ich persönlich entweder den Router oder die DNS-Maske. In einem LAN ist es oft einfacher, eine Blacklist oder einen Proxy an einem einzelnen Ort (Router / DNS-Maske / Squid) zu verwalten, als auf jedem Client oder jedem Benutzer auf jedem Client, aber das ist etwas jenseits der hier gestellten Frage.Der beste Weg, einen Nameserver über die CLI ohne NetworkManger mit einer statischen Adresse oder unabhängig von der Verbindung einzurichten, ist folgender:
Installieren Sie das resolvconf- Paket.
Lauf
(Ignorieren Sie die beängstigende Warnung. /etc/resolv.conf wird automatisch generiert. Die Warnung ist also vorhanden und wird in /etc/resolv.conf abgelegt, wenn /etc/resolv.conf generiert wird.) hinzufügen
Drücken Sie Ctrl xund antworten Sie mit Ja, um die Datei zu speichern. Generieren Sie abschließend /etc/resolv.conf neu, damit die Änderungen sofort wirksam werden:
quelle
/etc/dhcp3/dhclient.conf
Sie können dies auch bearbeiten , indem Sie dies in das Dialogfeld "Ausführen" eingeben (wird durch Drücken von Alt+ angezeigt F2).Dann finden Sie die folgende Zeile
Und ändere es auf
Dadurch wird dhclient (der von NetworkManager verwendete DHCP-Client) Ihren DNS-Servern voranstellen, sodass resolve.conf am Ende so aussieht
Diese Lösung funktioniert überall und Sie erhalten immer das DNS, das Sie als primäres ausgewählt haben.
quelle
Eine andere Lösung besteht darin, die Konfiguration Ihres Routers so zu ändern, dass der andere DNS-Server verwendet wird. Melden Sie sich einfach bei Ihrem Administrator an. Solange dies nicht der Router ist, der das Problem verursacht, erhalten alle Ihre Client-Computer ein besseres DNS.
quelle
Klicken Sie auf die Netzwerkanzeige oben rechts auf dem Bildschirm und wählen Sie
Edit Connections...
. Wählen Sie die Verbindung aus, die Sie ändern möchten (wahrscheinlich auf der RegisterkarteWired
oder,Wireless
und klicken Sie auf dieEdit...
Schaltfläche.IPv4 Settings
Wechseln Sie zur Registerkarte des Verbindungsfensters und ändern Sie die Methode vonAutomatic (DHCP)
zuAutomatic (DHCP) addresses only
. Sie sollten jetzt in der Lage sein, eine DNS-Server-IP-Adresse anzugeben.Speichern Sie die Verbindung und Sie sollten bereit sein zu gehen. Möglicherweise müssen Sie die Verbindung zurücksetzen, indem Sie sie im Menü der Anzeige auswählen, nachdem Sie die Einstellungen geändert haben.
quelle
Ich glaube, wenn Sie es unter dem Netzwerkmanager selbst ändern, bleiben die Änderungen mit bestehen.
Zum Beispiel, um eth0 zu benutzen
Network Manager -> Verkabelt -> Auto eth0 -> ipv4-Einstellungen.
Stellen Sie Ihren DNS-Server auf 8.8.8.8 ein und übernehmen Sie.
quelle
Verwenden des Terminals
Sie müssen die
/etc/resolv.conf
Datei bearbeiten , um die IP-Adresse des Nameservers festzulegen, die der Resolver abfragen soll. Es können bis zu 3 Nameserver-Internet-IP-Adressen definiert werden. Wenn mehrere Server vorhanden sind, werden sie von der Resolver-Bibliothek in der angegebenen Reihenfolge abgefragt.Erstens eingeben
Fügen Sie die IP-Adresse Ihres bevorzugten DNS-Servers wie folgt hinzu:
entnommen aus: http://www.cyberciti.biz/faq/ubuntu-linux-configure-dns-nameserver-ip-address/
quelle
/etc/resolv.conf
werden, diese überschrieben werden. Dieser Ansatz eignet sich daher nur für Computer mit manuellen Netzwerkkonfigurationen. Technisch gesehen könnten Siechattr +i /etc/resolv.conf
verhindern, dass die Datei geändert wird (das habe ich vor Jahren getan), aber der beste Weg für die meisten Maschinen wäre der Ansatz von jrg in seiner Antwort: askubuntu.com/a/90263/13398 .ForwardX11=yes
.Für Headless-Server, auf denen kein X vorhanden ist und die Verwaltung über ssh oder eine andere Methode erfolgt, ist eine Befehlszeilenlösung erforderlich. Wenn resolv.conf nicht überschrieben wird, ist dies der richtige Ort, um die Nameserver zu ändern.
Wenn resolv.conf tut dann überschrieben, auf 14.04LTS zumindest sind die Dateien zu bearbeiten:
Ich empfehle dringend, Kommentarzeichenfolgen in Dateien wie diese einzufügen, sodass sie in der generierten Datei (/etc/resolve.conf) erscheinen und Sie sie in Zukunft finden können. Ich beginne und beende jede Datei mit einem einzeiligen Kommentar des Formulars:
und setzen Sie die entsprechenden Richtlinien dazwischen.
quelle
Ich habe festgestellt, dass das Hinzufügen der Leitung
dns-nameserver ip
zur Interface-Datei, das Einstellen der IPv4-Einstellungen für die Kabelverbindung auf " Automatisch" (DHCP) und die Eingabe der DNS-Server-IP und des Domänennamens. Durch das Hinzufügen der lokalen DNS-IP zum statischen DNS-Abschnitt des DSL-Routers wird NetworkManager veranlasst, diese lokale Adresse in dieresolv.conf
Datei aufzunehmen, die zusammen mit anderen vom Router abgerufenen Informationen überschrieben wird. All dies zusammen scheint die Auflösung lokaler DNS-Namen dauerhaft zu machen - eine überraschend schwierige Aufgabe. Ich benötige lokales DNS, um einen Linux-Client auf einer Samba-Freigabemount.cifs
in einem von DHCP bereitgestellten Netzwerk bereitzustellen.quelle
If
Network-Manager
ist gestoppt und/etc/resolvconf/resolv.conf.d/base
wurde konfiguriert.Vielleicht
resolvconf --enable-updates
ist nützlich.quelle
Sie können die IPv4-DNS-Einstellungen auf die hier beantwortete grafische Weise ändern
Wenn Sie sich jedoch fragen, wie Sie dasselbe über die Befehlszeile tun können, müssen Sie die Dateien
/etc/NetworkManager/system-connections
mit demls
Befehl im Verzeichnis auflisten:Es muss eine Datei mit dem Namen Ihrer Verbindung geben, meine heißt
Wired Connection 1
.Also müssen wir die Datei bearbeiten und DNS-Server hinzufügen:
Fügen Sie im
[ipv4]
Abschnitt so viele DNS-Server hinzu, wie Sie möchten, und trennen Sie sie durch Semikolons. Fügen Sie;
außerdem;
am Ende des letzten DNS-Servers Folgendes hinzu:Sie können diese Zeile einfach löschen, wenn Sie keine DNS zuweisen möchten.
Außerdem müssen Sie diese Zeile hinzufügen,
ignore-auto-dns=true
um von DHCP bereitgestellte DNS-Server (wie den in der Routerkonfiguration festgelegten DNS-Server) zu ignorieren :Ein kleiner Kontext zu dieser Antwort: Ich habe versucht herauszufinden, welche Datei bearbeitet wird, wenn ich einen DNS-Server in den DNS-Einstellungen der GUI hinzufüge. Daher habe ich diesen Befehl über 16 Stunden ausgeführt: Dabei
sudo grep -rs "1.1.1.1" /
wurden alle Dateien auf meiner virtuellen Ubuntu-Maschine gescannt aber es endete nie, obwohl es so lange lief, aber ich wusste, dass es möglich ist, dass die Datei darin existiert,/etc/NetworkManager
also führte ich dengrep
erneuten Verweis auf dieses Verzeichnis aus und fand Folgendes: Also/etc/NetworkManager/system-connections/Wired connection 1:dns=1.1.1.1;
kam ich hierher zurück, um eine Antwort zu schreiben, nur um herauszufinden, dass Lekensteyn es bereits getan hat wies in den Kommentaren auf die akzeptierte Antwort hin .quelle