Warum läuft dhclient noch, wenn ich statische IP wähle?


15

Ich ändere DHCP in Static in / etc / network / interfaces (wie unten).

# The primary network interface
auto eth0
iface eth0 inet static
netmask 255.255.0.0
address 10.10.130.128
gateway 10.10.1.1

Starten Sie dann die Schnittstelle neu.

$ sudo ifdown eth0; sudo ifup eth0
...
$ ifconfig
eth0      Link encap:Ethernet 
          inet addr:10.10.130.128  Bcast:10.10.255.255  Mask:255.255.0.0

Die neue Adresse beginnt also.

Aber DHCP ist noch da?

$ ps aux | grep dhc
root    ... dhclient3 -e IF_METRIC=100 -pf /var/run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases -1 eth0

Ist das normal? Wenn nicht, wie starte ich die Schnittstelle in statischer IP neu, während ich gleichzeitig DHCP beende?

Danke vielmals.


Antworten:


22
  1. Sie müssen zuerst die Schnittstelle herunterfahren (im DHCP-Modus) sudo ifdown eth0
  2. Dann bearbeite die Konfiguration nano /etc/network/interfaces

    # The primary network interface
    auto eth0
    iface eth0 inet static
    netmask 255.255.0.0
    address 10.10.130.128
    gateway 10.10.1.1
    
  3. Starten Sie die Schnittstelle erneut sudo ifup eth0

Sonst dhclientfährt nicht richtig herunter,


1
Entschuldigung, aber kann jemand genauer erläutern, wie sich dies von dem unterscheidet, was hier im OP gemacht wird? Ich habe das dreimal gelesen und kann anscheinend keinen Unterschied feststellen.
Pfingsten

Geht es darum, die Datei zu ändern ('berühren'), damit sich das Datum ändert? Soll ich die Datei erst bearbeiten, nachdem ich die Benutzeroberfläche heruntergefahren habe? Wenn ja, wie kann ich die Tatsache "rückgängig machen", dass ich es zuvor bearbeitet habe?
Pfingsten


1
@Bruno - danke für die Klarstellung. Was tun Sie aus Neugier, wenn Sie die /etc/network/interfacesDatei bereits unwiderruflich bearbeitet haben ? Gibt es eine Möglichkeit, das Zurücksetzen auf die Standardeinstellungen zu erzwingen und erneut zu starten?
1.

7
Ich war verblüfft, warum es einen Unterschied machen sollte, aber dann erklärte es ein kluger Freund von mir sehr nett. Das Problem besteht darin, dass der ifdownNetzwerkmanager nicht weiß, dass die Datei beendet werden muss, wenn sie bearbeitet und dann ausgeführt wird dhclient, da in der interfacesDatei nur ein statischer Eintrag angezeigt wird. Nachdem die Schnittstelle heruntergefahren ist, ifupwerden die statischen Einstellungen korrekt gelesen und angewendet, es wird jedoch auch nicht gewusst, dass dhclientdiese gestartet wurden.
Paracycle

2

Ich hatte das gleiche Problem (Ubuntu 16.04). Dies war jedoch eine Cloud-Instanz, und ich konnte die Schnittstelle nicht so einfach herunterfahren.

Kurze Antwort: Ich habe die Datei entfernt, /etc/network/interfaces.d/50-cloud-init.cfgwenn die Aktualisierung durch diese bestimmte Datei ausgelöst wurde.

Lange Antwort: Ich habe die Schnittstelle mit der /etc/network/interfacesmit einer statischen IP-Adresse konfiguriert , aber im daemon.log festgestellt, dass der dhclient immer noch IPs vom DHCP anfordert und der dhclient über systemd gestartet wurde. Insbesondere rief systemd die Einheit networking.service auf, die ifup aufrief und sowohl die Interface-Datei als auch die Datei 50-cloud-init.cfg las. Daraus resultieren einige Konflikte, aber immer noch ein funktionierendes Netzwerk.


Ich hatte genau das gleiche Problem und erfuhr auf die harte Tour, dass eine spätere Datei (wie 99-eth0.cfg) in der Tat frühere Aussagen NICHT außer Kraft setzte! Also, danke für deine Eingabe;)
Daywalker

1

Ich fand für mich, das lag daran, dass der NetworkManager von gnome noch lief und dachte, er sei für das Gerät verantwortlich. Im Nachhinein sollte dies offensichtlich gewesen sein, da psgezeigt wurde, dass dhclient von NetworkManager gestartet wurde.

Nach dem Neustart des Systems wurde das Gerät in NetworkManager auf "Nicht verwaltet" gesetzt und der Versuch, es zu konfigurieren, wurde abgebrochen. Vielleicht hätte ich dasselbe erreichen können, wenn ich NetworkManager gestoppt / neu gestartet hätte. Ich bin mir nicht sicher.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.