Исправление DiKeert, (текущая версия) :
Все, что нужно сделать - это Inbound NAT.
На промежуточной машине, которая NATит делаем:
sysctl net.ipv4.ip_forward=1
iptables -t nat -A PREROUTING -p tcp -i eth0 --dport "${TARGET_PORT}" -j DNAT --to-destination "${target}"
iptables -A FORWARD -i eth0 -p tcp -d "${target}" --dport "${TARGET_PORT}" -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -j MASQUERADE
для одного порта. Если больше портов, то соответственно повторям 2 средние строчки столько сколько надо. Обрати внимание на то, что сделать NATится все, что прилетает на eth0, возможно тебе будет нужно заменить это на свой интерфейс.
У меня так 80-й порты пробрасывается. Видеть оно его будет как внутренний IP. Хз как настроить, что бы внешний прикидывался. Не уверен, что это вообще возможно без чорной магии на BGP или что-то вроде этого.
Исправление DiKeert, :
Все, что нужно сделать - это Inbound NAT.
На промежуточной машине, которая NATит делаем:
sysctl net.ipv4.ip_forward=1
iptables -t nat -A PREROUTING -p tcp -i eth0 --dport "${TARGET_PORT}" -j DNAT --to-destination "${target}"
iptables -A FORWARD -i eth0 -p tcp -d "${target}" --dport "${TARGET_PORT}" -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -j MASQUERADE
для одного порта. Если больше портов, то соответственно повторям 2 средние строчки столько сколько надо. Обрати внимание на то, что сделать NATится все, что прилетает на eth0, возможно тебе будет нужно заменить это на свой интерфейс.
Исходная версия DiKeert, :
Все, что нужно сделать - это Inbound NAT.
На промежуточной машине, которая NATит делаем:
sysctl net.ipv4.ip_forward=1
iptables -t nat -A PREROUTING -p tcp -i eth0 --dport "${TARGET_PORT}" -j DNAT --to-destination "${target}"
iptables -A FORWARD -i eth0 -p tcp -d "${target}" --dport "${TARGET_PORT}" -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -j MASQUERADE
для одного порта. Если больше портов, то соответственно повторям 2 средние строчки столько сколько надо. Обрати внимание на то, что сделать NATится все, что прилетает на eth0, возможно тебе будет нужно заменить это на свой интерфейс.