IPv4 vs. IPv6
The Internet Protocol version 4, or IPv4, is the standard in the world today, but it is being replaced by the more advanced IPv6, to help solve the IP address exhaustion problem that is looming on the horizon. IPv4 uses 32 bits to define
each address, which, in total, is roughly four billion addresses. This was a huge number during its start, but with the internet growth, this address pool is expected to run-out soon. On the other hand, IPv6 uses 128 bits for each address. This means that IPV6 virtually is unlimited.
The problem of IP exhaustion forced people to come up with complex ways to save addresses. The complex algorithms can be confusing and hard for routers that need to translate each packet, and determine its desired destination. IPv4 is also impaired when working with mobile networks, where the device can move from one network to another. IPv6 solves these problems, as the huge number of addresses makes the complex algorithms unnecessary.
The difference between IPv4 and IPv6 that you will probably notice is very noticable: IPv4 uses four 1 byte decimal numbers, separated by a dot (i.e. 255.255.255.255), while IPv6 uses hexadecimal numbers that are separated by colons. Due to the incompatibility of IPv4 and IPv6, translations have been made to enable their interoperation, that leads to addresses that look like ::ffff:255.255.255.255.
Another pro of IPV6 is that it can take higher payloads.