The Internet is full!

For those of you unfamiliar with the issue and how the internet works (in simple terms) each and every connected device on the internet needs an IP address. It’s like a phone number, basically a unique number given to your computer, mobile phone, or whatever, whenever it is connected to the internet. It then “dials” another number whenever you check your email, go to a web page or any other activity.

Of course, to dial a number you need a number your self. And as we all know the number of connected devices on the internet is by no means slowing down. So we need more numbers to allocate to these devices. But here’s the catch: There are no more numbers available.

For those of you unfamiliar with the issue and how the internet works (in simple terms) each and every connected device on the internet needs an IP address. It’s like a phone number, basically a unique number given to your computer, mobile phone, or whatever, whenever it is connected to the internet. It then “dials” another number whenever you check your email, go to a web page or any other activity.

Of course, to dial a number you need a number your self. And as we all know the number of connected devices on the internet is by no means slowing down. So we need more numbers to allocate to these devices. But here’s the catch: There are no more numbers available. There are some, but not many. So that implies that the internet is full. All thought there are many unused numbers held by organizations that ones got them but are no longer using them, these unused numbers are not enough for any sustainable future growth.

The current numbering system we’re using is called IPv4. This system contains about 4,000,000,000 unique available addresses in total. At the time of writing, about 2% is unallocated. At the speed things are going, that will be empty within a matter of days. Luckily this development hasn’t come as a shock to the people who help maintain the internet, so there’s a new version available called IPv6.

IPv6 contains 3.4×10^38 addresses. Compared to IPv4’s 4.3×10^9 that’s a lot more. So much more that it’s deemed enough for the foreseeable future. So why isn’t this similar to just dialing a number or more on your phone when you make a phone call? It basically comes down to upgrading all the connected equipment. That includes your computer, your phone, your home router, all the network equipment your ISP have installed, etc. And since all the ISP’s need to talk to each other they need to upgrade the systems used between them, and so on.

Luckily, as IPv6 has been available for quite some time, you computer probably already know how to “speak” IPv6. Your home router might also know how to do this, but chances are you might need a new one. This is probably provided by your ISP so go talk to them about it. As I’m quite sure they are still interested in selling you access to the internet they should have some migration plan in place.

But what if you’re stuck on some lame ISP with incompetent and slow moving people? Do you really have to wait for them to get going? Ideally, yes, but.. It’s possible to tunnel IPv6 over IPv4. It’s like dialing a 8 digit number first, and then, when the other end picks up the phone, you dial a 12 digit number in addition. Wikipedia maintains a list of IPv6 tunnel brokers, so if this lack of IP addresses is starting to bother you, or you just want it now, go there and check it out.

In June 2010, Google held a Google IPv6 Implementors Conference. At that event, Facebook announced that it had begun to use IPv6.

In his opening remarks to the conference, Google’s Chief Internet Evangelist Vint Cerf urges ISPs to move to IPv6, so that a “black market” for Internet addresses won’t occur.

55 replies on “The Internet is full!”

Today any online provide give a permanent IP addres to its clients for free. And most of the clients don’t use it at all.

For most people having a static public IP adress is not a feature, it is just a more conveniant way for viruses trojan and all to target their computers, for entreprises to profile them or governments to spy them with laws like adopi in France.

You gain benefits only if you have public servers, and even there, with the current implementation of TCP/IP you can serve more than 65000 concurrent request per address.

Just let ISP sell public IP address for 5$ a month and provide NAT to other clients and you have solved your problem.

This is not about static IP’s or NAT or ports. This is about the availability of IP’s.

Are you are suggesting that everyone, except content providers should be having their own public IP, and the rest of us should be behind a big ISP wide NAT? If so, I completely disagree with you. That’s not what the internet is about..

Well Nicolas, if you would wake up and look out of your little nest, wherever this is, you may discover that in most parts of the world clients still pay a monthly fortune for a static IP4 address.
But, yes, no one really needs a static IP address for web browsing. And don’t anyone tell me that I need to run Apache on a friggin iPhone just because it would work. Neither does the machine which does my laundry need to have a web interface on a public server.

Nicolas, you really need to think about what you are saying. In software terms, this is equivalent to building a big ball of mud instead of just refactoring your code. Refactoring is always cheaper in the long run. You would be creating a much more complex solution then the IPv6 solution.

There are many solutions to any problem, just because it is possible doesn’t mean it’s a good solution.

Nicolas, Most games today work with UDP Holepunching. Using this every player has to have an external IP and a port. If everyone is behind the same NAT it becomes more likely for a collision and the game will not work. TCP is very slow but reliable, so it is not used in most games.

