Initially published on 2010-01-23.
IPv4 addresses are running out. There is no second opinion about this – at the current rate of allocation, there will be no unallocated addresses by the end of 2011. Even if some of the large allocated, but unused ranges will be given up by their current owners, this could only delay the exhaustion by a very limited time. And after that, any newcomers to the Internet wishing to have IPv4 connectivity will either have to negotiate to purchase blocks of addresses from someone, or use whatever addresses their provider gives them, which increasinly will be fewer and fewer addresses, or none at all, if their ISP has implemented…
So called «ISP-wide Network Address Translation», something that most everyone could quite soon see at their local ISPs, means that every connecting client only gets an IP from one of the “private” ranges (like
192.168.0.1), inaccessible directly from the Internet, and communicates with the outside world through one or a few of ISPs NAT routers, appearing as coming from that router's address.
In fact, this is even somewhat beneficial to the ISPs: just putting everyone behind an IPv4 NAT can allow them to avoid learning and deploying anything new, while at the same time introducing a new paid service, which would provide something that was previously free: “a real, non-NAT'ed, public IP address”.
The most important problem of NAT, is that any two users which are placed behind NATs by their Internet providers, are not able to establish a direct connection between their computers. This reduces the original End-to-end principle of the Internet, where free communication and exchange of information between any participating nodes is possible, to the “traditional mass-media” model: strictly separating the Internet participants into “publishers” of content, and mere “consumers” of it, with the latter not being able to directly, without a third-party in the middle, interact with each other.
It's made worse by the fact that this problem mostly affects the regular people, and not corporations. The latter, while being able to afford any “real IP addresses” they need, will only be happy that the users can no longer directly communicate between each other to share information using BitTorrent, can no longer keep their E-Mail and IM communications private by running an E-Mail or XMPP server (or in fact, any kind of server) on their own machine, and no longer able to avoid phone companies' expensive charges by the use of direct VoIP calls over the Internet.
Fortunately, there is an ongoing effort to save the Internet community away from the problems of band-aid ailments and give everyone a real, proper solution. Many companies and ISPs already chose to explore and deploy IPv6 – which restores the Internet to its initial “flat” state, where everyone is free to directly communicate and cooperate with everyone else. IPv6 allows every Internet user to have as many proper, real IP addresses as they need (and in fact – much, much more), and enjoy the fact that all these addresses, if that user so wishes (and configures the firewall correspondingly), are directly accessible by anyone, from anywhere in the world.
While it is pretty much a fact that everyone will be on IPv6 sooner or later – as always, learning and implementing the new technology right now, ahead of others, can provide you with an advantage – be it the important knowledge and skills for a future job, or just some random cool stuff, quicker torrents due to absence of NAT walls and therefore more peers to download from, or the ability to freely visit any IPv6 website and SSH from a machine in the far-end corner of your university's campus directly to a machine in the far-end corner of your home LAN.
There are ways to get IPv6 connectivity even if your current Internet provider does not offer it yet:
- If you have a dynamic IPv4 address, you can register a free account with a tunnel broker like Hurricane Electric, and after following their simple instructions, get several billion IP addresses for all your LAN machines.
- If your IPv4 address doesn't change, you can even skip the registration step and just use the automatic mechanism called 6to4, where various instruction generators (which basically take your IPv4 and generate a couple of lines to enter verbatim into command-line or a config file) are ready to help the users of GNU/Linux (in general, and of Debian-based distros), FreeBSD, MacOS X, or even Windows.
- And of course, it won't hurt to drop an E-Mail to your ISP, asking when they are planning to provide native IPv6, or if you can help them in testing their IPv6 deployment (some ISPs do have opt-in IPv6 test programs, and some even give unmetered 100-megabit IPv6 during them).
IPv6 is still the future for most, the present for a few, but believe me – those who currently don't know what it is and why we need it, are much better off getting onto that bandwagon now, while it's not going full-steam, than to try catching it in a hurry in the last minute, and failing that, having to settle for a long walk uphill, in snow, carrying the heavy shackles of NAT.