IP テーブル ポート転送 MASQUERADE では何が起こりますか?

IP テーブル ポート転送 MASQUERADE では何が起こりますか?

次のような設定になっています:

クライアント:

  • 192.168.1.* の IP アドレス。

Raspbian ゲートウェイ:

  • 192.168.1.20

Raspbian サーバー:

  • 192.168.1.19

サーバーはポート 8000 でライブ カメラ フィードをホストしています。

このライブ フィードにゲートウェイ経由でアクセスし、iptables を使用してこれを実現したいと考えています。

次のルールを追加しました:

sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 8000 -j DNAT --to-destination 192.168.1.19

192.168.1.20:8000 にアクセスすると、接続がタイムアウトになります。少し読んでみると、応答を処理する別のルールを作成する必要があることがわかりました。これは、SNAT または MASQUARADE を使用して実行できます。

「クライアント」は異なる IP アドレスを持つことができるため、返信アドレスをハードコードしたくありません。しかし、TCP 要求で提供された送信元 IP アドレスを「記憶」し、応答でそれを「送信者への返信」アドレスとして戻すように iptables に指示するにはどうすればよいでしょうか。

試してみた:

sudo iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE

動作はしますが、今何をしているのかわかりません。MASQUERADE は何をしていますか?

関連情報