The depleting IPv4 addresses is one of the main reasons for a new IP version, IPv6. The size of an address in IPv4 address is 32-bit (4-bytes). This is increased much larger and the size of an address in IPv6 is 128 bits, which is four times longer than the 32-bit IPv4 address. The number of possible addresses in IPv4 is 2^32 (4,294,967,296) but in IPv6 it is 2^128 (3.4x10^38) addresses. Such a large amount of available IPv6 addresses ensure that we will never again run out of IPv6 addresses and it also allows multiple levels of hierarchy and flexibility in designing hierarchical unicast addressing and routing.
IPv4 addresses are 32-bit binary addresses, divided into 4-Octets (Bytes). This 32-bit large number is difficult to represent in binary format and therefore IPv4 addresses are represented in decimals, separated by a dot. An example of IPv4 address is 192.168.100.10. However, IPv6 addresses are so much larger than IPv4 addresses and even representing them in decimals is difficult. Hence the IPv6 addresses are represented in hexadecimal numbers, separated by a colon. An example of IPv6 address is 2001:0DB8:0000:0002:0022:2217:FF3B:118C.