iptablesが着信IPを別の宛先IP問題にルーティングする問題

iptablesが着信IPを別の宛先IP問題にルーティングする問題

テスト設定があります。

  • サーバー1:1.1.1.1
  • サーバー2:2.2.2.2
  • クライアント:3.3.3.3

1.1.1.1サーバーからHTTP要求を作成するためにクライアントIP 3.3.3.3を取得しようとしています。しかし、私は1.1.1.1サーバーがこの要求を実際のHTTPDサーバー2.2.2.2に転送したいと思います。

私は2.2.2.2がHTTP応答を使用してクライアント3.3.3.3と直接通信したいと思います。

私の考えでは、HTTPリクエストを受け入れてからリクエストを2.2.2.2に渡し、2.2.2.2に応答するようにしてから、3.3.3.3に戻り、この問題を解決するには1.1.1.1が必要だと思います。それ以外の場合、クライアント3.3.3.3は2.2.2.2で応答を受け取りますが、なぜ1.1.1.1ではなく2.2.2.2が応答して無視するのか疑問に思いますか?

iptablesとにかく、1.1.1.1で試したことは次のとおりです。

iptables -t nat -A POSTROUTING -o venet0:0 -j SNAT --to-source 2.2.2.2
iptables -t nat -A PREROUTING -i venet0:0 -j DNAT --to-destination 2.2.2.2
iptables -t nat -A PREROUTING -d 3.3.3.3 -j DNAT --to-destination 2.2.2.2
iptables -t nat -A POSTROUTING -s 2.2.2.2 -j SNAT --to-source 3.3.3.3

これは変わっていないようです。

答え1

私はそれを見つけました:

iptables -t nat -A PREROUTING -d 3.3.3.3 -j DNAT --to-destination 2.2.2.2
iptables -t nat -A POSTROUTING -s 2.2.2.2 -j SNAT --to-source 3.3.3.3

関連情報