Назад | Перейти на главную страницу

Предварительная маршрутизация с помощью iptables, порт назначения на DHCP ip

У меня есть правило iptables, которое переводит запросы на один и тот же IP-адрес с разных внутренних хостов путем изменения исходного порта.

iptables -t NAT -A POSTROUTING -p TCP -d 173.32.1.2 --dport 873 \
-m state --state NEW,ESTABLISHED -j SNAT --to-source 173.32.1.1:44000-44300

Как мне обрабатывать ответы от этого хоста? Как я могу сопоставить порт назначения ответного пакета с IP-адресом внутреннего хоста, который его ожидает? Вот что у меня есть:

iptables -t NAT -A PREROUTING -p TCP -s 173.32.1.1 --sport 873 \
-m state --state ESTABLISHED -j DNAT --to-destination # what do I put here?

Пример того, чего я пытаюсь достичь:

Два хозяина, 192.168.1.3 и 192.168.1.4, оба пытаются установить соединение с 173.32.1.2. NAT изменяет адрес источника исходящих пакетов и порт источника соответственно на 173.32.1.1 : 44000 и 173.32.1.1 : 44001.

Цель 173.32.1.2 ответы на оба из них с адресом и портом назначения 173.32.1.1 : 44000 и 173.32.1.1 : 44001. Теперь я хочу переслать эти пакеты исходным отправителям, первым из которых 192.168.1.3 а второй 192.168.1.4.