Ich habe einen Linux-Server (Rasperry Pi mit Raspbian als Betriebssystem), der nur statische IP verwenden sollte.
Allerdings habe ich festgestellt, dass es auch IP vom DHCP-Server hat (Die von DHCP ausgegebene IP ist 192.168.111.2
). Entsprechend den Netzwerkeinstellungen sollte der Server nur statische IP ( 192.168.111.100
) verwenden.
Der Inhalt von /etc/network/interfaces
:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.111.100
netmask 255.255.255.0
gateway 192.168.111.1
dns-nameservers ip1 ip2
Trotz der Verwendung der statischen Konfiguration kann ich SSH zum Gerät auch unter Verwendung der von DHCP angegebenen IP. Es scheint auch, dass ntpd
die falsche und die richtige IP verwendet wird.
Ausgabe von Netstat:
udp 0 0 192.168.111.2:123 0.0.0.0:* 2774/ntpd
udp 0 0 192.168.111.100:123 0.0.0.0:* 2774/ntpd
Laut ifconfig
der IP 192.168.111.2
wird nicht verwendet:
eth0 Link encap:Ethernet HWaddr b8:27:eb:be:18:1c
inet addr:192.168.111.100 Bcast:192.168.111.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:138099 errors:0 dropped:0 overruns:0 frame:0
TX packets:81146 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:95954711 (91.5 MiB) TX bytes:27076870 (25.8 MiB)
ps -ef | grep dhcp
zeigt, dass ein DHCP-Daemon ausgeführt wird:
root 2000 1 0 Oct07 ? 00:00:06 /sbin/dhcpcd
Wie deaktiviere ich den DHCP
Start des Daemons und stelle sicher, dass mein Server nur das statische verwendet?
quelle
ifconfig
und es wird regelmäßig verwendet. Es wird eines Tages durch ersetzt werden,ip
aber ehrlich gesagt ist es keine Konsequenz, jemanden zu belästigen, der "besser" ist, da dies kein Piss-Wettbewerb ist.ifconfig
bietet mehr als genug Details zum Debuggen von Dingen wie diesem.Antworten:
Dieses Szenario klingt wirklich seltsam, da Ihr Setup so funktionieren sollte, wie Sie es beschreiben - und hoffen, dass es funktioniert -, wenn eine statische IP-Adresse festgelegt ist
/etc/network/interfaces
. Die Diskussion auf der offiziellen Raspberry Pi-Website konzentriert sich jedoch auf das Problem, bei dem der Benutzer "rpdom" dies auf dem Post vom "Do 28. Mai 2015, 6:21 Uhr" angibt:Weiter unten im Thread schlägt der Benutzer "KLL" in seiner Antwort vom "Montag, den 10. August 2015, 12:59 Uhr" den folgenden anderen Beitrag vor . Laut "knute":
Die Idee ist also
dhcpcd5
, dass sich das Verhalten in einem der Upgrades geändert hat. Um das Problem zu beheben, sollten Sie alle Änderungen entfernen/etc/network/interfaces
und stattdessen die Einstellungen in anpassen/etc/dhcpcd.conf
, um eine statische IP-Adresse zu erhalten. Beispielkonfiguration unten:Weitere Informationen zum Inhalt von
dhcpcd.conf
finden Sie auf der offiziellen Manpage dazu .Das heißt, eine andere Idee ist, die Einstellungen beizubehalten, die Sie haben,
/etc/network/interfaces
aber dann zu bearbeiten/etc/dhcpcd.conf
, um die Zeile hinzuzufügendenyinterfaces eth0
, die den DHCP-Dämon anweist, sie vollständig zu ignoriereneth0
. Beide Lösungen sollten funktionieren, eine Lösung ist jedoch je nach den allgemeinen Netzwerkanforderungen möglicherweise vorzuziehen.quelle
/etc/network/interfaces
nie so verändert wurde,manual
wie es in Raspberry Pi-Foren der Fall war. Auch für mich haben Lösungsvorschläge funktioniert.Was für mich funktioniert hat, ist die Verwendung einer / etc / network / interfaces wie in der ursprünglichen Frage und das einfache Entfernen des DHCP-Clients:
quelle
Ich muss sagen, dass leider keine der hier vorgeschlagenen Lösungen für mich funktioniert hat. Aber nach einem langen Kampf mit DHCP konnte ich das Problem endlich lösen:
Veränderung:
zu:
hoffe das hilft.
quelle
Die bevorzugte Methode zum Deaktivieren von Diensten wie dhcpcd ist die Verwendung der Systemverwaltungsfunktionen. Sie müssen einen Neustart durchführen, damit dieser wirksam wird - es sei denn, Sie beenden den Dienst ebenfalls.
Für Jessie (die das
systemd
Management nutzt ):Und für die älteren Wheezy (
System-V
Management):Wenn Sie es jedoch deaktivieren, müssen Sie sicherstellen, dass Sie eine statische IP-Konfiguration haben,
/etc/network/interfaces
da Ihre Schnittstellen sonst keine IP-Adresse erhalten.quelle
Hier ist eine Zusammenfassung dessen, was ich für Raspbian Jessie am 11.01.2017 tun musste:
Bearbeiten Sie / etc / network / interfaces und fügen Sie die Zeilengruppe für statische Adressen hinzu. Entfernen Sie andere Verweise auf die statische Schnittstelle (in diesem Fall eth0). Die Auto-Zeile ist wichtig, da die Schnittstelle sonst beim Booten nicht startet:
Deaktivieren Sie als Nächstes dhcpcd und aktivieren Sie das Standardnetzwerk:
systemctl disable dhcpcd.service
systemctl enable networking
Raspbian Jessie verwendet ab dem Release vom 11.01.2017 offenbar nicht die Netzwerkfunktionen von systemd
quelle
Versuchte ein paar Dinge und fand das
gefunden:
Ich habe gerade deaktiviert
dhcpcd5
und das behoben mit:einen Neustart und alles war dandy
quelle