Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Setup NAT64 in pfSense

    Scheduled Pinned Locked Moved IPv6
    ipv6nat64dns64
    49 Posts 16 Posters 24.9k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • JKnottJ
      JKnott @bert64
      last edited by

      @bert64 said in Setup NAT64 in pfSense:

      They don't need to move to IPv6, they could continue working around the shortcomings of legacy ip for years to come. Just like you could keep repairing and modifying a rusty 1980s car. Microsoft have clearly decided that it's more cost effective, easier and more secure to move to IPv6.
      Yes not everything needs to talk to each other, but inevitably some things will.
      With an IPv6 network where everything is addressable, you add the necessary allow rules and job done.
      With legacy ip, you might have overlapping address space so you need nat or even double nat, which then means you need to waste address space with the translated addresses too.

      Yep, IPv4 hasn't been adequate since the day it became necessary to use NAT. Now, we have hacks upon hacks to get around the address shortage. Of course, this is before we get to the fact that many people are behind carrier grade NAT, which means they have no means of accessing their home network with a VPN etc..

      IPv6 is where the world is moving and refusing to move with it is head in the sand stupidity. The longer people refuse to move, the longer some people will be behind CG NAT.

      PfSense running on Qotom mini PC
      i5 CPU, 4 GB memory, 32 GB SSD & 4 Intel Gb Ethernet ports.
      UniFi AC-Lite access point

      I haven't lost my mind. It's around here...somewhere...

      1 Reply Last reply Reply Quote 0
      • D
        dabombnl
        last edited by

        Just tried this and it works great. Here is what I did:

        1. Download FreeBSD 11.3 (or whatever version your pfSense is based on), copy /boot/kernel/ipfw_nat64.ko to your pfsense install.
        2. Load the IPFW module: 'kldload ipfw_nat64'
        3. Enable IPFW: 'sysrc firewall_enable=YES' and 'service ipfw start'
        4. Enter the nat64lsn rules you want, like in OP.
        5. Make sure you are allowing the traffic in both PF and IPFW firewalls.

        How do we go about getting this integrated?

        IsaacFLI 1 Reply Last reply Reply Quote 3
        • IsaacFLI
          IsaacFL @dabombnl
          last edited by

          @dabombnl said in Setup NAT64 in pfSense:

          Just tried this and it works great. Here is what I did:

          1. Download FreeBSD 11.3 (or whatever version your pfSense is based on), copy /boot/kernel/ipfw_nat64.ko to your pfsense install.
          2. Load the IPFW module: 'kldload ipfw_nat64'
          3. Enable IPFW: 'sysrc firewall_enable=YES' and 'service ipfw start'
          4. Enter the nat64lsn rules you want, like in OP.
          5. Make sure you are allowing the traffic in both PF and IPFW firewalls.

          How do we go about getting this integrated?

          There is very old feature request, but the developers haven't seemed to be working on it.

          https://redmine.pfsense.org/issues/2358

          Maybe you could add this comment to the end of the feature request and see if it will bump it.

          I do know that the unbound resolver has added a feature to turn on the DNS64 support in 2.5 roadmap.

          D 1 Reply Last reply Reply Quote 0
          • D
            dabombnl @IsaacFL
            last edited by

            @IsaacFL

            Just went ahead and implemented this.

            https://github.com/pfsense/pfsense/pull/4405

            Have never tried to integrate code into pfSense before. Will see how it goes.

            N 1 Reply Last reply Reply Quote 2
            • N
              Napsterbater @dabombnl
              last edited by

              @dabombnl

              Thanks for this. I am hoping your work will make it into pfsense.

              I would love to contribute, but coding and such is just not my forte, so even for submitting what you have you have my thanks whatever the outcome.

              1 Reply Last reply Reply Quote 0
              • JeGrJ
                JeGr LAYER 8 Moderator
                last edited by

                Just FYI: the issue https://redmine.pfsense.org/issues/2358 got that pull request #4405 so it should go into review now.

                Don't forget to upvote ๐Ÿ‘ those who kindly offered their time and brainpower to help you!

                If you're interested, I'm available to discuss details of German-speaking paid support (for companies) if needed.

                M 1 Reply Last reply Reply Quote 2
                • M
                  mfld LAYER 8 @JeGr
                  last edited by

                  @jegr said in Setup NAT64 in pfSense:

                  Just FYI: the issue https://redmine.pfsense.org/issues/2358 got that pull request #4405 so it should go into review now.

                  Unfortunately this didn't make it. ๐Ÿ˜“

                  We will have to start all over.

                  S 1 Reply Last reply Reply Quote 0
                  • B
                    bbrendon
                    last edited by

                    I was researching this and this is the best I could find.
                    https://www.arnavion.dev/blog/2020-04-18-i-switched-my-home-network-to-ipv6/

                    1 Reply Last reply Reply Quote 0
                    • S
                      SpoZen @mfld
                      last edited by

                      @mfld

                      What happend with this? Reading the github comments, it seems like NAT64 support was removed from FreeBSD? Why?

                      Maybe they decided there are better solutions out there? 464XLAT seems to be the successor to NAT64 and it's been in FreeBSD since version 12.1.

                      J 1 Reply Last reply Reply Quote 0
                      • J
                        jwt Netgate @SpoZen
                        last edited by

                        @SpoZen well, I'm going to Lazarus this thread

                        We'll have NAT64 in 25.01. I may even decide to put it in CE 2.8.

                        This is an effect of the work we've been doing on pf of late.

                        To use it, you simply give pf a rule like:

                        pass in on $LAN inet6 from any to 64:ff9b::/96 af-to inet from ($WAN:0)
                        

                        Of course, this will be buried well inside the pfSense UI, you'll just have to enable with minor config.

                        Unbound already supports DNS64

                        JeGrJ 1 Reply Last reply Reply Quote 7
                        • JeGrJ
                          JeGr LAYER 8 Moderator @jwt
                          last edited by

                          @jwt Definetly looking forward to it and be glad to test it out in first snapshots/betas that will have it. We can easily hook up an v6 only network in the lab (there should already be one) and give it a spin :)

                          Don't forget to upvote ๐Ÿ‘ those who kindly offered their time and brainpower to help you!

                          If you're interested, I'm available to discuss details of German-speaking paid support (for companies) if needed.

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post
                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.