Depends on the protocol. For web, sure - for ssh, nope, since the protocol doesn't indicate which machine it's trying to connect to and so you don't know where to proxy it to.
Certain UDP-based protocols may be hairier, though.
> you now have multiple real-world IP addresses that people can get to
In your new situation that is not the one in the article, you can just use different ports.