In order for a computer to connect to a TCP/IP network it must have an IP Address. The majority of home users who connect to the Internet will receive this IP Address from their Internet Service Provider (ISP), who has a large pool of IP Addresses that it can allocate to its customers.
An ISP gets these public IP Addresses from the Internet Corporation for Assigned Names and Numbers (ICANN), which is a private non-government organisation. ICANN took over the role of allocating Internet address space from the U.S. government controlled Internet Assigned Numbers Authority (IANA).
There are two current versions of IP Addresses: