The Internet has run out of Internet addresses… sort of. Perhaps you’ve heard the news: the last blocks of IPv4 Internet addresses have been allocated. The fundamental underlying technology that has powered Internet Protocol addresses (ever seen a number like 184.108.40.206 on the web? That’s an IP address) since the Internet’s inception will soon be exhausted.
A new technology will take its place, though. IPv4’s successor is IPv6, a system that will not only offer far more numerical addresses, but will simplify address assignments and additional network security features.
The transition from IPv4 to IPv6 is likely to be rough, though. Most people are unfamiliar with IPv4 and IPv6, much less the potential impact the switch to IPv6 may have on their lives.
That’s why we’ve compiled this short guide to IPv4 and the eventual transition to IPv6. We explain the two versions of IP and why they matter. We also go into detail on what you can expect in the next few years as billions of websites, businesses and individuals make the switch to the new era of the Internet.
What is Internet Protocol — IP?
IP (short for Internet Protocol) specifies the technical format of packets and the addressing scheme for computers to communicate over a network. Most networks combine IP with a higher-level protocol called Transmission Control Protocol (TCP), which establishes a virtual connection between a destination and a source.
IP by itself can be compared to something like the postal system. It allows you to address a package and drop it in the system, but there’s no direct link between you and the recipient. TCP/IP, on the other hand, establishes a connection between two hosts so that they can send messages back and forth for a period of time.
There are currently two version of Internet Protocol (IP): IPv4 and a new version called IPv6. IPv6 is an evolutionary upgrade to the Internet Protocol. IPv6 will coexist with the older IPv4 for some time.
What is IPv4 — Internet Protocol Version 4?
IPv4 (Internet Protocol Version 4) is the fourth revision of the Internet Protocol (IP) used to to identify devices on a network through an addressing system. The Internet Protocol is designed for use in interconnected systems of packet-switched computer communication networks
IPv4 is the most widely deployed Internet protocol used to connect devices to the Internet. IPv4 uses a 32-bit address scheme allowing for a total of 2^32 addresses (just over 4 billion addresses). With the growth of the Internet it is expected that the number of unused IPv4 addresses will eventually run out because every device — including computers, smartphones and game consoles — that connects to the Internet requires an address.
A new Internet addressing system Internet Protocol version 6 (IPv6) is being deployed to fulfill the need for more Internet addresses.
What is IPv6 — Internet Protocol Version 6?
IPv6 (Internet Protocol Version 6) is also called IPng (Internet Protocol next generation) and it is the newest version of the Internet Protocol (IP) reviewed in the IETF standards committees to replace the current version of IPv4 (Internet Protocol Version 4).
IPv6 is the successor to Internet Protocol Version 4 (IPv4). It was designed as an evolutionary upgrade to the Internet Protocol and will, in fact, coexist with the older IPv4 for some time. IPv6 is designed to allow the Internet to grow steadily, both in terms of the number of hosts connected and the total amount of data traffic transmitted.
IPv6 is often referred to as the “next generation” Internet standard and has been under development now since the mid-1990s. IPv6 was born out of concern that the demand for IP addresses would exceed the available supply.
While increasing the pool of addresses is one of the most often-talked about benefit of IPv6, there are other important technological changes in IPv6 that will improve the IP protocol:
- No more NAT (Network Address Translation)
- No more private address collisions
- Better multicast routing
- Simpler header format
- Simplified, more efficient routing
- True quality of service (QoS), also called “flow labeling”
- Built-in authentication and privacy support
- Flexible options and extensions
- Easier administration (say good-bye to DHCP)
Why are we running out of IPv4 addresses?
IPv4 uses 32 bits for its Internet addresses. That means it can support 2^32 IP addresses in total — around 4.29 billion. That may seem like a lot, but all 4.29 billion IP addresses have now been assigned to various institutions, leading to the crisis we face today.
Let’s be clear, though: we haven’t run out of addresses quite yet. Many of them are unused and in the hands of institutions like MIT and companies like Ford and IBM. More IPv4 addresses are available to be assigned and more will be traded or sold (since IPv4 addresses are now a scarce resource), but they will become a scarcer commodity over the next two years until it creates problem for the web.
How does IPv6 solve this problem?
As previously stated, IPv6 utilizes 128-bit Internet addresses. Therefore, it can support 2^128 Internet addresses — 340,282,366,920,938,000,000,000,000,000,000,000,000 of them to be exact. That’s a lot of addresses, so many that it requires a hexadecimal system to display the addresses. In other words, there are more than enough IPv6 addresses to keep the Internet operational for a very, very long time.
So why don’t we just switch?
The depletion of IPv4 addresses was predicted years ago, so the switch has been in progress for the last decade. However, progress has been slow — only a small fraction of the web has switched over to the new protocol. In addition, IPv4 and IPv6 essentially run as parallel networks — exchanging data between these protocols requires special gateways.
To make the switch, software and routers will have to be changed to support the more advanced network. This will take time and money. The first real test of the IPv6 network will come on June 8, 2011, World IPv6 Day. Google, Facebook and other prominent web companies will test drive the IPv6 network to see what it can handle and what still needs to be done to get the world switched over to the new network.
How will this affect me?
Initially, it won’t have a major impact on your life. Most operating systems actually support IPv6, including Mac OS X 10.2 and Windows XP SP 1. However, many routers and servers don’t support it, making a connection between a device with an IPv6 address to a router or server that only supports IPv4 impossible. IPv6 is also still in its infancy; it has a lot of bugs and security issues that still need to be fixed, which could result in one giant mess.
Nobody’s sure how much the transition will cost or how long it will take, but it has to be done in order for the web to function as it does today.
I had compiled differences between IPv6 and IPv4 long back. Though it is for my personal reference I am uploading it on my blog. Hope someone might find this useful.
Thanks to those known and known sources who helped me compile this.
|Addresses are 32 bits (4 bytes) in length.||Addresses are 128 bits (16 bytes) in length|
|Address (A) resource records in DNS to map host names to IPv4 addresses.||Address (AAAA) resource records in DNS to map host names to IPv6 addresses.|
|Pointer (PTR) resource records in the IN-ADDR.ARPA DNS domain to map IPv4 addresses to host names.||Pointer (PTR) resource records in the IP6.ARPA DNS domain to map IPv6 addresses to host names.|
|IPSec is optional and should be supported externally||IPSec support is not optional|
|Header does not identify packet flow for QoS handling by routers||Header contains Flow Label field, which Identifies packet flow for QoS handling by router.|
|Both routers and the sending host fragment packets.||Routers do not support packet fragmentation. Sending host fragments packets|
|Header includes a checksum.||Header does not include a checksum.|
|Header includes options.||Optional data is supported as extension headers.|
|ARP uses broadcast ARP request to resolve IP to MAC/Hardware address.||Multicast Neighbor Solicitation messages resolve IP addresses to MAC addresses.|
|Internet Group Management Protocol (IGMP) manages membership in local subnet groups.||Multicast Listener Discovery (MLD) messages manage membership in local subnet groups.|
|Broadcast addresses are used to send traffic to all nodes on a subnet.||IPv6 uses a link-local scope all-nodes multicast address.|
|Configured either manually or through DHCP.||Does not require manual configuration or DHCP.|
|Must support a 576-byte packet size (possibly fragmented).||Must support a 1280-byte packet size (without fragmentation).|
—————— Thanks everyone