This makes me think that having something underneath the application take care of multiple interfaces is likely a good idea.
We already do have something in that general direction, rserpool, which I think is something that's generally unknown and then often misunderstood by those who've heard of it. It doesn't, however, provide any kind of support for rendezvous or something similar for dealing with translated or otherwise gateway-needful addresses.
Melinda