переадресация портов таблиц IP что происходит при MASQUERADE?

переадресация портов таблиц IP что происходит при MASQUERADE?

У меня следующая настройка:

Клиент:

  • ДЧП 192.168.1.*

Шлюз 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-адреса. Но как мне сказать iptables "запомнить" исходный IP-адрес, который был предоставлен в запросе tcp, и вернуть его как адрес "возврата отправителю" в ответе?

Я только что попробовал:

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

Это работает, но я понятия не имею, что я делаю сейчас. Что делает MASQUERADE?

Связанный контент