Zend certified PHP/Magento developer

Can router give the same public IP to 2 different networks?

I have set up a virtual machine and specified an IP address for it that is outside my home network. I cannot ping this machine and access it through the Internet from my host machine. I presume it is due to the fact that my ISP gives out only one public IP for my entire network and thus my VM is left without one.

Is there any scenario where the same public IP can be used for different networks?

I guess if we make sure distinct ports are used it could theoretically work out, but is there any place where this occurs already in practice?