How do IPv4 and IPv6 compare?
IPv4 addresses are small, and there are a relatively limited number of them. IPv6 addresses are large and there are so many of them we will never run out.
How big is an IP address
IPv4 addresses are 32-bit numbers assigned to computers to identify them on a network. These are typically what you will see on most devices you will interact with. Each of IPv4 address is broken down into four chunks, called “octets” because chunk is eight bits of the full address.
While there are a lot of IPv4 addresses, there just are not enough for everyone to have as many as they want. Not all of the IPv4 addresses are in use, and some are reserved, but there will not be any new IPv4 addresses. IPv6 was developed to replace IPv4, in order to fix the existing limitation on the number of addresses.
IPv6 addresses are much, much larger 128-bit numbers. They are written in eight sections, with each section being 16 bits long.
How many IPs are there
The total number of IPv4 addresses is both larger and smaller than you might think. There are a little more than four billion IPv4 addresses. However, with all the different computers on Earth, that is not enough for everything currently in use to have an IP without some kind of sharing.
(28)4 = 4,294,967,296 ≈ 4.29 x 109
Because IPv6 addresses are so much larger, there are many more IPv6 addresses. There are so many IPv6 addresses available that each grain of sand, each molecule in the universe, could have its very own address.
( 216)8 = 340,282,366,920,938,463,463,374,607,431,768,211,456 ≈ 3.40 x 1038
What does an IP look like
In standard IPv4 notation, there are four sections separated by periods (dots). Each section has a value between 0 and 255. This is the way you will most likely see and reference these numbers.
If we were to write an IPv4 address in binary (base2), you would see each of the eight individual bits that make up the four separate sections of the address.
By contrast, the common way of writing IPv6 addresses uses eight parts separated with colons. Each section has a value between 0, and FFFF. To write a 16-bit number you have to use both 0-9, and also A-F. This is why IPv6 addresses also have letters in them.
This numbering is called hexadecimal or base16. To write the same number in decimal notation (the more familiar base10), you would have numbers between 0 and 65535.
Looking at an IPv6 address in binary would look like the example below. You can see that each section has 16 bits, instead of the eight bits used by IPv4.
The above example is not the full address however. In a full IPv6 address, there would be six more sections for a total of eight.