←back to thread

296 points jmillikin | 10 comments | | HN request time: 0.039s | source | bottom
Show context
xacky ◴[] No.44412475[source]
I have strong opinions about ipv4, especially since I'm forced to use an ipv4 isp. The lack of ipv6 adoption should be considered one of the great failures of tech. Who actually is responsible? Is it router manufacturers writing poor quality firmware, ipv4 advocates in leadership positions at isps, ipv4 address speculators, poor training of network engineers and tech support staff? I think we all need to have a much greater discussion with the internet at large and not just on isolated web posts and subreddits.

For comparison, the internet mostly transitioned off of TLS 1.0 just fine, why can't we do the same for transitioning off ipv4? Maybe AI powered proxies for legacy code perhaps?

replies(5): >>44412760 #>>44412955 #>>44414305 #>>44415086 #>>44418534 #
1. crims0n ◴[] No.44412760[source]
We have a saying in the industry… IPv6 is an academic solution to an engineering problem. The reality is it’s just too damn complicated to implement and maintain at scale while also retaining compatibility with v4… which is never going to go away because other than the address shortage, there are no problems with it.
replies(2): >>44413751 #>>44414215 #
2. kstrauser ◴[] No.44413751[source]
We have no such saying in the industry. IPv6 is generally easier to implement and maintain. If IPv6 were the incumbent and someone came in proposing IPv4, they’d be laughed out of the room for its ridiculousness. “You have to run a stateful server just to assign addresses? Dynamic header length? A tiny address space? And tell me again about this NAT thing, LOL.”

V6 was designed by the engineers who realized what they got wrong in V4.

replies(1): >>44414236 #
3. bigstrat2003 ◴[] No.44414215[source]
IPv6 is not actually hard to implement or maintain. A lot of people have repeated that meme, but it isn't true at all.
replies(1): >>44414458 #
4. tsimionescu ◴[] No.44414236[source]
You still need a stateful server to assign IPv6 addresses for most use cases, through DHCPv6. SLAAC doesn't even give you a DNS server yet. And even if it did, many ISPs assign too small address spaces for SLAAC, or your networks isn't so simple that you can just auto-negotiate some address.
replies(2): >>44414438 #>>44414679 #
5. jcgl ◴[] No.44414438{3}[source]
1. You have been able to assign DNS through SLAAC for years 2. Stateless DHCPv6 serves most needs not covered by SLAAC 3. Yeah, some ISPs screw up and don’t assign enough address space. Most likely because they’re still in the address-poverty mindset of v4

> your networks isn't so simple that you can just auto-negotiate some address

I don’t understand what you mean by this…v6 afaik has every tool that v4 does for assignment. If automated assignment through SLAAC or either kind of DHCP doesn’t meet your needs, then there’s manual assignment, just like with v4.

6. murderfs ◴[] No.44414458[source]
Okay, then please reimplement the equivalent of the following code to work with both IPv4 and IPv6:

    int fd = socket(AF_INET, SOCK_STREAM, 0);
    struct sockaddr_in addr = { .sin_family = AF_INET, .sin_port = htons(1234) };
    addr.sin_addr.s_addr = htonl(INADDR_ANY);
    bind(fd, (struct sockaddr*)&addr, sizeof(addr));
    listen(fd, 128);
    int client;
    while (client = accept(fd, 0, 0)) {
        // ...
    }
replies(3): >>44415181 #>>44415190 #>>44415198 #
7. riobard ◴[] No.44414679{3}[source]
Stop spreading misinformation.

> You still need a stateful server to assign IPv6 addresses for most use cases, through DHCPv6. SLAAC doesn't even give you a DNS server yet.

DNS now comes in Router Advertisement per RFC 8106. No need for DHCPv6 anymore.

> And even if it did, many ISPs assign too small address spaces for SLAAC, or your networks isn't so simple that you can just auto-negotiate some address.

Most residential ISPs allocate in /48, /52, /56, or /60. Even if they allocate in the smallest /64, it's still perfectly fine for SLAAC for most home users utilizing a single subnet.

8. bigstrat2003 ◴[] No.44415181{3}[source]
I don't think anyone was talking about the difficulty of implementing IPv6 in software. I certainly wasn't. I meant the difficulty of implementing it as a network admin, which is not really hard.
9. ◴[] No.44415190{3}[source]
10. p1mrx ◴[] No.44415198{3}[source]
https://beej.us/guide/bgnet/html/ section 5.6