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/interfaces
Konfigurationsdatei wird Ihnen eth1
eine statische IP-Adresse zugewiesen.
Antwort2
Manchmal fordert es auch mit der richtigen /etc/network/interfaces
Datei 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.*.leases
dhclient
ifdown
ifup
Antwort3
Bei modernen Linux-Betriebssystemen kann dies über den Network Manager gesteuert werden:
In RHEL: Ändern Sie die
BOOTPROTO=dhcp
Zeile in der Datei/etc/sysconfig/network-scripts/ifcfg-eth1aufBOOTPROTO=static
und starten Sie dann die Netzwerkdienste neu.Unter Debian: Ändern Sie die
method=auto
Zeilemethod=static
in 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.