
NAT の背後に複数のコンテナがある専用サーバーで、コンテナの 1 つからの出力/送信トラフィックを、メインの物理インターフェイスに接続された特定の仮想インターフェイスを介してルーティングしようとしています。両方のインターフェイスにはパブリック IP が割り当てられています。
チェーンは次のようになります。
OpenVZ コンテナ (10.10.10.2) > ホスト システム (eth0:0; IP:1.2.3.4) > インターネット
現在の
OpenVZ コンテナ (10.10.10.2) > ホスト システム (eth0; IP:5.6.7.8) > インターネット
これはiptablesのポストルーティングルールで実行できると思います
答え1
結局、単純なポストルーティングルールが役立ちました。
iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o eth0 -j SNAT --to 1.2.3.4
また、大きな混乱を引き起こしていた MASQUERADE ポストルーティング ルールもいくつか削除する必要がありました。