Ich führe eine Ubuntu 10.04-Serverinstallation aus und musste sie kürzlich von DHCP auf statische IP umstellen. Ich habe die /etc/network/interfaces
Datei bearbeitet und gewechselt
iface eth0 inet dhcp
zu
iface eth0 inet static
address 192.168.1.167
netmask 255.255.255.240
network 192.168.1.160
broadcast 192.168.1.175
gateway 192.168.1.161
Sie werden feststellen, dass die IPs etwas seltsam sind. Dies liegt daran, dass sich der Server jetzt in einem speziellen Subnetz befindet, das der Isolierung bestimmter Server dient. Ich habe auch die Datei resolv.conf bearbeitet, um die richtigen DNS-Server einzuschließen (einschließlich eines von Google, nur für den Fall, dass die Hölle los ist).
Das Problem ist, dass die Maschine scheinbar zufällig die Fähigkeit verliert, mit der Außenwelt zu sprechen. Ich weiß, dass die Maschine immer noch in Betrieb ist, aber es sieht so aus, als hätte sie überhaupt keine Vernetzung. Ich denke, ein Teil des Problems ist, dass in diesem Subnetz kein DHCP läuft (und wird es auch nicht geben) und der Dhclient gelegentlich immer noch läuft, was zu Konflikten führt (keine Ahnung, was), die zum Absterben des Netzwerks führen. Ich kann das Paket dhcp3-client jedoch nicht entfernen, da es auch dazu führt, dass das Paket ubuntu-minimal entfernt wird, und das wäre schlecht.
Also irgendwelche Ideen? Wie kann ich den Dhclient aufrufen und verhindern, dass er ausgeführt wird?
sudo dhcpclient eth0
und kommentieren, wenn das Netzwerk danach unterbrochen wurde. Und die letzten Zeilen von/var/log/syslog
wenn möglichsudo ifdown eth0
gemäß art.ubuntuforums.org/showthread.php?t=1419803ps auxf | less
, sollten Sie in der Lage sein, eine Liste von Prozessen anzuzeigen , die in einer baumartigen Struktur organisiert sind. Sie können dann sehen, welcher Prozess ausgelöst wurdedhclient
(gehen Sie einfach den Zweig hinauf). Zum Beispiel ist auf meinem PCdhclient
ein Sohn desNetworkManager
Prozesses.Antworten:
Wenn Sie den Computer seitdem nicht neu gestartet haben, ist dieses Verhalten normal. Der Wechsel von DHCP zu statischer IP sollte sein:
sudo ifdown eth0
sudo ifup eth0
Der Grund dafür ist, dass wenn Sie das ifdown nach dem Ändern der Konfiguration ausführen, es sich so verhält, als würde es eine statische Schnittstelle ausschalten und den dhclient-Prozess nicht beenden, der Ihre Konfiguration immer wieder durcheinander bringt. In diesem Fall beenden Sie einfach den dhclient-Prozess mit
und es sollte alles klappen.
quelle
Wie von jneves erwähnt , ist es wahrscheinlich der DHCP-Client, der die Dinge für Sie durcheinander bringt .
Alternativ zu
sudo ifdown eth0
-edit-sudo ifup eth0
können/etc/init.d/networking restart
Sie die Datei erst ausführen, nachdem Sie sie bearbeitet haben. Es hat auch den Vorteil, dass Sie es aus der Ferne tun können ...(Da ich nicht genug Punkte bei askubuntu habe, darf ich nicht nur die Antwort von jneves kommentieren, also halte das bitte für einen Kommentar ...)
Edit : Völlig vergessen; Da der obige Befehl Sie zu keinem Zeitpunkt trennt, sollte Ihre SSH-Sitzung das erneute Laden der Konfiguration tatsächlich überstehen. Es ist sehr schön, die Netzwerkeinstellungen zu ändern, während Sie mit dem Computer verbunden sind ...
quelle
/etc/init.d/networking restart
(in 10.04 Server) nach der Bearbeitung der Konfigurationsdatei verwendet - der dhclient lief noch. Ich musste den dhclient-Prozess manuell beenden (und dann einen Neustart durchführen, um sicherzustellen, dass er nach einem Neustart nicht wieder