IPv6 is here but it is currently handled in much the same way as IPv4. IPv4 supports 4.3 billion distinct machines (strictly interface identifiers because a machine can, and often does, have more than one IPv4 address but it is easier to think of them as machines). IPv4 is running out more because of the way businesses have sliced and diced the numbers than because 4.3 billion is too small a number but it would have run out eventually anyway.
IPv6 supports a lot more machines; three hundred forty undecillion, two hundred eighty-two decillion, three hundred sixty-six nonillion, nine hundred twenty octillion, nine hundred thirty-eight septillion distinct machines or 2^128 or 340,282,366,920,938,000,000,000,000,000,000,000,000. A good way to think about this number is that it means that every atom on the surface of Planet Earth could have about forty thousand distinct IPv6 addresses.
IPv6 is broken into in two pieces, a subnet prefix (64bit) and an interface identifier (64bit). This is still pretty good though and it means that there is a fundamental difference between IPv4 and IPv6 that will bring the Internet closer to being the heterarchical network of its creators' dreams:
If you generate a random IPv6 address, you have fifty thousand times better odds of it being unique than the odds of you winning the lottery. This means you don't need to rely upon your ISP providing you with an IP address; you can generate your own. If you are really paranoid, you can check to see if it already exists and pick another.
Using your address you can communicate with any other address on the Internet (assuming it is willing to talk to you).
With IPv6, Internet anonymity has become a lot easier to achieve.
Australia: 07 3103 2894
International: +61 410 545 357