Das Setzen der statischen IP auf Ubuntu Server 12.04 macht den Verlust der externen Verbindung

8

Ich habe ein Problem mit statischer IP unter Ubuntu 12.04.

Mit DHCP habe ich kein Problem, aber wenn ich (unter /etc/network/interfaces ) die statische Adresse, das Gateway, die Subnetzmaske und die DNS-Nameserver einstelle, habe ich, dass der Server keine Verbindung zur externen Welt herstellen kann.

Es kann nur eine Verbindung zu lokalen IP-Hosts herstellen.

Ich habe versucht, die Nameserver in /etc/resolv.conf einzufügen, aber jedes Mal, wenn ich die Maschine neu starte, werden die Änderungen abgebrochen.

Was könnte das Problem sein?

    
frakorn 06.06.2012, 19:00
quelle

6 Antworten

19

Ubuntu 12.04 verwendet resolvconf (eine Reihe von Skripten und Hooks) anstelle von resolv.conf, um den DNS-Server zu verwalten. Der bemerkenswerteste Unterschied für den Benutzer besteht darin, dass jede Änderung, die manuell in der Datei /etc/resolv.conf vorgenommen wird, verloren geht, da sie beim nächsten Mal überschrieben wird, wenn etwas resolvconf auslöst.

Um die statischen DNS-Einträge in der resolv.conf-Datei hinzuzufügen, bearbeiten Sie /etc/resolvconf/resolv.conf.d/base :

Fügen Sie diese Zeilen hinzu (das folgende Beispiel ist der öffentliche Name-Server von OpenDNS):

%Vor%

Führen Sie diesen Befehl aus, um die resolvconf-Einstellung zu aktualisieren:

%Vor%

Verwenden Sie folgenden Befehl, um Ihre DNS-Serveradressen anzuzeigen:

%Vor%     
Munyua 06.03.2013 10:06
quelle
1

Zunächst einmal: Überprüfen Sie, ob Sie die richtige Konfiguration haben: - Versuch dein Gateway zu pingen, funktioniert das? Wenn nicht, überprüfen Sie Ihre Gateway IP. - Versuchen Sie, 8.8.8.8 (DNS von Google) zu pingen - funktioniert das? Wenn nein, überprüfen Sie das Routing mit einem der folgenden Befehle:

%Vor%

oder

%Vor%

und prüfen Sie, bei welchem ​​Hop das Routing stoppt.

In Bezug auf DNS-Namen: Fügen Sie bitte die Zeilen / etc / network / interfaces hinzu:

%Vor%     
cezar 07.06.2012 08:34
quelle
0

Wir hatten das gleiche Problem mit einem alten HP Terminal und Ubuntu 12.04, um eine statische IP zu verwenden, mussten wir das "manuelle" Flag in /etc/network/interfaces verwenden und eine ifconfig-Eingabe simulieren.

%Vor%

Eine seltsame Lösung, aber die minimale Menge an Voodoo, um dieses Problem zu lösen.

    
somebody 20.06.2012 08:33
quelle
0

Verschiedene Prozesse überschreiben /etc/resolv.conf (dhcpd, networkmanager, etc.). Ich vermute, das ist das Problem, das Sie sehen. Ich würde ein paar Optionen vorschlagen:

  1. Anstatt die Nameserver zu "/etc/resolv.conf" hinzuzufügen, fügen Sie sie stattdessen zu "/etc/resolv.conf.head" hinzu. Der Inhalt von "/etc/resolv.conf.head" wird automatisch dem Inhalt vorangestellt, der automatisch generiert wird. Abhängig von Ihren Optionen können Sie "/etc/resolv.conf.tail" verwenden, um Ihre Einstellungen am Ende der Datei anzuhängen. In jedem Fall sollte dies eine dieser automatisch generierten Einstellungen mit Ihren festen überschreiben.

  2. Schreib / protect /etc/resolv.conf, um zu verhindern, dass deine Änderungen von einem anderen Daemon überschrieben werden (nachdem du deine Änderungen vorgenommen hast):

    $ sudo chattr +i /etc/resolv.conf

  3. Wahrscheinlich ist es dhcpd, das /etc/resolv.conf ändert, und Sie haben vergessen, es zu deaktivieren. Entfernen Sie (oder deaktivieren Sie) dhcpd, damit es /etc/resolv.conf nicht ändert. Entfernen:

    $ sudo apt-get remove isc-dhcp-client

  4. Verwenden Sie auditd, um festzustellen, welcher Daemon die Datei /etc/resolv.conf ändert:

    $ sudo auditctl -w /etc/resolv.conf -p w

Die Protokolle befinden sich in /var/log/audit/audit.log. Sie können das Datum / die Uhrzeit sehen, zu der die Datei geändert wurde und welches Programm sie modifiziert hat (um korrigierende Maßnahmen zu ergreifen).

    
Mischa Taylor 24.06.2012 20:27
quelle
0

Ich weiß nicht, aber ich mag die resolv.conf -Datei nicht. Ich bevorzuge es, den Nameserver so einzustellen, dass er meine Router liest, und normalerweise verwende ich die Namenserver von Google 8.8.8.8 oder 8.8.4.4.

Hier ist eine kleine Anleitung, die ich gefunden habe, wenn jemand interessiert ist.

Ссылка

    
Louis 15.09.2012 02:26
quelle
0

Versuchen Sie Folgendes:

%Vor%

und kommentiere die dns=dnsmasq -Zeile, dann tue:

%Vor%

Hier ist ein roter Faden dieses Problems:

Ссылка

    
inigoD 30.10.2012 23:35
quelle

Tags und Links