We have many legacy applications that can only send reports via printing. We have an application called RPM that can receive these print jobs and convert them to a more useful medium (e.g. PDF attachment in e-mail).
The legacy applications can only send the print jobs on port 9100. RPM can receive on multiple ports. RPM is running on a Windows XP box.
Attached is a diagram of what I'm thinking would work. The "router" would have multiple IP addresses, one for each legacy application and provide port address translation.
Ideally, I would like to have something I can install on the RPM machine itself that would allow me to perform the port address translation. If that's not possible, the "router" should be a virtual machine.