Due to this address-space problem, ISPs provide home users with a single IP
address per connection.
When we want to connect several computers using a normal connection,
we give the computers in the internal network a "virtual" IP, which is
in one of the ranges reserved for internal networks, and make one of the
computers redirect the packets from the external interface to the correct
owner in the internal network.
This proccess is called Masquerading. During this proccess, the
destination and source addresses of the packets are translated, this is
called NAT (Network Address Translation), and can be used for
variety of other network magics.