What I’am saying is that this problem of IPV4 address is not a big problem. When you go to a cybercoffee, you share the same public IP as faw other people and this is not a problem. When you are at work, you share the same public Ip address with sometime hundred of users.

When you are at home you share the same public IP adress for all your computer… And without configuring your router for a DMZ or port fowarding you connection to the net is limited to NAT anyway.

Basically you need a public address /port when you run servers or use UDP. This is not so common for the average joe.

Not having a public IP address could even be considered as a feature because you are protected from many type of network attacks.

In fact 95% of people don’t care at all about their IP address, and many of them have a public IP address without even knowing they have one.

Now you have your solution to keep IPV4 for at least 10 mores years.

Why not go for IPV6, but basicaly the gain to run public server on any device will be a really little feature compared to the ability for companies to better track you and pirates to have an easy mode to gain control of the average joe computer.

I don;t think you appreciate the scale of the problem. Th numbe rof available ip addresses is most easily measured in powers of 10. The western world deciding to share a few of the addresses totally fails to spot the cause of the probem, the size of the number representing the number of ip addresses is simply not going to be anough and wll break at SOME POINT. Its easy for us to use a mch larger number and design for the future.
The kind of patchwork half assed solution you propose is similar to the kinds of approaches government takes to problems. We will only be here for 7 yers or so so why the hell should we properly invest in the future?

In IT things used to be done properly and with rigour. Now anyone who knows some html thinks they know everything and just hacks together things that barley work. Where did the engineering go?

The reason that IPV4 has lasted do long is that many ISPs use dynamic addressing. At my home My ISP has dynamically assigned an IP address. My wife and my home computer and my laptop all share that connection with the aid of a router that yet again dynamically assigns an IP address.

Some businesses can’t afford to dynamically host a single connection, they need the full bandwidth that the connection can give them.

So yes the problem was solved in the manner you mentioned, but now it has come down that we need to simply add more addresses.

However this all boils down to the same problem that has occurred with Y2K and 64 bit applications. The solution has been around for some time, but many people don’t want to switch or businesses can afford the capital investments.

this not just a easy stuff let all enterprise to change algorithm for recording IP into their database, lots of software and websites do record IP into their database. the size and format of IPv6 is super different from IPv4.

Agree with John whole heartedly. We need more John’s and the world would be a much better place.

Hey Joe, we also used to record 2 digit dates in our databases. Those who are that short sighted deserve what they have coming to them.

Nicolas has a point here, and I think the title of this blog is misleading and alarmist.

The way this post is written, it assumes that “every node on the network must be unique and not proxied/NATted.” With that assumption, yes, the internet is full.

But Nicolas points out that this issue was side-stepped using NAT/proxies years ago. With that assumption, no, the internet isn’t full, and quite frankly, has more capacity for the future if we apply that technique. I think the article does the unknowledgable reader a disservice by not making that fact known.

BTW, I believe that IPv6 is a good thing and we ought to switch – more numbers for more nodes for a growing global network. But its gonna be a while before legacy IPv4 devices leave the network, and NAT/proxies help relieve that pain.

I appreciate the explanations of how to get yourself to be IPv6 via tunneling – might try it myself.

how meany IP’s are “horted” by governments, big organisations…
And how many have C-Class and use only 5 adresses….
When rigouros apply routing – then we have enough.
but other fact is – Industry will have increasing sales for future…- so IVp6 is ok

well… i don’t know wether to laugh or not….
phones don’t usually have their own ip address and they share it with many others… on the other side the cell towers may use some ips (maybe one…. don’t know exactly)… so phones do not use too many ips. organizations use NAT for employees and have some public ips. i think this whole… we do not have any ips is crap. ipv6 is used already for interconnects for servers and stuff like this… clients still use ipv4 so don;t go throwing away nics, swithces and routers. 🙂

There’s no good reason (other than IPv4) that phones shouldn’t get their own public IP.

Also, if the servers you are talking about get IPv6, how do you think a IPv4 connected user is supposed to communicate with that server?

Just curious, what is the good reason why phones should have a public IP? Really, something that would prompt me to actually want to spend money to allow it…

Chris, just because you and me can’t figure out the next big killer app for phones doesn’t mean it doesn’t exists..

But what about Skype.. It sure benefits from having others connect to you..

NIC’s and Switch’s (except for L3-switches) highest working level is OSI level 2, they don’t even know what an IPv4 address is, which belongs on OSI level 3. They only care about MAC addresses.

Christian I see your point, also I was lol’n at previous comments. However as mentioned in the article devices can be used providing the service provider is backwards compatible and allows IP6 over IP4. In fact it wouldn’t be that hard for older phones that can not be upgraded be patched so they can automatically select what version too choose depending on which network/tower/cellular area etc.

