Нужно высунуть наружу один порт с машины с серым IP. У меня есть белый IP 212.122.221.222, серый IP той машины 192.168.1.1, порт, который нужно высунуть наружу 2345.
Правильно я понимаю, что для того чтобы все обращения из вне по порту 2345 попадали на 192.168.1.1:2345 достаточно одного правила:
iptables -t nat -A PREROUTING -p tcp -d 212.122.221.222 --dport 2345 -j DNAT --to-destination 192.168.1.1:2345
ip forwarding разрешён
# cat /proc/sys/net/ipv4/ip_forward 1
Этого достаточно, чтобы сервис работающий на 192.168.1.1:2345 был доступен из интернетов? Маршрутизация настроена.