Incus 7.2 ist da, und eine der Features freut mich besonders: Wildcard-Adressen bei NAT-Proxy-Devices. Wer schon mal einen Container mit nat=true betrieben hat, kennt den Schmerz: Feste IP-Adressen vergeben, Proxy-Regeln manuell anpassen, bei jeder Änderung nachjustieren. Das ist jetzt vorbei.
Das Problem
Bisher sah eine NAT-Proxy-Konfiguration so aus:
incus config device add webserver http proxy \
listen=tcp:192.168.1.100:8080 \
connect=tcp:10.68.100.50:80 \
nat=true
Zwei Probleme:
listenbrauchte eine konkrete Host-IP –0.0.0.0ging nicht,
connectbrauchte die Container-IP – nicht127.0.0.1, nicht
weil die DNAT-Regel ein konkretes Ziel benötigt. 0.0.0.0, sondern die exakte Adresse.
Das bedeutete: Jeder Container brauchte eine feste IP, und bei jedem Wechsel der Host-IP musste man die Proxy-Regel anpassen.
Die Lösung mit Incus 7.2
Incus 7.2 kann jetzt die Container-IP automatisch über ARP/NDP erkennen. Das bedeutet:
incus config device add webserver http proxy \
listen=tcp:0.0.0.0:8080 \
connect=tcp:0.0.0.0:80 \
nat=true
Mehr muss nicht sein. Incus erkennt die IP des Containers automatisch und aktualisiert die NAT-Regeln, wenn sich die Adresse ändert. Keine feste IP mehr nötig, kein manuelles Nachjustieren.
Wie funktioniert das?
Incus beobachtet beim Start des Containers den ARP/NDP-Traffic auf der Bridge und merkt sich die IP-Adresse des Containers. Diese Information wird für die NAT-Regeln verwendet. Ändert sich die Adresse (z. B. weil der Container neu gestartet wird), aktualisiert Incus die Regeln automatisch.
Container startet → ARP/NDP beobachten → IP erkennen → NAT-Regel anlegen
Vergleich: Vorher und Nachher
| Aspekt | Vorher (Incus < 7.2) | Nachher (Incus 7.2) |
|---|---|---|
| Container-IP | Fest nötig | Dynamisch möglich |
| Host-IP im listen | Fest nötig | Wildcard (0.0.0.0) |
| Konfiguration pro Container | 2 Zeilen | 1 Zeile |
| Bei IP-Änderung | Manuell anpassen | Automatisch |
Praxisbeispiel
Vorher: Webserver mit fester IP
# Container starten
incus launch images:debian/12 webserver
# Feste IP vergeben
incus config device override webserver eth0 ipv4.address=10.68.100.50
incus restart webserver
# Proxy mit fester IP einrichten
incus config device add webserver http proxy \
listen=tcp:192.168.1.100:80 \
connect=tcp:10.68.100.50:80 \
nat=true
Nachher: Webserver mit dynamischer IP
# Container starten
incus launch images:debian/12 webserver
# Proxy mit Wildcard einrichten
incus config device add webserver http proxy \
listen=tcp:0.0.0.0:80 \
connect=tcp:0.0.0.0:80 \
nat=true
Fertig. Keine feste IP, keine manuelle Konfiguration. Incus kümmert sich um den Rest.
Warum mich das freut
Das war einer der Punkte, der mich an Incus gestört hat. Jedes Mal, wenn ich einen Container mit NAT-Proxy eingerichtet hatte, musste ich erst die IP festlegen, dann das Proxy-Device konfigurieren, dann testen, ob die DNAT-Regel stimmt. Bei einem einzelnen Container mag das noch gehen – bei zehn oder mehr wird es unübersichtlich.
Besonders mein Mailserver-Container war jedes Mal umständlich: Von einem Server auf den anderen kopieren, in den Proxyeinstellungen die IP Adresse des alten Hosts durch die neue ersetzen, viel Handarbeit. Jetzt kann ich den Container einfach kopieren, und das Proxy-Device funktioniert sofort – Incus erkennt die neue IP automatisch. Kein Nachjustieren mehr.
Jetzt ist es eine Zeile. Einfach 0.0.0.0 als Wildcard, Incus erkennt die IP automatisch. Das ist so, wie es sein sollte.
Was sonst noch neu ist
Neben den Wildcard-Adressen gibt es in Incus 7.2 noch ein paar Highlights:
- SELinux-Unterstützung pro Container
- BGP-Route-Advertisement für Bridge-Netzwerke
incus default-Kommando für CLI-Optionen- Statische Netzwerkkonfiguration für OCI-Container
- Erweiterte NBD-Zugriffe für VMs
Aber das Wildcard-Feature ist das, was mich am meisten interessiert. Es macht Incus im Alltag spürbar einfacher.
Fazit
Incus 7.2 ist ein solides Update mit vielen Verbesserungen. Das Wildcard-Feature bei NAT-Proxys ist vielleicht kein spektakuläres Feature, aber eines, das den Alltag erleichtert. Keine festen IPs mehr, keine manuelle Konfiguration, einfach 0.0.0.0 und los.
Wer Incus nutzt, sollte updaten. Wer Incus noch nicht nutzt, hat jetzt noch mehr Gründe, es auszuprobieren.
