Live data from Hacker News

AWS to start charging for IPv4 usage, but critical services don't support IPv6

old.reddit.com

141–150 of 245 posts

Re: AWS to start charging for IPv4 usage, but critical services don't support IPv6

#141
post #46

Earlier quoted context omitted.

IP addresses were intended to be a public good. The fact that AWS has monopolized so many of them, and now that they own a significant fraction of them is deciding to charge for them. It's ridiculous.

> IP addresses were intended to be a public good. Were they though? The first few blocks auctioned off all went to large tech institutions

The Internet was designed by hippies and IP addresses weren't auctioned in the old days; they were given for free. When IPv4 runout was in sight the hippies argued loudly that addresses should be rationed instead of sold.

Re: AWS to start charging for IPv4 usage, but critical services don't support IPv6

#142
post #92

Earlier quoted context omitted.

We need IPv6 because we're out of IPv4 addresses. When you launch a new ISP and knock on the door of a RIR like RIPE, they don't have any IPv4 addresses left to allocate and so you're put on a waiting list. The solution is IPv6. Even without allocating an address per device, without IPv6 just the status quo of every customer having an IP address is no longer possible. The predecessor of my ISP introduced full IPv6 su…

If that's the problem, then the solution would've been just adding more address space to ipv4, preserving all existing addresses and pretty much everything else about it. 1.1.1.1/32 is still 1.1.1.1/32, and new ISPs can take blocks like 72.33.22.11.33/40 once enough routers are updated to support them. This could've even used the exact ipv6 packet structure, making it quite similar to v6 under the hood but more like…

> If that's the problem, then the solution would've been just adding more address space to ipv4, preserving all existing addresses and pretty much everything else about it.

That's not possible. IPv4 addresses are 32-bit numbers. Once you change that, you're no longer "preserving existing addresses".

> once enough routers are updated to support them.

That's actually "once all routers and end devices are updated to support them". As the classic spamsolutions.txt says, "requires immediate total cooperation from everybody at once".

> This could've even used the exact ipv6 packet structure, making it quite similar to v6 under the hood but more like v4 from the user's perspective.

Changing the packet structure means changing all hardware and software (yes, software too, the API for IPv4 uses 32 bits for the addresses). The changes visible to the user are the easy part.

> Instead, ipv6 created a separate world, with extra goals like making every device addressable (aka removing NAT),

It's more like "not needing NAT" than removing it; port mapping NAT is not a part of IPv4 (it's a hack on top of it), and it can be done identically in IPv6, but few do it on IPv6 since it's not necessary.

> using randomized addresses,

This is an optional thing which was added later; nothing in IPv6 requires randomized addresses, but IPv6 makes them possible by virtue of having enough free bits in the address. Were randomized addresses possible with IPv4, we'd see them happening.

> and resetting all ownership of existing blocks.

IPv6 has done no such thing; the existing IPv4 blocks are still there.

Re: AWS to start charging for IPv4 usage, but critical services don't support IPv6

#143
post #103

We [1] just went through a process to remove public ipv4 IPs for some of our internal facing EC2 instances. Just in case some people are on the same boat. Here's a simple process [2] to remove public ipv4 IPs from existing EC2 instances (no need to shutdown / reboot) - 1) Create a new elastic ip with autoassigned ipv4 IP - https://us-west-1.console.aws.amazon.com/ec2/home?region=us-... : 2) Associate this new elastic…

Your app seem to be using cloudflare, is the origin in cloudflare IPv6?

Re: AWS to start charging for IPv4 usage, but critical services don't support IPv6

#144

Had IPv6 been a superset of IPv4, we would have switched 10 years ago. IPv4 1.2.3.4 becomes IPv6 0.0.0.0.1.2.3.4 Owning IPv6 0.0.0.0.1.2.3.4 means you also own IPv4 1.2.3.4, because addresses that begin with 4 zeroes mean they also own the equivalent IPv4 address. Owning 2.2.2.2.1.2.3.4 means you do not fully own an IPv4 address. In this case you'll have a NAT IPv4 address. If you connect to 1.2.3.4 you use the IPv4…

So sick of reading this idiotic take EVERY time IPv6 comes up

Re: AWS to start charging for IPv4 usage, but critical services don't support IPv6

#145

Earlier quoted context omitted.

v6 introduces more hurdles. New different kinds of addresses (link-local, etc). No more NAT by default. Existing v4 addresses not accessible over it. In contrast, switching to this "v4.1" would be low-risk. You just support longer addresses, that's it.

