Hallo, dies ist ein Request-for-Feature-Problem.
Ich möchte einen Container ausführen, in dem es ein vxLAN-gestütztes Overlay gibt. Aber für Ziele außerhalb des Overlays möchte ich den Container per NAT ausgeben, z. B. ins öffentliche Internet.
Ich sehe drei Möglichkeiten, dies zu tun:
Gedanken? Ist dies im Geltungsbereich oder außerhalb des Geltungsbereichs für Flanell?
Die zweite Option erscheint vernünftig. Ich habe das Gefühl, dass wir uns auf systemd-networkd stützen können, um diese Netzwerkroute zu konfigurieren, nachdem wir die Flanellbrücke aufgerufen haben.
@eyakunovich hat wahrscheinlich eine Meinung dazu.
Es gibt bereits eine Option, die etwas sehr Ähnliches wie 2 macht. Wenn Sie flanneld mit --ip-masq
ausführen, fügt es eine IP-Masquerade-Regel für Verkehr hinzu, der aus Containern kommt und ins Internet geht. Genauer gesagt handelt es sich um Datenverkehr, der innerhalb des Overlay-Adressraums entstand, aber außerhalb davon bestimmt war.
Die Option ist nicht dokumentiert (muss behoben werden), da ich darauf gewartet habe, dass Docker meine Hinzufügung von --ip-masq
mit dem Docker-Daemon zusammenführt. Dies ermöglicht es, den Docker-Daemon mit --ip-masq=false
und flanneld mit --ip-masq
auszuführen. Andernfalls installiert Docker auch eine IP-Maskierungsregel für Datenverkehr, der von docker0 kommt.
Docker 1.3, das kürzlich veröffentlicht wurde, hat die Option --ip-masq
.
Danke das funktioniert bei uns!
Hilfreichster Kommentar
Es gibt bereits eine Option, die etwas sehr Ähnliches wie 2 macht. Wenn Sie flanneld mit
--ip-masq
ausführen, fügt es eine IP-Masquerade-Regel für Verkehr hinzu, der aus Containern kommt und ins Internet geht. Genauer gesagt handelt es sich um Datenverkehr, der innerhalb des Overlay-Adressraums entstand, aber außerhalb davon bestimmt war.Die Option ist nicht dokumentiert (muss behoben werden), da ich darauf gewartet habe, dass Docker meine Hinzufügung von
--ip-masq
mit dem Docker-Daemon zusammenführt. Dies ermöglicht es, den Docker-Daemon mit--ip-masq=false
und flanneld mit--ip-masq
auszuführen. Andernfalls installiert Docker auch eine IP-Maskierungsregel für Datenverkehr, der von docker0 kommt.Docker 1.3, das kürzlich veröffentlicht wurde, hat die Option
--ip-masq
.