Deaktivieren Sie den DHCP-Client über eine Schnittstelle

Deaktivieren Sie den DHCP-Client über eine Schnittstelle

Ich habe ein Problem auf einem Server mit zwei Ethernet-Schnittstellen (etho und eth1), auf dem ein Linux-Ubuntu-Server läuft. Ich brauche eth1, damit es keine DHCP-Anfragen stellt, da es nur eine Abhörschnittstelle sein soll. Offensichtlich brauche ich eth0, damit es normal läuft. Wie kann ich also jede DHCP-Client-Aktion über eth1 deaktivieren?

Danke im Voraus.

Antwort1

Etwas wie:

auto lo eth0 eth1

iface lo inet loopback

iface eth1 inet static
        address 192.168.32.130
        netmask 255.255.255.0
        gateway 192.168.32.1

in Ihrer /etc/network/interfacesKonfigurationsdatei wird Ihnen eth1eine statische IP-Adresse zugewiesen.

Antwort2

Manchmal fordert es auch mit der richtigen /etc/network/interfacesDatei weiterhin IP-Adressen auf statischen Schnittstellen an. Das Problem könnte an der Existenz alter Dateien mit falschen Informationen liegen. Beenden Sie einfach , entfernen Sie diese Dateien und starten Sie es erneut (indem Sie / auf DHCP-Schnittstellen ausführen ).dhclient/var/lib/dhcp/dhclient.*.leasesdhclientifdownifup

Antwort3

Bei modernen Linux-Betriebssystemen kann dies über den Network Manager gesteuert werden:

  • In RHEL: Ändern Sie die BOOTPROTO=dhcpZeile in der Datei/etc/sysconfig/network-scripts/ifcfg-eth1auf BOOTPROTO=staticund starten Sie dann die Netzwerkdienste neu.

  • Unter Debian: Ändern Sie die method=autoZeile method=staticin der Datei /etc/NetworkManager/system-connections/Kabelverbindung 1, und starten Sie dann die Netzwerkdienste neu.

Antwort4

Wenn Sie dieser Schnittstelle keine statische IP hinzufügen möchten, müssen Sie möglicherweise die vom DHCP-Client zugewiesene IP löschen.

Durch Ausführen dieses Skripts wird die IP auf eth0 entfernt.

#!/bin/sh
localip=`ip addr list dev eth0 | grep "inet " | sed 's/\(^\s*inet\s\)\([0-9\.]*\)\([\s\/].*\)/\2/'`
if [[$ip != ""]]; then
sudo ip addr del $localip dev eth0
fi

Sie müssen es manuell ausführen oder in crontab einstellen. Oder versuchen Sie, es nach der Zuweisung der IP-Adresse aufzurufen, aber ich weiß nicht, wie ich das einbinden kann. Nachdem die IP-Adresse entfernt wurde, funktioniert es, als wäre der DHCP-Client auf dieser Schnittstelle deaktiviert.

Hinweis: Dies ist nur eine Problemumgehung, indem die Wirkung des DHCP-Clients auf die angegebene Schnittstelle entfernt, nicht wirklich deaktiviert wird. Es funktioniert bei meiner Lösung, bei der die Schnittstelle aktiv sein muss, ohne dass IRGENDEINE IP-Adresse zugewiesen ist.

verwandte Informationen