IPv6
Internet Protocol version 6 (IPv6) is the latest revision of the Internet Protocol (IP) and
the first version of the protocol to be widely deployed. IPv6 was developed by the
Internet Engineering Task Force (IETF) to deal with the long-anticipated problem of IPv4
address exhaustion.
Why New IP Version?
So far, IPv4 has proven itself as a robust routable addressing protocol and has served us
for decades on its best-effort-delivery mechanism. It was designed in the early 80’s and
did not get any major change afterward. At the time of its birth, Internet was limited only
to a few universities for their research and to the Department of Defense. IPv4 is 32 bits
long and offers around 4,294,967,296 (232) addresses. This address space was considered
more than enough that time. Given below are the major points that played a key role in
the birth of IPv6:
itself.
IPv6 - Addressing Modes
In computer networking, addressing mode refers to the mechanism of hosting an address
on the network. IPv6 offers several types of modes by which a single host can be
addressed. More than one host can be addressed at once or the host at the closest distance
can be addressed.
Unicast
In unicast mode of addressing, an IPv6 interface (host) is uniquely identified in a network
segment. The IPv6 packet contains both source and destination IP addresses. A host
interface is equipped with an IP address which is unique in that network segment.When a
network switch or a router receives a unicast IP packet, destined to a single host, it sends
out one of its outgoing interface which connects to that particular host.
1
Multicast
The IPv6 multicast mode is same as that of IPv4. The packet destined to multiple hosts is
sent on a special multicast address. All the hosts interested in that multicast information,
need to join that multicast group first. All the interfaces that joined the group receive the
multicast packet and process it, while other hosts not interested in multicast packets
ignore the multicast information.
Anycast
IPv6 has introduced a new type of addressing, which is called Anycast addressing. In this
addressing mode, multiple interfaces (hosts) are assigned same Anycast IP address. When
a host wishes to communicate with a host equipped with an Anycast IP address, it sends a
Unicast message. With the help of complex routing mechanism, that Unicast message is
delivered to the host closest to the Sender in terms of Routing cost.
Let’s take an example of www.cisco.com Web Servers, located in all continents. Assume
that all the Web Servers are assigned a single IPv6 Anycast IP Address. Now when a user
from Europe wants to reach www.cisco.com pointthe DNS points to the server that is
physically located in Europe itself. If a user from India tries to reach www.cisco.com, the
DNS will then point to the Web Server physically located in Asia. Nearest or Closest
terms are used in terms of Routing Cost.
2
Address Structure
An IPv6 address is made of 128 bits divided into eight 16-bits blocks. Each block is then
converted into 4-digit Hexadecimal numbers separated by colon symbols.
For example, given below is a 128 bit IPv6 address represented in binary format and
divided into eight 16-bits blocks:
0010000000000001 0000000000000000 0011001000111000 1101111111100001
0000000001100011 0000000000000000 0000000000000000 1111111011111011
Each block is then converted into Hexadecimal and separated by ‘:’ symbol:
2001:0000:3238:DFE1:0063:0000:0000:FEFB
Even after converting into Hexadecimal format, IPv6 address remains long. IPv6
provides some rules to shorten the address. The rules are as follows:
Rule.1: Discard leading Zero(es):
In Block 5, 0063, the leading two 0s can be omitted, such as (5th block):
2001:0000:3238:DFE1:63:0000:0000:FEFB
Rule.2: If two of more blocks contain consecutive zeroes, omit them all and replace with
double colon sign ::, such as (6th and 7th block):
2001:0000:3238:DFE1:63::FEFB
Consecutive blocks of zeroes can be replaced only once by :: so if there are still blocks of
zeroes in the address, they can be shrunk down to a single zero, such as (2nd block):
2001:0:3238:DFE1:63::FEFB
IPv6 - Special Addresses
Version 6 has slightly complex structure of IP address than that of IPv4. IPv6 has
reserved a few addresses and address notations for special purposes. See the table below:
3
• As shown in the table, the address 0:0:0:0:0:0:0:0/128 does not specify anything
and is said to be an unspecified address. After simplifying, all the 0s are
compacted to ::/128.
• In IPv4, the address 0.0.0.0 with netmask 0.0.0.0 represents the default route. The
same concept is also applied to IPv6, address 0:0:0:0:0:0:0:0 with netmask all 0s
represents the default route. After applying IPv6 rule, this address is compressed
to ::/0.
• Loopback addresses in IPv4 are represented by 127.0.0.1 to 127.255.255.255
series. But in IPv6, only 0:0:0:0:0:0:0:1/128 represents the Loopback address.
After loopback address, it can be represented as ::1/128.