
Auf einem dedizierten Server mit mehreren Containern hinter NAT versuche ich, den Ausgabe-/Ausgehenden Datenverkehr von einem der Container über eine bestimmte virtuelle Schnittstelle zu leiten, die an die Hauptschnittstelle angeschlossen ist. Beiden Schnittstellen sind öffentliche IPs zugewiesen.
Die Kette würde wie folgt aussehen:
OpenVZ-Container (10.10.10.2) > Hostsystem (eth0:0; IP:1.2.3.4) > Internet
im Gegensatz zum aktuellen
OpenVZ-Container (10.10.10.2) > Hostsystem (eth0; IP:5.6.7.8) > Internet
Ich glaube, das kann mit einer iptables Postrouting-Regel erreicht werden
Antwort1
Wie sich herausstellte, war eine einfache Postrouting-Regel die Lösung.
iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o eth0 -j SNAT --to 1.2.3.4
Ich musste auch eine Reihe von MASQUERADE-Postrouting-Regeln löschen, die nur ein großes Chaos verursachten.