The IPv4 IP addressing has been into existing since the last 3 decades. Its availability has become scarce due its extensive usage for internet accessible devices and equipment’s. The need of IPv6 basically originates from the limitations of IPv4. The need for IPv6 is not recently evolved. This has been going on since years and has been delayed with the evolution of new technologies like NATing and subnetting.
Internet Protocol version 6 (IPv6) is the next-generation Internet Protocol version designated as the successor to IPv4. Designed in the 1970s, IPv4 was initially deployed over a network of few nodes. The 1990s saw its deployment to a large base of end-users, stretching its capabilities. It is the first experimental implementation used in the Internet and remains still predominantly in use. This current version of the Internet Protocol, IPv4, has been in use for almost 30 years (started from 1981 with RFC 791) and exhibits some challenges in supporting emerging demands for address space cardinality, high-density mobility, multimedia, and strong security.
With IPv4 addresses expected to run out in 2012, only 0.2% of Internet users still have native IPv6 connectivity. This needs to be changed soon.
On 8 June 2012 World IPv6 Day, Google along with major web companies such as Facebook and Yahoo!, enabled IPv6 on their main websites for 24 hours.
Before we move forward lets us understand how the IPv6 address is represented.
IPv6 – Address Representation
It is very important to understand how IPv6 IP addresses are structured. It is already widely known that IPv6 with its 128 bits notation is much larger than the existing IPv4 counterpart and therefore provides a larger number of IP address spaces.
The IPv6 address can be represented in the binary format as a string of 0s and 1s. A hexadecimal representation shortens the 128-bit string to 32 characters. Further, the string of 32 hexadecimal characters is segmented into 8 groups of 4 characters (or 16 bits) separated by a colon (:).
The following two additional rules were introduced to further optimize the IPv6 address representation:
The elimination of leading 0s – Within each group of 16 bits between two colons, the leading 0s can be eliminated. This means that you can write :00A1: as :A1:
The elimination of consecutive 0s – You can collapse consecutive all-0 groups of 16 bits between consecutive colons. In this case, :0000:0000:0000: becomes ::
The above rules lead to a unique compressed representation of an address. For this reason, the consecutive-0s rule can be applied only once It is important to mention that “:” is a meaningful character in the Uniform Resource Locator (URL), where it separates the port number from the address. To avoid confusion, the IPv6 address in a URL is enclosed in brackets, as shown in the following example:
More examples on IPv6 interpretation:
2031:0000:130F:0000:0000:09C0:876A:130B >>> 2031:0:130f::9c0:876a:130b
FF01:0:0:0:0:0:0:1 >>> FF01::1
0:0:0:0:0:0:0:1 >>> ::1
0:0:0:0:0:0:0:0 >>> ::
IPv6 – Address Types
Following are the three types of IPv6 addresses:
The unicast address identifies a single node and as a result traffic destined to a unicast address is forwarded to only this node. For load balancing, multiple nodes can use the same address.
The following are different types of unicast addresses:
Global Unicast Addresses: These are publicly routable addresses and follow the same pattern as in IPv4.
Link-Local Addresses: These are not meant for routing and are similar to the private addresses in IPv4.They are used for on-link communication as well as link operation processes such as locating neighbors or routers.
Unique Local Addresses: These addresses are also intended for non-routing purposes, but they are nearly globally unique. Unique local addresses are designed to replace site-local addresses.
Note: Global unicast addresses are likely to coexist with other types of unicast addresses in a given interface. For example, users within an enterprise need to exchange information both within the private intranet and with resources on the Internet.
Multicast received widespread attention during the development of IPv6 when it replaced broadcast addresses in the control-plane messages, thus becoming a critical part of IPv6 network operation. The larger address space provides plenty of globally unique multicast group addresses to facilitate the deployment of multicast services. A multicast address identifies a group of interfaces. A packet with a multicast destination address is delivered to all the group members. Scoping is a powerful feature built in the IPv6 multicast address architecture. It provides routers with the information needed to contain the multicast traffic within the appropriate domain. Table 1 lists the values that are currently defined for the 4-bit scope field.
When the same unicast address is assigned to multiple interfaces, typically belonging to different nodes, it becomes an anycast address. Because anycast addresses are structurally indistinguishable from unicast addresses, a node has to be separately configured to understand that an address assigned to its interface is an anycast address. A packet with an anycast DA is routed to the nearest interface configured with it. An anycast address cannot be used as the SA of a packet. Anycast is currently used to virtually replicate important network resources, such as Domain Name System (DNS) root servers, web servers, and multicast rendezvous points (RPs), thus providing a level of redundancy and load sharing. IPv6 went beyond this concept in that it defined a set of reserved addresses for each unicast prefix to facilitate the future use of anycast addresses.
IPv6 IP addressing has many features additional that are not available in the existing IPv4 addresses
The following are the enhancement features available in IPv6. These features make IPv6 IP addressing a more convenient and robust than the IPv4:
IPv6 plug and play Configuration
IPv6 supports plug and play auto configuration for its host terminals. It works with or without a DHCP server. The hosts on the link will automatically get a link-local addresses and do not need any DHCP server such as a router. While on the link the host will automatically get an IPv6 prefix, default router address, hop limit and validity lifetime of the address. The devices like routers and servers should be manually configured.
Some latency sensitive applications don’t work well over NATing. With large number of IP addresses in IPv6 the application can be run seamless without NATing to avoid latency and performance issues.
Minimized overhead in header
Minimum overheads in the IPv6 header is one of the important factor considered during its design to ensure better and economic processing of traffic at the neighboring routers. The formatting of the IPv6 header is such that only the essential fields are placed in the header to reduce the overhead.
QoS support in IPv6
The IPv6 addressing uses a high sophisticated approach for handling high priority data packets different than the traditional best effort method used in IPv4. additional flow label fields are used for handling special traffic and there is a query done from the source to the destination to determine the possible
payload the path can handle. Accordingly the IPv6 will manage its parameters for reducing latency and minimize fragmentation. The QoS is supported in the IPSec environment as well since the special field labels are present in the header.
IPSec Security for IPv6
While IPSec was a optional security requirement for communication, it is a part of standard compliance security requirement in IPv6.
Also below is a brief comparison between both the versions –
Recommended Reading –