There are thousand of devices connecting to networks on a daily basis. We know that the IPv4 addressing scheme theoretically has only approximately 4.3 billion addresses. To fulfill the demand of devices connecting to the Internet, we have to find new ways. Unfortunately, IPv4 is going to run out of addresses very soon. However, the Classless Inter-Domain Routing (CIDR) and Network Address Translation (NAT) techniques are helpful to extend the IPv4 addresses. But, within a few years, we will run out of them also. Here, comes a new IP addressing scheme called IPv6 Address (Internet Protocol version 6) as the solution for this. IPv6 is a suite of protocols developed by Internet Engineering Task Force (IETF) to support more addresses.
IPv6 Address: Features and Characteristics
The IPv6 addressing scheme has many new features over the IPv4 addressing scheme. Some of the major features provided by the IPv6 addressing scheme are:
- It provides theoretically 3.4×10^38 unique addresses.
- The length of an IPv6 address is 128-bits.
- An IPv6 address can traverse through the Internet without using NAT or other translating techniques.
- It supports both the stateful and stateless autoconfiguration modes. Thus allowing to eliminate the use of DHCP server for an inter-segment communication.
- It does not use the concept of broadcasting. Instead of broadcasting, it uses a new transmission method called Anycast.
- IPv6 mobility feature allows wireless devices, such as PDAs and smartphones, to roam around the world and let them connected with the same IPv6 address.
- It provides built-in security features and does not require IPSec implementation.
- It provides better supports for Quality of Service (QoS).
- It uses Neighbor Discovery (ND) protocol that replaces the ARP protocol of IPv4 address.
- It uses AAAA host record for DNS name resolution.
IPv4 vs IPv6 Comparison
The following table lists the key differences between IPv4 and IPv6 addresses.
IPv6 Address Types
An IPv6 address can be categorized into the following three types:
- Unicast addresses: Used to provide one to one communication.
- Multicast addresses: Used to provide one to many (group) communication. The prefix for multicast addresses is FF00::/8.
- Anycast addresses: A special type of communication address in which a packet is delivered to the nearest of multiple interfaces.
Note: IPv6 does not use the concept of broadcasting.
IPv6 Address Scopes
Apart from the preceding IPv6 categories, an IPv6 address can be further divided into the following types in term of the network scope.
- Link-local Addresses: As the name suggests, the scope of this type of address is limited to the local link. It can only be used to connect nodes on the same subnet. The prefix for link-local addresses is FE80::/64.
- Site-local Addresses: These addresses are similar to IPv4 private addresses and are not routable on the Internet. The prefix for the site-local addresses is FEC0::/48.
- Global Addresses: These addresses are similar to IPv4 public addresses and used to provide Internet connectivity, globally.
Compressing an IPv6 Address
One of the major problems with the IPv6 address is its length. The more long address is more difficult to write and remember. However, IPv6 addresses use a technique called “Compressing Zero” to minimize the size of an IPv6 address. The leading zeros of an IPv6 address can be compressed.
The following figure displays how to simplify an IPv6 address using the compressing zero technique.
IPv6 Special Addresses
The following are some of the special IPv6 addresses that you should always remember.
- Loopback address: IPv6 uses 0:0:0:0:0:0:0:1 (or ::1 in the compressed form) address for the loopback testing. It is similar to the 127.0.0.1 IPv4 address.
- Invalid or unspecified address: The IPv6 unspecified address is 0:0:0:0:0:0:0:0 or a double colon (::). It is similar to the 0.0.0.0 IPv4 address.
- 6to4 address: It is used to provide communication between the IPv6 and IPv4 nodes over the IPv4-based network. The prefix for a 6to4 address is 2002::/16.
In this post, we have discussed the basic concepts, features, and characteristics of an IPv6 address. You are welcome to provide the suggestions that you have. Let me know if you have some useful features that we might have missed.