Ich kann die von mir eingestellte Nameserver-Adresse nicht behalten /etc/resolv.conf
. Jedes Mal, wenn ich den Wert einstelle, überschreibt der Netzwerkmanager ihn beim Neustart mit dem Standardgateway.
Wie man es richtig einstellt?
Ich würde einen anderen Weg bevorzugen, als den Nameserver im Router zu ändern.
linux
nameserver
Ashildr
quelle
quelle
NetworkManager
(wie in der ersten Zeile angegeben). Diese Datei wird bei jedem Start von der neu generiertNetworkManager
. Es hängt von Ihrer Linux-Distribution (die Sie nicht erwähnt haben) ab, wie Sie darauf zugreifenNetworkManager
.Antworten:
Es hängt davon ab, ob. Bitte bis zum Ende lesen.
Wenn Sie das Paket resolvconf nicht installiert haben, ist es ganz einfach: Nachdem Sie es wie gewünscht geändert haben , geben Sie den Befehl aus
Der Befehl ändert die Dateiattribute und macht es
immutable
(die + i Option).Wenn Sie jedoch das Paket resolvconf installiert haben, kann die Datei /etc/resolv.conf in einen symbolischen Link umgewandelt werden.
Das ist eine Datei auf einem virtuellen Dateisystem, der Inbegriff einer nicht permanenten Version. Das Komische ist, dass Sie möglicherweise nicht wissen, dass Sie resolvconf installiert haben, da die neuesten Versionen von Debian-ähnlichen Betriebssystemen bereits vorinstalliert sind. Sie können feststellen, ob Ihre Distribution es für Sie installiert hat, indem Sie den folgenden Befehl eingeben:
Am wichtigsten ist jedoch, dass Sie
/etc/resolv.conf
mithilfe des obigen Befehls (Datei /etc/resolv.conf) feststellen können, ob Ihre Datei in eine Verknüpfung umgewandelt wurde. Wenn die Antwort lautetASCII text
, verwenden Siechattr
andernfalls ...Wenn Sie eine statische IP-Adresse verwenden, ist es am einfachsten, die folgende Zeile (oder eine solche) hinzuzufügen.
in der Zeilengruppe, in der die Eigenschaften Ihrer statischen Schnittstelle in / etc / network / interfaces definiert sind.
Wenn Sie sich stattdessen auf einem Laptop befinden, der ständig mit verschiedenen Netzwerken verbunden ist, können Sie dem
LawrenceC
hervorragenden Vorschlag folgen . Wenn Sie jedoch resolvconf auf Ihrem System installiert haben, können Sie einen festen DNS-Satz am einfachsten über die Dateien in /etc/resolvconf/resolv.conf.d bereitstellen . Insbesondere werden folgende Dateien verwendet (siehe Stephane Grabers Seite ):base : Wird verwendet, wenn keine anderen Daten gefunden werden können
head : Wird für den Header von resolv.conf verwendet, um sicherzustellen, dass ein DNS-Server immer der erste in der Liste ist
tail : Jeder Eintrag in tail wird am Ende der resultierenden resolv.conf angehängt.
Platzieren Sie Ihre bevorzugten Nameserver wie folgt im Kopf
und du bist fertig.
quelle
LawrenceC
, es ist der folgende./etc/resolvconf/
existiert nicht standardmäßig unter Ubuntu 18.04.Fügen Sie eine ähnliche Zeile wie bei
/etc/dhcp/dhclient.conf
Verwendung eines Root-Terminals hinzu:supersede domain-name-servers 74.122.198.48, 50.116.23.211;
Dies führt dazu
dhclient
, dass das Programm, das eine DHCP-Anforderung ausgibt und Änderungen gemäß der Antwort vornimmt, die vom DHCP-Server erhaltenen Informationen durch die oben genannten ersetzt, bevor Änderungen vorgenommen werden.Bei den obigen handelt es sich um zwei OpenNIC-DNS-Server. Ersetzen Sie die gewünschten Server nach Bedarf.
Da dies immer dann der Fall ist, wenn Sie Konfigurationsinformationen von DHCP erhalten, können Sie diese über die
dhclient -v eth0
oder eine andere Schnittstelle aktualisieren und die Änderung anzeigen.quelle
prepend domain-name-servers 8.8.8.8
zum Beispiel die Leitung hinzufügen . Dies würde den DNS des Internetdienstanbieters verwenden, wenn dieser verfügbar ist.Wie von @Rik erwähnt, ist der Grund für DNS-Ersetzungen beim Neustart auf den Netzwerkmanager / das Dienstprogramm zurückzuführen, das so eingestellt ist. In Linux Mint war meine IPv4-Methode laut Screenshot nur auf Automatische (DHCP) Adressen eingestellt. Sie können dann entweder die richtigen Einstellungen in /etc/resolv.conf oder im Abschnitt DNS-Server eingeben. Ich erinnere mich, dass sich in Ubuntu 13.04 meine Nameserver über einen längeren Zeitraum ein paar Mal geändert haben, aber nachdem ich sie tatsächlich in der GUI bearbeitet hatte, schienen alle von da an stabil zu sein.
quelle
Hatte das gleiche Problem, aber ich verwende statische IP-Adresse. Das Update fügte nur die DNS in / etc / network / interfaces hinzu
quelle
/etc/network/interfaces
. Guter Fang!Wenn Sie wicd verwendet haben, klicken Sie mit der rechten Maustaste auf das Symbol und dann auf Verbindungsinformationen. Wenn sich das Fenster öffnet, klicken Sie auf die Eigenschaften des Fensters, mit dem Sie verbunden sind.
Aktivieren Sie die Option "Statisches DNS verwenden" und geben Sie in der Zeile "DNS-Server 1" die IP-Adresse für das Google-DNS
8.8.8.8
und in der Zeile "DNS-Server 28.8.4.4
" die Adresse ein. Klicken Sie dann auf "OK".Wenn Sie Fehler aufgrund der Standardeinstellungen erhalten, können Sie sich an Ihren Internetdienstanbieter wenden und diesen darüber informieren. Sie weisen Ihrem Modem normalerweise DNS-Server zu, wenn Sie eine Verbindung zu ihnen herstellen.
quelle
Sich durch
chattr +i
oder ähnliches hineinzuhacken ist bestenfalls eine schnelle Abhilfe und sollte nach Möglichkeit vermieden werden (zumindest auf lange Sicht - wie gesagt ist es eine kurzfristige Abhilfe, bis man Zeit für die wirkliche Lösung findet). . Wie bereits erwähnt, ist dies ein Job für den NetworkManager, der eine CLI bietet, die wir dafür verwenden können:Wenn Sie eine statische IP-Adresse verwenden, können Sie auch die Lösung aus der Antwort von kanelbolle verwenden .
quelle
Erstaunlich , wie dieses kleine Problem frustrierend bekommen können, wenn die Lösungen gegeben für sie nicht mehr arbeiten auf Ubunutu 18.04.
Was für mich funktioniert hat, war einfach den
nameserver
Wert in/etc/resolv.conf
jedem Boot zu überschreiben .sudo
editiere/etc/rc.local
und füge diese Zeile hinzu:quelle