IPv6 Primer - Part 1
This post is part of a series of posts to explain what IPv6 is and why people are actively talking about it and wanting it's adoption globally.
IPv6 is one of those technologies that has been talked about since the year 2000 and how it will replace IPv4 completely by 2025. It's now 2017 and there are plenty of people who have not heard of IPv6 at all and IPv4 is still going on (albeit in a reduced manner). IPv6 was proposed because back in the early 90s, some really smart people got together, did some projection on the growth of the Internet and came to the conclusions that the then current IPv4 was insufficient for the projected growth. As can be seen today, There were plenty of of ideas to extend the addressing scheme and newer ideas that broke away from the IPv4 mould. The main reasons for doing so was largely due to wanting to improve the what was perceived as shortcomings of IPv4 in itself. This is why IPv4 and IPv6 do not interchangeable and it is not merely a case of IPv6 being a drop in replacement.
I got into IPv6 back in 2008 and have worked with the Malaysian Governed to develop their IPv6 Deployment Guide together with a bunch of other really smart people. The purpose of this guide was to assist Government Ministries and Agencies in getting IPv6 deployed in their infrastructure. As part of my responsibilities, I was also running trainings, workshops and assisting the various Ministries and Agencies in ensuring their infrastructure is up to the task of getting IPv6 working in their environment.
For those who remember the OSI layer, IPv6 is at the Network Layer (Layer 3) just like IPV4. The Layer is where all routing takes place. Routing is the task of getting a packet from point A to point B using the best path.
An IPv6 address is 128 bits in length (2^128) which gives 340,282,366,920,938,463,463,374,607,431,768,211,456 (~ 3.4 * 10^38) addresses. We won't be running out of addresses anytime soon with this numbers. To also make it easier to manage, the address is split into 2 64 bit parts; the first 64 bit is the routable part of the address and the second 64 bit is the identifier of the device.
The next part of this series will explain the IPv6 packet structure. Stay tunes.