You forgot one important thing..

Subnets ???

Every Ip number can be shared by a sub network using a proxy server. And one of them can again be shared ...and one of them can be shared again and one...