An Internet Protocol address (IP address) is a unique numerical identifier used for communication between devices connected to a computer network. It is used for identification and location addressing. To send data from one computer to another, data packets must travel across the network containing the IP addresses of both devices.
In 1983, IPv4 was developed and deployed to use worldwide. It uses 32-bits for its Internet addresses. That means it can support around 4.29 billion addresses (2^32 in total). That may seem like a lot, but all these IP addresses have now been assigned to various institutions and caused IPv4 depletion crisis. This led to the redesign of the Internet Protocol which became eventually known as Internet Protocol Version 6 (IPv6) in 1998 as a draft standard. Today, these two versions of the Internet Protocol are used simultaneously. The gap in version sequence between IPv4 and IPv6 resulted from the assignment of version 5 to the experimental real-time streaming protocol in 1979. In order to avoid any confusion, it was decided to not use IPv5 and name the new IP protocol IPv6.
IPv6 was established as internet standard in 2017. It uses 128bit addressing and can create up to 340 undecillion (that’s 340 trillion trillion trillion) unique addresses (2^128 in total). While that sounds unimaginably vast, it is necessary, because the number of connected devices is exploding and it is not just your smartphone and tablet; your washing machine, refrigerator, wristwatch and car will be connected too and each one needs an IP address.
The following table summarizes the key differences between the two versions of the protocol:
|Address size||32-bit address length||128-bit address length|
|Address format||Dotted decimal notation: |
Where 0<=nnn<=255, and each n is a decimal digit. Leading zeros can be omitted and the maximum number of print characters is 15, not counting a mask.
|Hexadecimal notation: |
Where each x is a hexadecimal digit, representing 4 bits. Leading zeros can be omitted and the double colon (::) can be used once in the text form of an address to designate any number of 0 bits.
|Address mask||It is used for the designated network from the host portion.||Not used.|
|Address configuration||Manual and DHCP address configuration. A newly installed system must be configured before it can communicate with other systems.||Self-configuring using stateless address autoconfiguration (SLAAC). Can be also manually configured.|
|Address types||Three basic types: |
– unicast address
– multicast address (uses class-type address space for multicast use (22.214.171.124/4))
– broadcast address
|Three basic types: |
– unicast address
– multicast address (uses an integrated address space for multicast, at FF00::/8)
– anycast address
|Address lifetime||Generally, not an applicable concept, except for addresses assigned using DHCP.||Two lifetimes: preferred and valid, with the preferred lifetime always <= valid. After the preferred lifetime expires, the address is not to be used as a source IP address for new connections.|
|IP header||Variable length of 20-60 bytes, depending on IP options present.||Fixed length of 40 bytes. There are no IP header options. Generally, simpler than the IPv4 header.|
|Minimum packet size||576 bytes||1280 bytes|
|Internet Protocol Security (IPsec)||Optional||Inbuilt|
|Multicasting||Optional (although commonly implemented) feature||Part of the base specification|
|Mobility and interoperability||Constrained||Embedded|
|Encryption and authentication||Not provided||Provided|
IPv6 represents a considerable improvement if compared to the old IPv4 protocol version. It provides innumerable features that improve both the overall functionality as well as some specific security functions. It offers stateless address auto-configuration for easier network administration, improved header structure with less processing overhead, network layer security built-in (IPsec), and most importantly extended address space from 32 to 128 bits.
Major steps are being made towards implementation of the new protocol, but a complete IPv6 Internet is still in the future.