Video creator and IPv6 enthusiast apalrd’s adventures - @[email protected] - is planning to lead a renewed effort continuing development of the NAT64 translator tayga.
He also made a video comparing different existing open source solutions and demoing tayga on YouTube: https://www.youtube.com/watch?v=WlQH8KubgiA

  • Scoopta@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    3 days ago

    IMO tayga shouldn’t even be branded as a NAT64. It can be used for SIIT or as a CLAT in a 464XLAT setup but crucially those are both different from true NAT64. The only FOSS NAT64 I’ve found is jool

    • litchralee
      link
      fedilink
      English
      arrow-up
      0
      ·
      edit-2
      3 days ago

      I’ve only ever used Jool – because I’m vain and foolishly think I’ll one day have enough traffic to warrant multiple state-sharing translators – but I think Tayga has it right from their README:

      Stateless versus Stateful NAT64

      In situations where stateful NAT64 is required, TAYGA can be used in combination with a stateful IPv4 NAT such as the iptables MASQUERADE target. This allows the administrator a great deal more flexibility than if stateful NAT were implemented directly in TAYGA.

      For known-sized subnets (eg security cameras), it can be perfectly appropriate to use stateless NAT64 so that old hardware can speak the modern Internet Protocol. But in other situations, stateless NAT64 is the only way to go and the Tayga developers knew to not reinvent the decades-old, proven stateful NAT44 mechanism in the Linux kernel.

      And not could they hope to even compete with the kernel, as Tayga is based on the user space Tun/Tap driver. Jool, however, is in kernel, and can do some amazing (read: unusual) things. But just because Tayga only supports stateless operation doesn’t mean it should be ignored as a valid NAT64 solution, even if it’s not full featured.

      IMO, the more ways we can get away from Legacy IP, the better.

      • Scoopta@programming.dev
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 days ago

        I’m not saying it should be ignored. “Stateless NAT64” is technically called SIIT and is a mode of operation Jool supports too. I am mostly complaining about terminology here, not usefulness. Tayga is not a NAT64 and has different use cases.

        • litchralee
          link
          fedilink
          English
          arrow-up
          0
          ·
          edit-2
          2 days ago

          Tayga is not a NAT64

          Tayga does Translation of Network Addresses, between IPv4 and IPv6. Compared to Jool, Tayga almost purely does address translation, unburdened by the needs of port translation.

          The fact that NAT44 implementations customarily include port translation for TCP/UDP carries little weight on the terminology of IPv6 technologies, the same way that DHCPv6 stripped away the disparate functionalities of DHCPv4 to be more modular and less like a “kitchen sink”, deferring to RDNSS or even outright running in stateless DHCPv6 mode.

          • Scoopta@programming.dev
            link
            fedilink
            English
            arrow-up
            1
            arrow-down
            2
            ·
            edit-2
            2 days ago

            Correct, and stateless translation is called SIIT which is the point of my comment. NAT64 traditionally refers to NAPT. Just like how NAT66 traditionally refers to NAPT and stateless 6to6 translation is usually referred to as NPTv6