Verteilen Sie IPs vom DHCP-Server im Hostnetzwerk an Docker-Container

Verteilen Sie IPs vom DHCP-Server im Hostnetzwerk an Docker-Container

Ich betreibe mehrere Dienste in Docker-Containern für mein Homelab und muss sie von ihren eigenen, unterschiedlichen IPs aus zugänglich machen. Auf meinem Hostsystem läuft Debian „Bullseye“.

Aus der Docker-Dokumentation geht hervor, dass die Verwendung eines Netzwerks im Bridge-Modus naheliegend ist macvlanund die Standardmethode bei mir auch einwandfrei funktioniert.

Ich versuche jedoch, in meinem Netzwerk so wenig manuelle IPs wie möglich zu verwenden und lasse stattdessen fast alle IPs von meinem DHCP-Server zuweisen, auch für andere Server. Natürlich konfiguriere ich dann meinen DHCP so, dass er meinen Servern basierend auf den MAC-Adressen immer die gleichen IPs zuweist, aber auf diese Weise kann ich einen Server problemlos von einem Testnetzwerk in mein „Live“-Netzwerk verschieben, indem ich einfach die IP-Zuweisung im DHCP-Server ändere.

Ich möchte dies auch mit Docker-Containern tun können, d. h. Docker-Containern eine IP von DHCP im Netzwerk des Hosts zuweisen können.

Ich habe diesbezüglich keine Informationen in der Docker-Dokumentation gefunden unddiese offene Fragebei Serverfehler.

Aus meiner Sicht gibt es zwei mögliche Wege:

  1. (Manuell) eine Subschnittstelle auf dem Host mit dynamischer IP erstellen, dann ein hostNetzwerk in Docker verwenden und es an die (manuell) erstellte Subschnittstelle binden?
  2. Irgendwie muss ich ein macvlanNetzwerk verwenden. Ich weiß allerdings nicht, wie es konfiguriert werden muss, um DHCP-Zuweisungen zu erhalten.

Ich hätte gerne entweder einen Vorschlag für eine bessere, umsetzbare Lösung, Hilfestellung, wie ich auf Weg 2 weiterkomme oder die Bestätigung, dass Weg 1 der richtige Weg ist.

Antwort1

Schauen Sie sich dieses Projekt auf GitHub an. Docker-Netzwerktreiber für die Vernetzung auf einer Host-Bridge mit DHCP-zugewiesenen IP-Adressen

https://github.com/devplayer0/docker-net-dhcp

verwandte Informationen