Is it possible to have both public and private ip addresses assigned for
a zone such that internal network users pick up the private ip address
and the outside world gets the public ip address ?

I think the answer is no but ...