В Windows например команда
netsh interface portproxy add v4tov4 listenport=3389 listenaddress=x.x.x.x connectport=3389 connectaddress=y.y.y.y
именно так и делает.
То есть в пакете внутри сети обратным адресом значится внутренний адрес Windows шлюза, а не адрес клиента в интернете.