Не получается сделать проброс с помощью dnat iptables в локальной сети
В моей локальной сети находятся 3 машины.
1-ая машина под windows 10, на ней запускается tcp-клиент.
2-ая машина под ubuntu, на ней развернут iptables.
3-ая машина - конечный сервер под ubuntu, на ней развернуто приложение, которое ждет подключение tcp-клиента на каком-то порту (для примера 1111).
Необходимо сделать проброс:
1-ая машина -> 2-ая машина -> 3-ая машина
На 1-ой машине в клиенте указываю адрес назначения пакетов - адрес 2-ой машины и порт 1111. На 2-ой машине в iptables настраиваю 2 правила:
1. iptables -t nat -A PREROUTING –d <ip 2-ой машины> -p tcp --dport 1111 -j DNAT --to-destination <ip 3-й машины>
2. iptables -t nat -A POSTROUTING -p tcp –d <ip 3-й машины> --dport 1111 -j SNAT --to-source <ip 2-ой машины>
Но пакеты не доходят по машины 3. Соединение не устанавливается и клиент отрубается по таймауту. Подскажите, пожалуйста, что я делаю неправильно и что нужно сделать, чтобы соединение в итоге установилось?
Можно ли потом еще донастроить в такой схеме, чтобы пакеты терялись с заданной вероятностью?