Why IPv6 :
As we know IPv4 gives us only 32 bits which means 4 billion addresses sounds like very big number even the creators of IPv4 though the same and will never run out of addresses but with the popularity of the internet and exponential economic growth in some emerging countries like India and China we are running out of addresses ! hence the IPv6 came as a permanent solution.
IPv6 Address Format :
.IPv6 gives us 128 bits for the address representation so available address are some 340 trillion trillion trillion
.IPv6 is represented in hexadecimal dividing 128 bits into 8 chunks as below
Example : 3ffe:1994:0100:000a:0000:0000:2500:0d0b
.For easy management and representation of this gigantic address few rules are in place , first one is leading zeros can be ignored so the above address will now become as below
. You can also represent consecutive zeros with a double column so the above address now becomes as below
As you can see after applying those rules it became somewhat manageable for representation purpose.
IPv6 Address Types :
There are three types of IPv6 addresses like Unicast , Multicast and Anycast available. There is no broadcast address in IPv6 but the functionality will be achieved by all nodes Multicast address.
Multicast , Unicast addresses need no introduction of their functionality.
In Unicast there are two types 1. Global Unicast Address , 2. Local Unicast Address
Global Unicast Address is to the entire world so it’s scope is global but the Local Unicast Address scope is limited to the local link (broadcast domain) so it can use this address to communicate with the machines locally
Global Unicast Address always starts with 2xxx::/4 , 3xxx::/4s
Local Unicast Address always starts with FE80::/10
Multicast Address always starts with FF
Anycast address is a different concept , in here multiple nodes can have the same ip address.
Different physical servers which are providing the same service to the users can use the same address and it must be advertised by the routers and the routers always see them as the same destination with different costs.
IPv6 Header Format :
Version : Identifies the header as IPv6
Traffic Class : Same as TOS field in IPv4 for Qos purpose
Flow Label :
This bit is used to identify the traffic of a particular flow generally this is done at Layer 4 with the help of Port numbers but by accommodating this filed in the IP header gives the routers opportunity to identify each unique flow and may be route the traffic in the same path as the previous packet in the same flow to provide better Qos
Payload Length : Specifies the length of the payload, in bytes , that the packet is encapsulating.
Next Header : Specifies which header follows the IPv6 packet
Hop Limit : Same as TTL field in IPv4 but named appropriately
Source Address :
Destination Address :