Moving forward from that it would allow existing IP4 based devices (again those that cannot utilise IP6) to be connected too the same network cloud as everyone else, for those who don’t follow think of it like using the newest software out but certain functions don’t work with older releases. The same applies that IP4 devices could still be functional.

I would say this:
by default ISP has to give dynamic ip address to xdsl customers.
If a customer wants a static ip address the ISP must provide it.

I don’t know which is sadder; the naivaty of thinking there is no problem with IPv4 or the total lack of decent spelling skills.

As a former small ISP owner, I’ll say that the problem with lack of address space isn’t a bad one for the consumer, but a huge one for the small and medium sized providers who will never be able to break free from the established, tier-1 guys and get their own address space. As it has been, if you first get all cozy with backbone 1’s IPs, then add backbone 2 and 3 and 4… and then you don’t like backbone 1 because they raise their prices or service levels go down, you can’t drop them but keep using their IPs even though they’re now also being routed over 2, 3, and 4 as well. You have to renumber to IPs from 2, 3 and/or 4…. If your customers are using DNS other than yours, then you’ll have to coordinate a bunch of crap to get domain records changed. Having my own address space would have meant a comforting feeling of freedom, but because of the lack of space, a company in 2004 had to justify the use of a huge number of addresses… now that space is gone. In IPv6, small hosting companies will be able to be on their own and switch backbone providers as the market affords and prices for hosting and ancillary should start to drop as backbone providers have to compete harder for their business.

I could not agree more with Nicolas… to look even further in the future why to stop at 128 bits? Once they’re going to upgrade all the equipment… haha Still it does not justify the need of ISPs to assign a public address to every single device connected to the network. I can feel the goverments’s pressure…. hmmm… Complaints on privacy will come later….

IPv6 is shortsighted. Sure it SEEMS like a lot of addresses NOW. But 256K of memory seemed like a lot in 1980. Someday every appliance in your house will have its own IP address. Applications we can’t even IMAGINE now will have IP addresses.

They should have gone to IPv8 in one jump.

you will never wanna someone else to control your applications. this why you don’t need a public IP for your home application.


I wound’t say public IP = control of item with public IP. That’s a security concern, but why limit our opportunities to poor software design? It’s like saying we shouldn’t have cars because we might crash..

Just a though… Many of the addresses have to hide behind some device performing the routing. Would not the cost of supporting routing decrease and the overall speed of the internet increase by not need to be handled by so many redirectors? I’m sure QoS flags for IP6 would be used for such a purpose, but would help give back to the experience that is the net.
And yes I would not run Apache or anything else on my IPhone. Although I would like to see how burnt my toast is over the net when I run to the other room. 😉

Wow – lot said. Wanted to toss out there that IP6 is not that radically different… it’s two more bytes – that’s all… Bigger address space// broken into such kinda silly big (now silly )”networks” or subnets.

I think we’ll find some routing things different and a general “less call for” (if any – some argue) for a fixed IP. As if to say the difference is you not only gain more IP right away – but gain a mini – househould subnet if you want it really… 🙂

Perhaps HP could relinquish one of its two A-class blocks? That would open up 10 million+ more addresses 🙂

Is “enough for the foreseeable future” like “640K ought to be enough for anyone?” 🙂

Who knows, but at least it’s way more than IPv4 😉 So we’ve replaced an immediate issue with a non-existing issue..

I see that some people are worried that IPv6 may be shortsighted, and that we may at some point regret not going for more (such as IPv8). Well, if IPv6 provides 3.4×10^38 addresses, then that should be enough to supply 66 trillion IP addresses for every square millimeter of the earth’s surface. Seems like enough…

Maybe That’s to hard to understand and implemente since the govrements don’t provide safe and secure telecommunications for people especially when they need to spy on their communications so that the best way still the Satillite internet Communications but this still too expensive for much people and not available in most Countries in the Middle East
thanks for read

Nicolas, I fully agree with you.
You made the point here.
I must say, as response to those opposing you here, that they shoul go back to school and learn math better. Understand what optimization means an how to simplify (radicaly) life by using it properly.
I’m prety sure, those people will not uderstant evet that what i just saying here …

Having a public IP is NOT a benefit (oposit is true) for more than 90% of clients using internet. And event this 90% I used here is too diet estimation …

Even if IPV6 is the answer, too many stable machines can’t use it. I’m typing on a work machine with Windows XP and IE6. IPCONFIG command only shows an IPV4 address. This isn’t unusual.

(My home laptop is Windows 7 and could use IPV6, but who knows about my router, or my ISP’s, or everyone I want to connect to?)

Does this not drastically increase the number of potential hosts on the innerweb?

I was reading an internet this morning from my staff and I didn’t get it because I missed a meeting. If we have a bigger number of things. . . uh, devices. . . then won’t the already clogged up tubes be even more congested due to people getting a movie over the internet then watching it and sending it back in the mail?

