Great article. However, I'm in the same boat as Tweltin here. Seems the features are lacking and I can't understand who would want to map all your external ip addresses (0.0.0.0) to a single internal address and port. In what scenario would that ever be useful, especially when DNS only points to a single external address? I guess it's better than nothing and better than ICS.
It would be more useful if you could nat all the external ports from a single external ip, rather than all the external ips to a single internal ip/port.
I really ran into a roadblock tonight when one of the requests outbound picks ANY (AFAIK) external ip address and then the recipient address is expecting a specific address (and errors otherwise), although that's probably a different issue altogether. Maybe I could change the DNS entry to the Ip it thinks it is now, but it's broken again when my guest picks a different external Ip to go outbound on to make that request.
I had all of Tweltin's pain when trying to map two single external Ips to two single internal Ips on the same port. The only way it would work is if you nat them on different external ports (and using ALL external Ips for each internal Ip). I ended up with an haproxy load balancer and an extra guest I didn't really want, so I could keep them on the same external port (i.e. only one IP being Natted). This NetNat stuff seems to be half-baked and requiring work around after work around.