IP addresses are formally called IPv4 addresses. This post is to disuss the next generation of IP addresses, called IPv6 addresses.
This is kind of like Star Trek: The Next Generation, but without Data and Picard and the whole crew.
Ok, it’s nothing like them.
In this post I said that there are 232 IP addresses, or 4,294,967,296 IP addresses. Some of these are reserved and shouldn’t be used on the Internet, but that’s still a lot of IP addresses, right? Enough to almost give every person in the world their very own IP address. That leaves out companies having a whole bunch of computers on the Internet, or Universities with their computers, or even light bulbs with their IP addresses. We’re running out of IP addresses!
The smart people that work on engineering the Internet, known as the IETF decided to solve this problem. On a side note, they really could have come up with a better name. Maybe Super Hardworking Internet Engineers Leading Development. That sounds awesome, right? They’d have to come up with their own Nick Fury though.
Back to the problem. 232 IP addresses aren’t enough. The geniuses at the IETF decided not to just double that number, but to square it, and then square that number. That gives us 2128 IP addresses, or 340,282,366,920,938,463,463,374,607,431,768,211,456 IP addresses.
Have fun reading that number out loud!
They also changed the notation for the IP addresses. They don’t look like IPv4 addresses, they use : instead of . to separate numbers. They also use base 16 instead of base 10 for the addresses. Bet you didn’t think there would be math in this blog, did ya.
Here’s an example of an IPv6 address:
2601:547:902:cba7:4b8:ff43:f419:cd01
That’s a mouthful to remember. I have an easier time remembering 192.168.0.1.
The IPv6 protocol that the SHIELD, okay, IETF engineers designed does a lot more than just creating the IP addresses, but that’s all we’re concerned with for right now.
Now remember that ifconfig output?
eth0 Link encap:Ethernet HWaddr 00:1A:2B:3C:00:00 inet addr:192.168.0.10 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fd91:ae3b:d5e8:aa85:0:0:0:0 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:41620 errors:0 dropped:0 overruns:0 frame:0 TX packets:40231 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:21601203 (20.6 MiB) TX bytes:6145876 (5.8 MiB) Interrupt:21 Base address:0xe000
The third line is the IPv6 address of the system. A system can have both kinds on one interface. Neat, huh.