What will we do with the already terrible problem of the CLOGGED UP TUBES??

Wow! I’ve read through all these comments and all I can say is that people like Nicholas and Schanhorst really need to get a book on IP networking. The problem is not just about giving individual home users and phones public IP addresses, but also about performance and expandability.

Your so-called solution that every ISP should use NAT and give every home user a private IP is rather short-sighted and will actually make life for users, developers and support companies more difficult. I expect that if your ISP assigned you a private IP, you would still put you own router to provide another set of private IPs to your home machines right? Well that’s called Double-NAT and now you have two devices doing translation. Not only does that become more difficult to support and develop applications for, but it reduces performance (at least two routers doing NAT). And before you say “but it’s fine for people who just use browsing”, I think you’ll find that’s also ridiculous as people are now doing VoIP, peer-to-peer (which you’ll probably kill with such a system), VPN, remote working and yes, some people do host websites from their home or private FTP servers. What about using remote desktop to get to your home PC from the office or vice versa?

The issue of NAT is more than can be explained in this short comment but I suggest anyone that thinks it’s a good idea goes and reads a good book or article on NAT.

To add to that, home users may be the largest user base, but they are not the most important. Businesses are! Having all users behind double NAT will make things like VPN and even routing more difficult. Read up on protocols like BGP and you’ll understand why your half-baked idea will not work.

I could give you loads more examples why NAT is bad but I don’t have the time now. Like I’ve said, first understand IP networking before you go saying IPv6 is a bad idea.

Simply put, the problem goes way beyond just a home user wanting to browse the web.

I second to that!

Problem with NAT is, it was already a workaround to keep IPv4 alive until IPv6 is released to the public. Sadly ISPs and Router-vendors didn’t see a market to push it forward. So now we end up like this.

FTP, btw., is even problematic from a client’s perspective if behind a NAT. There are still a lot of Servers that don’t support passive mode, so you need to configure port forwarding a full range to that one single client on your network. That again renders (“active”) FTP unusable on the other clients in your network, appart from the security issues which arise if you do so. And double-NAT’ing even multiplies that problem.

And like you said before, there are countless other protocols that rely on clientsided open ports.

And to those guys (and gals) out there, having problems understanding IPv6, let me tell you that once there are enough IPv6-cappable routers for the consumer market, IPv6 will configure it self with no hassle. Only thing you need is a propperly configured Firewall to protect your Network. But since NAT is not a “security feature” you still have that, do you?

For the others that want to use IPv6 now, there already are a couple of IPv6 tunnels available for free. I’m using SixXS for a couple of months now and (after some tinkering) it works like a charm.



I read recently that China has exceeded the 400 million internet users mark. Consider that the entire population of the US is less than that. As more users and devices are added more addresses will be needed.

NAT helps, but it is still something of a hack. I am more concerned that IPv6 may not go far enough, but as an engineer, I would think we would learn our lesson and make the routing firmware update-able so that the next iteration of IP can simply be loaded by an administrator and we can continue to enjoy uninterrupted service.

Why is it that no one here has mentioned the fact the any device connected to any network whether or not it is behind any other network (NAT, proxies, etc) still get a public IP, whether static or dynamic. I’ve had up to 4 devices in my router and each one has had 2 IP addresses, 1 private and 1 public, not to mention my laptop also using WiFi, that’s 1 more private and 1 more public. That’s 12 different IP’s, with 6 being in the global IP address space. Double that if your using Double-NAT setups. that’s 24 different IP’s and 12 in the address space (someone with more networking knowledge please correct me if I’m wrong here with the Double-NAT stuff). The IPv4 address space would be very nearly empty if every networked device had been upgraded to IPv6 as soon as it had come out, instead of waiting for the amount of IP addresses available to dwindle. I have an HP iPAQ rx3715 (now a discontinued product) which has support for IPv6, infact, most client devices do indeed support IPv6, it’s just the routers and ISP’s that don’t support it yet. Mahomed is on the right track.

Rather strange setup you’re talking about. NAT is for sharing one external IP. Unless you’re doing something bad like double NAT’ing, that shared IP is your one public IP. Behind the NAT’ing, each device gets a private IP..

You know what? Nobody will move the ass to do anything before they get totaly locked down and not able to proceed at all – they are too greedy – that’s the business policy

I see your point. At the same time, it sort of doesn’t make sense from a business perspective to not be ready for this (too short sighted). But, yeah, I guess short term profits rule their days..

Why wouldn’t the owners of IP addresses want their price to go up.

ISP’s aren’t all that excited about IPv6, sure they’ll NAT it in when they have too.

Comments are closed.