> You just support longer addresses, that's it. There is no "just" in this. Copy-pasting from my other comment: -- IPv4 data structures have four bytes/octets (4B) for addresses. So how do you fit 8B of addresses in 4B structures? You don't. So you have to update every network element—host (desktop, laptop, mobile, embedded), router, switch, firewall—to have a new data structure (and maybe new function/system calls,…

Building it is the same amount of work as building ipv6 support. Adopting it is not the same work as adopting v6. We already have ubiquitous v6 hardware/software support, but it's a whole 'nother thing to actually use it.

1. Add v4.1 support, but keep using 32-bit addresses. 2. Start using >32-bit addresses when ready.

By the way, the WWW has gone through transitions like adopting HTTPS and banning old versions of TLS with it. Crucial to that was having transitional periods where both things work. This step was missed in ipv6 rollout.

Re: AWS to start charging for IPv4 usage, but critical services don't support IPv6

#146

Earlier quoted context omitted.

v6 introduces more hurdles. New different kinds of addresses (link-local, etc). No more NAT by default. Existing v4 addresses not accessible over it. In contrast, switching to this "v4.1" would be low-risk. You just support longer addresses, that's it.

The lack of NAT represents the removal of an issue. The fact that you already understand NAT does not reduce the actual, real complexity that it is introducing.

NAT is a more desirable form of security than a firewall for most users, despite it not being intended for that purpose. It should be the default, and if you don't want NAT, go ahead and don't use it.

Re: AWS to start charging for IPv4 usage, but critical services don't support IPv6

#147
The Reddit commenter who said "Everyone is charging for IPv4, except AWS (until now)" is uninformed or lying. I've been on Oracle Cloud Always Free selfhosting my mail and web services for months now including free IPv4 public addresses.

Re: AWS to start charging for IPv4 usage, but critical services don't support IPv6

#148

[flagged]

I think a lot of other commenters complaining about the parent commenter missing the IPv4/6 header size are missing the forest for the trees here. The main problems with IPv6 (that are why most customer-facing components are not switching to it anytime soon) are simple: 1. The address space is ludicrously unwieldy. Humans are good at remembering long numbers. We're quite bad at remembering random strings outside of p…

> Telling people to go to "192.168.2.1" to log in on their router is easy. Telling them to punch in a long IPv6 address that includes the A-F range isn't.

I think you're off base here. The direct equivalent of 192.168.0.1 is FEC0::1 and that's not harder to remember or type. The difference is that those addresses, site-local, got deprecated.

For link-local addresses, nothing stops a home router from using FE80::1. It doesn't have to be a pain to type.

> And that's without getting into colon collapsing 0000 ranges which just reeks of "did anyone run this past a human being", because this makes even less sense to people who barely get "I need to type the address on the ISP router sticker in my browser"

Is FE80:0000:0000:0000:E3B0:C442:98FC:1C14 better than FE80::E3B0:C442:98FC:1C14? I wouldn't say so.

And FE80:0000:0000:0000:0000:0000:0000:0001 is definitely not better than FE80::1.

And I don't share your preference for digits either. If you formatted your average link-local IPv6 address as digits, it would have 30-36 of them. No normal person would memorize it or enjoy typing it. Doing 4 characters at a time, 5 times, is much better than 254.128.0.0.0.0.0.0.xxx.xxx.xxx.xxx.xxx.xxx.xxx.xxx. Even with the hassle of the double colon. I'd rather have an extra colon than make sure I counted exactly 6 0s in a row.

Re: AWS to start charging for IPv4 usage, but critical services don't support IPv6

#149

Earlier quoted context omitted.

That's a big "if." > Randomized, temporary IPv6 public addresses are a nice feature, and mostly turned on by default I really do not want this.

> I really do not want this. Then disable it. IPv6 SLAAC privacy extensions are device-controlled, meaning neither your ISP nor your router can force you to use/not use them (unless they're so incompetent that they do things like hand out /128s). I disable privacy extensions on my server so that I can give it a static IP within the prefix, so I can vouch that (at least on Linux) the process is quite simple.

Well, what I do is disable ipv6. I don't want the possibility that this is misconfigured, especially if the defaults tend to be wrong. Maybe my router doesn't even respect my firewall settings, like this: https://community.verizon.com/t5/Fios-Internet-and-High-Spee... Maybe the customer is wrong, but this shouldn't even be a question.

The rare times I want something publicly accessible, I use DMZ or port forwarding.

Re: AWS to start charging for IPv4 usage, but critical services don't support IPv6

#150

Earlier quoted context omitted.

And that's entirely out of your control if your ISP is doing the NATing.

Not even your ISP - it could be university, business, shared internet for apartments, etc.

And sometimes, entire nations. Qatar used to share a single IPv4 address, which I found out when news articles started reporting that the entire country could no longer edit Wikipedia without an account, which at the time, was also restricted if your IP was banned from anonymous edits. If you didn't create an account prior to the ban, you were completely blocked from editing.

https://en.wikipedia.org/wiki/User:82.148.97.69

https://techcrunch.com/2007/01/01/wikipedia-bans-qatar/

Post reply on HN