Есть локалка для нескольких виртуальных машин. Интернет доступен через NAT. Некоторые порты проброшены внутрь (у каждой машины свой набор). Нужно реализовать возможность подключения изнутри к сервисам за NAT по внешнему адресу.
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 DNAT tcp -- eth0 * 0.0.0.0/0 внешний_адрес multiport dports 3389 to:192.168.0.2
0 0 DNAT tcp -- eth0 * 0.0.0.0/0 внешний_адрес multiport dports 22,80,443 to:192.168.0.3
Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 SNAT all -- * eth0 192.168.0.2 0.0.0.0/0 to:внешний_адрес
0 0 SNAT all -- * eth0 192.168.0.3 0.0.0.0/0 to:внешний_адрес
Читал Destination NAT onto the same network в Netfilter HOWTO, но чего-то всё равно не хватает.