• apearson@lemmy.worldOPM
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Hopefully once Google and other stats get over 50% there will be a “look at the majority” effect. Most ISPs in my country already support IPv6 with a couple IPv6 only with NAT64 on the edge. But I guess we’ll just have to see.

    • TCB13@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      1 year ago

      I really hope you’re right. I’m one of those people who believe that we should simply abolish IPv4 completely. We have zero need for IPv4 and dual-stack networks are way more prone to errors and complexity.

      People usually say that IPv6 is hard and IPv6 addresses aren’t “memorable” but that’s mostly BS because with the :: aka “reduced format” they can be even simpler than IPv4. Others might say it is dangerous without understanding how NAT isn’t necessary and how a firewall should work. Another common argument against deprecating IPv4 is that we should keep compatibility with older devices, to which I say… IPv6 support was introduced in Windows XP SP2 (2004).

      IPv6 is great, largely simply networks, make things more efficient and allows for more complex scenarios that are hard to deal with in IPv4. Multihoming, advanced load balancing, network level split DNS, direct peer-to-peer communication, totally abolishing DHCP in a usable way etc.

      • Calmarius@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        I think the biggest problem with IPv6 adoption is that it does not come with a full transitional package that’s mandatory for all IPv6 capable nodes.

        If A has IPv6, but B doesn’t, then A can’t use IPv6 to reach B. If both A and B has IPv6 but there is no v6 route between A and B, then A cannot use IPv6 to reach B.

        What should have been done instead is that the transition mechanisms should have made sure that anyone can pick up IPv6 and use IPv6 exclusively on their own discretion and then transitional mechanisms would ensure that everything works. Whenever a node has both public v6 and v4 addresses it should be ready to translate when a packet needs to be routed into the v4 internet.

        This would basically mean a few things:

        • A scheme that allows self assignment/calculation of a globally unique v6 address without administration or registration.
        • Automatic NAT64 when the destination is v4 using a fixed well known prefix.
        • Automatic tunneling when the destination is v6 and there are v4 nodes in the path. To make this work we need a scheme that allows finding the appropriate v4 gateway for a given v6 address if it’s a registered/officially assigned address and not a self assigned/calculated one (perhaps using an .arpa domain for this).
        • Emulated v4 layer to make v4 only applications work when the network is v6 only.
        • There is no DNS64, clients would look up both A and AAAA records and use the methods above to reach the destination.

        When a node has no v4 neighbors, then it can use v6 natively, somewhere upstream there will be a router that’s dual stack and can translate the traffic if needed.

        With all these in place, v4 hosts can begin using v6 without significant service degradation and would allow enabling v6 by default.

        If we had done it this way, the transition would have finished long ago.