IPv6
IPv6 (Internet Protocol Version 6) is the version of internet protocol which supports the 128-bit IP addresses. It has been developed as the next generation protocol to increase the 4 billion IP Addresses available and it will eventually replace the nearly exhausted IPv4, which supports 32-bit address apace.[1] IPv6 has been developed to provide advantages over the current internet protocol. It is expected to solve several network problems by eliminating the need for Network Address Translation (NAT).
Background[edit | edit source]
As early as 1990, internet experts predicted that the 4 billion available IP addresses under the IPv4 is not enough to accommodate the rapid growth of internet users worldwide. During the Internet Engineering Task Force Meeting(IETF) in Vancouver in 1990, Phil Gross, Chairman of the Internet Steering Group (IESG) together with Frank Solensky and Sue Hares informed that the Class B space will be exhausted as early as March 1994. The solution to the problem is to assign multiple Class C address.This expansion signaled a great problem which would mean deciding to whether to limit the size and growth rate of the internet or to disrupt the network by changing new strategies or technology.[2]
In 1991, the Internet Architecture Board (IAB) recommended the need for additional address flexibility. Based of this recommendation, the Internet Engineering Task Force (IETF) formed the Routing and Addressing (Road) Group to examine the consumption of address space and the exponential growth in inter-domain routing entries. [3] The IETF Road GroupThe Road Group enumerated three possible serious problems which include:[4]Exhaustion of the class B network address space, Growth of routing tables in Internet routers beyond the ability of current software, hardware, and people to effectively manage and Eventual exhaustion of the 32-bit IP address space.It also recommended immediate and long term solutions which include the adoption of CIDR route aggregation proposal, reducing the growth rate of routing table and called for a call for proposals "to form working groups to explore separate approaches for bigger Internet addresses."[5]
In 1993, IETF formed the Internet Protocol Next Generation (IPng) Group to evaluate the proposals and it will be responsible in determining how to proceed in selecting a successor to the IPv4.IPng evaluated and reviewed the proposals of CATNIP,SIPP and TUBA. After numerous discussion the IPng Directorate recommended the adoption Simple Internet Protocol Plus (SIPP) Spec. (128 bit version) as the basis for the next generation of Internet Protocol. The version number 6 was assigned by IANA and it was officially called IPv6.[6]
IPv6 Working Group[edit | edit source]
The IPv6 Working Group was created by the IESG as the IP Next Generation (IPng) working group to implement the recommendations of the IPng Area Directors set forth during the IETF meeting on July 1994 as described in RFC 1752 entitled, The Recommendation for the IP Next Generation Protocol. The IPv6 working group's primary role is to oversee the specification and standardization of IPv6.[7]
Features of IPv6[edit | edit source]
Based on the published RFC 1883, IPv6 has the following capability:[8]
- Expanded addressing capabilities of 128 bits, a larger number of addressing nodes and a simpler auto configuration of addresses.
- Header Format Simplification
- Improved Support for Extensions and Options
- Flow Labeling Capability
- Authentication and Privacy Capabilities
IPv6 Address Notation[edit | edit source]
An IPv6 address is written in hexadecimal quartets separated by colon for example: 2001:cdba:1900:0000:0000:0000:1757:3618 If there is a four-digit group of zeroes within an IPv6 address, it can be reduced to a single zero and delete the group of 4 zeroes and the address can be written as:2011:cdba:1900:0:0:0:1757:3818 or 2001:cdba:1900:3257:9652[9]
Types of IPv6 Addresses[edit | edit source]
IPv6 has three types of addresses which include a Unicast address, which serves as a single interface identifier and it is delivered to the interface identified by the address; Multicast Address, an identifier for a group/set of interfaces that may belong to the different nodes delivered to multiple interfaces and the Anycast addresses, an identifiers for a set of interfaces that may belong to different nodes and it is delivered to any of the interfaces identified by the address.[10]
IPv6 Special Addresses[edit | edit source]
The next generation Internet Protocol version 6 has special address which include:[11]
- ::/96 The zero prefix denotes addresses that are compatible with the previously used IPv4 protocol.
- ::/128 An IPv6 address with all zeroes in it is referred to as an unspecified address and is used for addressing purposes within a software.
- ::1/128 referred as loop back address and is used to refer to the local host. An application sending a packet to this address will get the packet back after it is looped back by the IPv6 stack. The local host address in the IPv4 was �127.0.0.1�.
- 2001:db8::/32 This is the official documentation prefix allowed by IPv6 which denotes that the address is only an example
- fec0::/10 is a site-local prefix offered by IPv6 which implies that the address is valid only within the local organization.The use of this prefix is discouraged by RFC
- fc00::/7 referred as the Unique Local Address (ULA) which are routed only within a set of cooperating sites. It was introduced to replace the site-local addresses and provides a 40-bit pseudorandom number which lessens the risk of address conflicts.
- ff00::/8 is a prefix used to automatically denote a multicast addresse
- fe80::/10 is a link-local prefix offered by IPv6 signifying that the address is valid only in the local physical link.