Statische IP für LAN (eth0) einrichten
Diese Anleitung gilt für Raspberry Pi OS auf Trixie-Basis (Debian 13). Standardmäßig bezieht der Pi seine IP-Adresse automatisch per DHCP vom Router. Für Server soll sie aber fest sein, damit sie sich nicht ändert.
System und aktuelle Lage prüfen
Bestätigen, dass es Trixie ist und netplan verwaltet wird:
cat /etc/os-release
nmcli connection show
Steht in der ersten Ausgabe trixie und in der zweiten ein Profil wie netplan-eth0, bist du hier richtig.
Vorhandene netplan-Konfiguration ansehen:
ls /etc/netplan/
Dort liegt meist eine oder mehrere YAML-Dateien. Wir fassen die vorhandenen nicht an, sondern legen eine eigene mit hoher Nummer an, die zuletzt geladen wird.
netplan-Konfiguration anlegen
Neue Datei im Editor öffnen:
sudo vim /etc/netplan/99-eth0-static.yaml
Folgenden Inhalt einfügen und die Adressen an dein Netzwerk anpassen:
network:
version: 2
renderer: NetworkManager
ethernets:
eth0:
dhcp4: false
addresses:
- 192.168.1.50/24
routes:
- to: default
via: 192.168.1.1
nameservers:
addresses:
- 192.168.1.1
- 1.1.1.1
Was die Einträge bedeuten:
| Eintrag | Bedeutung |
|---|---|
renderer: NetworkManager |
netplan gibt die Config an den NetworkManager weiter (Standard auf dem Pi) |
dhcp4: false |
kein automatischer Bezug per DHCP mehr |
addresses |
die gewünschte feste Adresse, /24 ist die übliche Netzmaske (255.255.255.0) |
routes: to: default / via |
das Gateway, also die Adresse des Routers (oft .1 am Ende) |
nameservers |
DNS-Server, hier der Router plus Cloudflare (1.1.1.1) als Reserve |
Wichtig zur YAML-Syntax: Eingerückt wird ausschließlich mit Leerzeichen, niemals mit Tabs. Die Einrückung muss exakt stimmen, sonst lehnt netplan die Datei ab.
Wichtig zur Adresse: Die gewählte IP (im Beispiel 192.168.1.50) muss im selben Netz wie der Router liegen und darf nicht schon belegt sein. Am besten eine Adresse außerhalb des DHCP-Bereichs des Routers wählen.
Vim-Kurzhilfe für diese Datei
Falls vim ungewohnt ist:
| Taste | Funktion |
|---|---|
i |
Einfügemodus starten (jetzt kann man tippen) |
Esc |
zurück in den Normalmodus |
:wq |
speichern und beenden |
:q! |
beenden ohne zu speichern (verwerfen) |
Tipp: YAML-Dateien lassen sich in vim angenehmer bearbeiten, wenn die Einrückung sichtbar ist. Mit :set list zeigt vim Tabs und Zeilenenden an, so sieht man sofort, ob sich ein Tab eingeschlichen hat.
Berechtigungen setzen
netplan erwartet, dass die Konfigurationsdatei nur für root lesbar ist, sonst gibt es eine Warnung:
sudo chmod 600 /etc/netplan/99-eth0-static.yaml
Testen und anwenden
Zuerst die Syntax prüfen, ohne etwas zu übernehmen:
sudo netplan generate
Kommt keine Fehlermeldung, ist die Datei gültig. Dann anwenden:
sudo netplan apply
Hinweis: Bei einer SSH-Sitzung bricht die Verbindung dabei ab, weil sich die IP ändert. Danach verbindest du dich mit der neuen, festen Adresse.
Wer auf Nummer sicher gehen will, nutzt stattdessen:
sudo netplan try
Dieser Befehl wendet die Änderung an und macht sie nach 120 Sekunden automatisch rückgängig, falls man nicht mit Enter bestätigt. So sperrt man sich nicht versehentlich aus.
Ergebnis prüfen
ip addr show eth0 # zeigt die jetzt gesetzte IP-Adresse
ip route # zeigt das Gateway (default via ...)
ping -c 4 192.168.1.1 # erreicht der Pi den Router?
ping -c 4 1.1.1.1 # kommt der Pi ins Internet?
Wenn ip addr show eth0 die gewünschte Adresse zeigt und beide ping-Tests Antworten liefern, ist alles korrekt. Am besten zur Kontrolle einmal neu starten und erneut prüfen, ob die Adresse den Reboot übersteht.
Zurück auf DHCP (automatisch)
Falls die feste IP wieder rückgängig gemacht werden soll, einfach die eigene Datei löschen und netplan neu anwenden:
sudo rm /etc/netplan/99-eth0-static.yaml
sudo netplan apply
Häufige Stolpersteine
- netplan generate meldet einen Fehler: Fast immer ein YAML-Einrückungsfehler. Auf konsequente Leerzeichen achten, keine Tabs, und die Einrückungstiefe der Beispiele exakt übernehmen.
- Pi nicht mehr erreichbar: Vermutlich liegt die neue IP nicht im Netz des Routers oder ist doppelt vergeben. Adresse und Gateway kontrollieren.
- Internet geht, lokale Namen nicht (oder umgekehrt): Meist sind die
nameserversfalsch gesetzt. - nmcli zeigt weiterhin DHCP: Normal. netplan steuert die Konfiguration, das
netplan-eth0-Profil wird daraus erzeugt. Nicht versuchen, es direkt mitnmclizu ändern.
No comments to display
No comments to display