Network Address Translation.

A good start to hiding multiple desktops behind a hardware router or linux box configured as a router/firewall that has a single, public IP Address.

See Linux Router Project on the Linux Documentation Project page.