Basically what the title says. Here’s the thing: address exhaustion is a solved problem. NAT already took care of this via RFC 1631. While initially presented as a temporary fix, anyone who thinks it’s going anywhere at this point is simply wrong. Something might replace IPv4 as the default at some point, but it’s not going to be IPv6.
And then there are the downsides of IPv6:
- Not all legacy equipment likes IPv6. Yes, there’s a lot of it out there.
- “Nobody” remembers an IPv6 address. I know my IPv4 address, and I’m sure many others do too. Do you know your IPv6 address, though?
- Everything already supports IPv4
- For IPv6 to fully replace IPv4, practically everything needs to move over. De facto standards don’t change very easily. There’s a reason why QWERTY keyboards, ASCII character tables, and E-mail are still around, despite alternatives technically being “better”.
- Dealing with dual network stacks in the interim is annoying.
Sure, IPv6 is nice and all. But as an addition rather than as a replacement. I’ve disabled it by default for the past 10 years, as it tends to clutter up my ifconfig overview, and I’ve had no ill effects.
Source: Network engineer.
43% of Google traffic is now ipv6 and steadily growing
https://www.google.com/intl/en/ipv6/statistics.html
CGNAT is only a temporary band aid for reaching services that are yet to present themselves on IPV6. It’s relatively expensive to operate.
IpV6 might be largely pointless on a LAN, and sure NAT is fine there, but ipv6 already running large chunks of the world’s mobile infrastructure. It’s not going anywhere.
Upvote for semi-unpopular opinion.
I think you’re wrong about the shortage being ‘solved’ by NAT. NAT is great for LAN and WAN in the developed world, but there are billions of folks in remote developing areas where it’s not much help. It also severely limits the big chunks of address spaces that can be allocated to business, universities, governments, etc. It is not a trivial problem waved away by NAT.
I think it will continue to be a very gradual but relentless rollout of IPv6. Not saying it will be fast. But 30 years from now, if we haven’t destroyed civilization, I suspect IPv4 will be a quaint relic. And IPv6 will never run out of addresses.
There’s a large possibility we’ll run out of IPv6 addresses sooner than we think.
Theoretically, 128-bits should be enough for anything. IPv6 can theoretically give 2^52 IPs to every star in the universe: that would be a 76-bit subnet for each star rather than the required 64 minimum. Today, we (like ARIN) do 32-48-bit allocations for IPv6.
With IPv4, we did 8-24-bit allocations. IPv6 gives only 24 extra allocation bits, which may last longer than IPv4. We basically filled up IPv4’s 24-bits of allocations in 30 years. 281 trillion (2^48) allocations is fairly reachable. There doesn’t seem to be any slowdown of Internet nor IP growth. Docker and similar are creating more reasons to allocate IPs (per container). We’re also still in the early years of interstellar communications. With IPv4, we could adopt classless subnetting early to delay the problem. IPv6’s slow adoption probably makes a similar shift in subnetting unlikely.
If we continue the current allocation trend, can we run out of the 281 trillion allocations in 30 years? Optimistically, including interstellar networks and continued exponential growth in IP-connected devices? Yes. Realistically, it’s probably more than 100 years away, maybe outside our lifetimes, but that still sounds low when IPv6 has enough IPs for assigning an IP to every blade of grass, given every visible star has an Earth. We’re basically allocating a 32-48 bit subnet to every group of grass, and there are not really enough addresses for that.
This is the worst math that ever mathed. IPv4 is 32 bits of address space. IPv6 is 128. That is 2^32 vs 2^128. Not 2^52, which isn’t even wrong it’s just weird, hopefully this is just some weird performance joke. There are enough addresses in ipv6 to address every known atom on earth. We aren’t running out anytime soon. 96 doublings of IPv4s address space is a number you can’t fathom.
That wasn’t what I said. 2^56 was NOT a reference to bits, but to how many IPs we could assign every visible star, if it weren’t for subnet limitations. IPv6 isn’t classless like IPv4. There will be a lot of wasted/unrunused/unroutable addresses due to the reserved 64-bits.
The problem isn’t the number of addresses, but the number of allocations. Our smallest allocation, today, for a 128-bit address: is only 48-bits. Allocation-wise, we effectively only have 48-bits of allocations, not 128. To run out like with IPv6 , we only need to assign 48-bits of networks, rather than the 24-bits for IPv4. Go read up on how ARIN/RIPE/APNIC allocate IPs. It’s pretty wasteful.
I’m fully aware how rirs allocate ipv6. The smallest allocation is a /64, that’s 65535 /64’s. There are 2^32 /32’s available, and a /20 is the minimum allocatable now. These aren’t /8’s from IPv4, let’s look at it from a /56, there are 10^16 /56 networks, roughly 17 million times more network ranges than IPv4 addresses.
/48s are basically pop level allocations, few end users will be getting them. In fact comcast which used to give me /48s is down to /60 now.
I’ll repeat, we aren’t running out any time soon, even with default allocations in the /3 currently existing for ipv6.
I’m fully aware how rirs allocate ipv6. The smallest allocation is a /64, that’s 65535 /64’s. There are 2^32 /32’s available, and a /20 is the minimum allocatable now. These aren’t /8’s from IPv4, let’s look at it from a /56, there are 10^16 /56 networks, roughly 17 million times more network ranges than IPv4 addresses.
/48s are basically pop level allocations, few end users will be getting them. In fact comcast which used to give me /48s is down to /60 now.
I’ll repeat, we aren’t running out any time soon, even with default allocations in the /3 currently existing for ipv6.
Sorry, but your reply suggests otherwise.
The RIRs (currently) never allocate a /64 nor a /56. /48 is their (currently) smallest allocation. For example, of the ~800,000 /32’s ARIN has, only ~47k are “fragmented” (smaller than /32) and <4,000 are /48s. If /32s were the average, we’d be fine, but in our infinite wisdom, we assign larger subnets (like Comcast’s 2601::/20 and 2603:2000::/20).
These aren’t /8’s from IPv4. let’s look at it from a /56, there are 10^16 /56 networks, roughly 17 million times more network ranges than IPv4 addresses.
Taking into account the RIPE allocations, noted above, the closer equivalent to /8 is the 1.048M /20s available. Yes, it’s more than the 8-bit class-A blocks, but does 1 million really sound like the scale you were talking about? “enough addresses in ipv6 to address every known atom on earth”
The situation for /48s is better, but still not as significant as one would think. With Cloudflare as an extreme example: They have 6639 IPv4 /24 blocks, but 670,550 IPv4 /48 blocks. Same number of networks in theory, but growing from needing 13-bits of networks in IPv4 to 19-bits of networks: 5 extra bits of usage from just availability.
That sort of increase of networks is likely-- especially in high-density data centers where one server is likely to have multiple IPv6 networks assigned to it. What do you think the assignments will look like as we expand to extra-terrestrial objects like satellites, moons, planets, and other spacecraft?
I’ll repeat, we aren’t running out any time soon
Soon vs never. OP I replied to said “never”. Your post implied similarly, too-- that these numbers are far too big for humans to imagine or ever reach. The IPv6 address space is large enough for that: yes. But our allocations still aren’t. The number of bits we’re actually allocating (which is the metric used for running out) is significantly smaller than most think. In the post above, you’re suggesting 56-64 bits, but the reality is currently 20-32 bits-- 1M-4B allocations.
If everyone keeps treating IPv6 as infinite, the current allocation sizes would take longer than IPv4 to run out, but it isn’t really an unfathomable number like the number of atoms on Earth. 281T /48s works more sanely: likely enough for our planet-- but RIPEs seem to avoid allocating subnets that small.
IPv4-style policy shifts could happen: requirements for address blocks rise, allocation sizes shrink, older holders have /20 blocks (instead of 8-bit class A blocks), and newer organizations limited to /48 blocks or smaller with proper justification. The longer we keep giving away /20s and /32s like candy, the more likely we’ll see the allocations run out sooner (especially compared to never). My initial message tried to imply that it depends on how fast we grow and achieve network growth goals:
30 years? Optimistically, including interstellar networks and continued exponential growth in IP-connected devices? Yes.
. . .
Realistically, it’s probably more than 100 years away, maybe outside our lifetimes
Sorry, but your reply suggests otherwise.
I’m at work, I’m not going to go into a thesis on ip allocation.
The RIRs (currently) never allocate a /64 nor a /58. /48 is their (currently) smallest allocation. For example, of the ~800,000 /32’s ARIN has, only ~47k are “fragmented” (smaller than /32) and <4,000 are /48s. If /32s were the average, we’d be fine, but in our infinite wisdom, we assign larger subnets (like Comcast’s 2601::/20 and 2603:2000::/20).
Correct all noted here https://www.iana.org/numbers/allocations/arin/asn/
Taking into account the RIPE allocations, noted above, the closer equivalent to /8 is the 1.048M /20s available. Yes, it’s more than the 8-bit class-A blocks, but does 1 million really sound like the scale you were talking about? “enough addresses in ipv6 to address every known atom on earth”
If you’re going to go through and conflate 2^128 as being larger than the amount of atoms on earth to a prefixing assignment scheme I’m just going to assume this is a bad faith argument.
Have a good one I’m not wasting more time on this. The best projections for “exhausting” our ipv6 allocations is around 10 million years from now. I think by then we can change the default cidr allocations.
https://samsclass.info/ipv6/exhaustion-2016.htm
Its old sure but not worth arguing further.
deleted by creator
This whole debate is so tired. Just use IPv6, it’s 2024 and it’s so fucking easy these days.
I have actually found IPv6 simpler to set up and manage than I thought it would be. As I run at least one or two internet facing services from my home network, which I cannot do with IPv4 because my ISP is fully CGNAT. I even successfully set up my own static IPv6 address on my server so that I can just point my domain name at it and then anything I need I can just hit my domain and it will give the IP address instead of me having to remember it.
Granted I have very simple requirements, so It does seem pretty easy, except
- there are still too many devices that don’t support it
- too many ISPs don’t support it, including mine
So switching to IPv6 means running dual stack and setting up a tunnel, and I probably need to relearn firewalls. I’m not sure any of those are very difficult but it’s enough, especially since there’s no clear win here
If Matter-Thread ever gets off the ground that would help: most of my newer IPv4-only devices are home automation so switching to an IPv6-based protocol should finally make that happen
IPv6 isn’t just larger addresses, it was meant to totally remove the need for layer 2 / MAC addresses, bus networks, DHCP, and broadcasts. Since the plan was to get rid of the 12 byte ethernet header, the 24 byte increase in IP addresses would only be a 12 byte increase in header at the end of the day. WiFi wouldn’t need three MAC addresses in every packet. IPv6 only achieves it’s true potential with a complete switch over.
I personally don’t think that can ever happen. The opportunity to switch everyone over is absolutely long gone. IPv6 isn’t an extension of v4 or a compatible replacement, like ASCII to UTF-8. It’s more like X to Wayland. The protocol authors went “This is a mess we gotta rethink this from scratch”. But there’s so much already relying on the old protocol, and replacing it with something that doesn’t perfectly match features is difficult for little reward for users.
The increase in IPv6 nodes has mostly been due to mobile networks. The tragedy is they actually still mostly use layer 2 and bridge networking. IPv4 nor v6 can handle maintaining connections while addresses change. So they set it up so that you keep the same IP address as you travel and move between different towers. This is done with massive virtual layer 2 LANs across towers, with the IP routing happening at a central datacentre. IPv6 is simply used for the larger addresses, and none of the network/protocol simplifications it promised can be used.
deleted by creator
To be fair, I cannot think of a better alternative to Email
You say that something may replace IP4, but it won’t be IP6, then you list a lot of reasons why it can’t be IP6, except all those reasons would apply to whatever that something is also.
If i had a nickle for every time ive seen ipv6 hate this week id have 2 nickels which isnt much bit its weird that it happened twice.
The only reason i can think of to dislike ipv6 is if i was an authoritarian who hated the p2p capabilities it provoded.
Also go watch apalrd’s video on ipv6 migration u know u can actually spell words in ur ipv6 address.
Why would I need to remember an ip address if I have a hostname? I don’t know my ipv4 anywhere since it’s all dynamic.
Standards like those change just fine. Sure some stuff uses ascii still, but almost everything I encounter is unicode. Email has had so many things added on over the years that that’s not a fair comparison either. Other countries have plenty of kb layouts that are more popular locally than qwerty but came afterwards.
At some point ipv6 will be the default and we’ll just use compatibility layers to access ipv4 only things. We don’t need every device on board, just the ISPs
So then this is actually a popular opinion? ;)
More popular than I anticipated, but at least somewhat controversial based on the vote ratio.
Which is hilarious because you hit the nail on the head. IPV6 is not new, it would have long ago been adopted if ever it were gonna. Who is still holding out hope….and why? lol
I posted this elsewhere a few days ago. I don’t think IPv6 can do what I require of a basic home network, let alone a large enterprise…
I gave it a really good shot at implementing this past week. I spent 3 days getting up to speed, reading loads and trying various different things. But I am now back to IPv4 only because I just can’t get IPv6 to do what I want and no amount of searching has made me think what I want to do is even possible.
Some background about the IPv4 network I run at home: I run opnsense on a Proxmox server. I have a few services publicly available using port forwarding. I run several VLANs for IoT, VoIP, Cameras etc. I use a bunch of firewall rules that are specific client devices on the network. So for example I have a rule that blocks youtube from the kids tablets and the TV. I have a special rule around DNS for the wife as she doesn’t want to use the pihole blocking features. These rules are made possible because the DHCP server is set to give them a fixed IP and I can create a firewall alias and rule based on that.
None of these things on my existing network are particularly difficult to configure, they run really well.
What I want from IPv6 is:
- All devices to use IPv6 including android devices.
- To have the same firewall rules configured and not have them be easily bypassed.
- To use privacy addresses as I don’t want to make every device uniquely trackable over the internet.
- To be able to cope with changes to the ISP provided /48 prefix seamlessly.
- Have internal DNS make accessing intranet devices easy.
- To ensure the privacy of individual devices on my network by avoiding individual device tracking.
What I’ve tried:
- Using DHCPv6, but this excludes android devices. So that’s out.
- Using a NAT (to avoid tracking of individual devices) and fd00/8 addresses, but this is pointless as those addresses are lower priority than IPv4 (FFS!)
- SLACC just seems a non-starter.
Additional: I don’t think I have a problem with “thinking about it all wrong for IPv6”. I may have a skill issue, hence this question.
As far as I can tell to achieve requirement 1) you must use SLAAC. SLAAC without privacy extensions doesn’t allow for 6).
Changes to external ISP prefix assignment impacts MY INTERNAL NETWORK (this just seems insane). And as far as I can tell there’s no easy way around this, especially if I have static addresses configured for servers which would (if using SLAAC) have to be manually configured.
I can’t see how DNS would be updated either, either Unbound running on Opnsense, or to the pihole. If I go for SLAAC with privacy extensions and I keep paying for a static IP (v4 & v6) to my ISP then I can’t implement any firewall rules for specific devices as devices will change their IP regularly. And its even worse if I don’t pay for a static IPv6 prefix.
I don’t think anything I’m trying to do is particularly strange or unusual but 26 years after its introduction I don’t see that IPv6 can meet these requirements. And one of the leading firewall routers, especially in the homelab doesn’t have answers to these questions either.
Can you suggest a way to meet all 6 requirements I have with IPv6?
But why? What benefit does ipv6 bring to a home network that ipv4 doesn’t have?
As you said everything is already setup well with ipv4 so why change it?
I’d read a lot if people saying how good and easy IPv6 was and I thought I’d use it as an opportunity to learn about it.
But turns out the only thing it does is give everything a public IP because the creators were so obsessed about getting rid of NAT. Nothing else seems to have been thought through.
There are IETF mailing list threads where no one has a clue as to why it’s not being adopted, including one where they discover their own RFC is inconsistent with itself and that’s the reason why IPv4 is given higher priority than fd00::/8. You can tell how half baked it is when you look at the number of revisions, additional protocols that have been added decades after it was initially proposed.
Their hatred of NAT seems to drive everything, but for most home and business users NAT is a great feature that drives so much simplicity by keeping you private networks private and independent of the rest of the internet.
Yeah, NAT is great for home users. Unless your ISP is also using (carrier grade) NAT. Then you’re fucked by double NAT and have to call your ISP every time you want to forward a port.
Obviously with IPv6 there’s be no need for CGNAT. But NAT within each household or business is useful.
Only real world advantage of IPv6:
::1 vs 127.0.0.1
Please tell me there’s something similar for 192.168.0.1
Well, there are actually 3 private address ranges in IPv4.
10.0.0.0 – 10.255.255.255 (10.0.0.0/8)
172.16.0.0 – 172.31.255.255 (172.16.0.0/12)
192.168.0.0 – 192.168.255.255 (192.168.0.0/16)For IPv6 the rough equivalent is a Unique Local Address.
fc00::/7