In modernen Raspberry Pi OS-Installationen auf Basis von Debian 12 („Bookworm“) kommt häufig der NetworkManager zum Einsatz. Während klassische Setups oft noch auf dhcpcd setzen, bietet NetworkManager eine flexible und zentrale Möglichkeit, Netzwerkverbindungen – inklusive statischer Routen – zu verwalten.
In diesem Beitrag zeige ich, wie man auf einem Raspberry Pi gezielt statische Routen per nmcli einrichtet.
Ausgangssituation
Der Raspberry Pi verfügt über zwei Netzwerkschnittstellen:
- eth0 (LAN)
- IP:
192.168.0.20/24 - Gateway:
192.168.0.1 - → soll für den Internetverkehr genutzt werden
- IP:
- wlan0 (WLAN)
- IP:
192.168.1.21/24 - Gateway:
192.168.1.1 - → dient als Zugang zu weiteren internen Netzen
- IP:
Zusätzlich existiert ein weiteres Netzwerk:
192.168.2.0/24- erreichbar über Gateway
192.168.1.1
- erreichbar über Gateway
Ziel:
Traffic zum Netz 192.168.2.0/24 soll über wlan0 laufen, während der restliche Traffic (insbesondere Internet) weiterhin über eth0 geroutet wird.
Schritt 1: Verbindungsnamen herausfinden
Zuerst müssen wir den Namen der aktiven Netzwerkverbindung kennen:
$ nmcli connection show
Beispielausgabe:
NAME UUID TYPE DEVICE
Wired connection 1 xxxx-xxxx-xxxx-xxxx ethernet eth0
WLAN-AP yyyy-yyyy-yyyy-yyyy wifi wlan0
👉 Wichtig ist der NAME der WLAN-Verbindung (hier z. B. WLAN-AP).
Schritt 2: Statische Route hinzufügen
Jetzt fügen wir die Route zur WLAN-Verbindung hinzu:
$ sudo nmcli connection modify "WLAN-AP" +ipv4.routes "192.168.2.0/24 192.168.1.1"
Erklärung:
192.168.2.0/24→ Zielnetz192.168.1.1→ Gateway im WLAN-Netz+ipv4.routes→ fügt eine zusätzliche Route hinzu (ohne bestehende zu überschreiben)
Schritt 3: Verbindung neu starten
Damit die Änderung aktiv wird:
$ sudo nmcli connection down "WLAN-AP" && sudo nmcli connection up "WLAN-AP"
Alternativ kann auch einfach der Raspberry Pi neu gestartet werden.
Schritt 4: Routing überprüfen
Mit folgendem Befehl lässt sich prüfen, ob die Route korrekt greift:
$ ip route get 192.168.2.1
Erwartete Ausgabe (sinngemäß):
192.168.2.1 via 192.168.1.1 dev wlan0
👉 Das bestätigt, dass der Traffic ins Zielnetz über das WLAN läuft.
Default-Route bleibt unverändert
Die bestehende Default-Route über eth0 bleibt unangetastet:
default via 192.168.0.1 dev eth0
Damit ist sichergestellt:
- Internetverkehr → über eth0
- internes Netz
192.168.2.0/24→ über wlan0
Hinweise & Best Practices
- NetworkManager speichert diese Routen persistent – sie bleiben also auch nach einem Neustart erhalten.
- Mit
nmcli connection modifykönnen beliebig viele Routen ergänzt werden. - Bestehende Routen lassen sich anzeigen mit:
nmcli connection show "WLAN-AP"
Fazit
Mit nmcli lassen sich unter Debian 12 auf dem Raspberry Pi sehr einfach präzise Routing-Regeln definieren, ohne auf komplexes Policy-Based Routing zurückgreifen zu müssen.
Gerade in Setups mit:
- mehreren Interfaces
- separaten Management-Netzen
- oder VPN-Anbindungen
ist diese Methode schnell, sauber und zuverlässig.
Wenn man mehrere Netze oder komplexere Routing-Logik abbilden will (z. B. abhängig von Source-IP), lohnt sich ein Blick auf Policy-Based Routing mit ip rule – für viele Anwendungsfälle reicht jedoch die hier gezeigte Lösung völlig aus.