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

Tailscale with pfsense exit node, no DNS

Scheduled Pinned Locked Moved Tailscale
35 Posts 6 Posters 3.0k 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.
  • S
    Soloam @michmoor
    last edited by Feb 15, 2025, 12:46 AM

    @michmoor not using headscale, the main reason for me to upgrade the tailscale client was to be able to connect to headscale!

    1 Reply Last reply Reply Quote 1
    • D
      Defiling2063
      last edited by Mar 12, 2025, 3:15 PM

      I experienced the same problem (couldn't resolve names) using pfsense as exit node after I upgraded tailscale client on pfsense connecting to headscale. To troubleshoot:

      • I turned off and on advertise-exit-node on pfsense.
      • on headscale, I disable / enable the route

      It worked for a few hours and then stopped working.

      I also experienced routing problem from hosts behind pfsense to other hosts meshed through tailscale. I downgraded headscale and tailscale client on pfsense. It has been working fine since this morning.

      S 1 Reply Last reply Mar 12, 2025, 5:14 PM Reply Quote 0
      • S
        Soloam @Defiling2063
        last edited by Mar 12, 2025, 5:14 PM

        @Defiling2063 What version did you downgraded headscale to make it work with default tailscale client?

        1 Reply Last reply Reply Quote 0
        • D
          Defiling2063
          last edited by Defiling2063 Mar 12, 2025, 6:11 PM Mar 12, 2025, 5:59 PM

          0.23.0.

          I may be able to run an later version but that was the version I upgraded from before thing went south. I reverted the upgrade.

          p/s wish I saw this thread before I upgraded headscale and tailscale client on pfsense. That would have saved me a week of pulling hair. Cheers.

          1 Reply Last reply Reply Quote 0
          • J
            jacobhall
            last edited by Mar 13, 2025, 9:08 AM

            I believe I am experiencing the same issue. I recently set up a fresh tailnet and added pfsense as an exit node. The exit node works except when Tailscale DNS is enabled on the client, in which case DNS breaks. This problem doesn't occur when other exit nodes are used.

            Package Versions:
            headscale 0.25.1
            pfSense-pkg-Tailscale 0.1.4
            tailscale (freebsd pkg on pfsense) 1.80.3

            J 1 Reply Last reply Mar 25, 2025, 6:44 AM Reply Quote 0
            • J
              jacobhall @jacobhall
              last edited by Mar 25, 2025, 6:44 AM

              Linking relevant threads on the Tailscale GitHub and Lawrence Systems forum which describe related issues (it looks like @Soloam has participated in all of these).

              If anyone having a similar problem bumps into this, please take a minute to document your experience so that we can collect more information and try to solve this. Thanks

              S D 2 Replies Last reply Mar 25, 2025, 3:38 PM Reply Quote 0
              • S
                Soloam @jacobhall
                last edited by Mar 25, 2025, 3:38 PM

                @jacobhall said in Tailscale with pfsense exit node, no DNS:

                Linking relevant threads on the Tailscale GitHub and Lawrence Systems forum which describe related issues (it looks like @Soloam has participated in all of these).

                If anyone having a similar problem bumps into this, please take a minute to document your experience so that we can collect more information and try to solve this. Thanks

                This problem, from what I can tell, only happens on people using headscale, because we have to change the tailscale client version on pfsense...With Tailscale services the tailscale client on the pfsense package works and it seams to be imune to this problem

                1 Reply Last reply Reply Quote 0
                • E
                  elvisimprsntr
                  last edited by elvisimprsntr Mar 25, 2025, 4:46 PM Mar 25, 2025, 4:44 PM

                  Not sure if related, but there are some TestFlight builds which include DNS fixes.

                  Screenshot 2025-03-25 at 12.42.22 PM.png Screenshot 2025-03-25 at 12.42.32 PM.png

                  J 1 Reply Last reply Mar 25, 2025, 5:48 PM Reply Quote 0
                  • J
                    jacobhall @elvisimprsntr
                    last edited by Mar 25, 2025, 5:48 PM

                    @elvisimprsntr I'd be willing to try it out. When my client uses pfSense as an exit node, it can ping 100.100.100.100, but DNS queries to the same IP address time out. This makes me think there is an issue with the pfSense/FreeBSD implementation specifically.

                    1 Reply Last reply Reply Quote 0
                    • E
                      elvisimprsntr
                      last edited by elvisimprsntr Mar 26, 2025, 4:56 AM Mar 26, 2025, 4:46 AM

                      I don't seem to have a problem with DNS when using pfSense or NAS docker container as an exit node, but I am not using headscale.

                      PFSENSE

                      • 2.7.2 CE
                      • Tailscale package 1.4.0
                      • Tailscale 1.80.3_1
                      • Advertise sub-net routes and exit node enabled
                      • Accept DNS from control server enabled

                      NAS

                      • TrueNAS SCALE 24.10.2
                      • Tailscale docker app 1.2.14
                      • Tailscale 1.80.3
                      • Advertise sub-net routes and exit node enabled
                      • Accept DNS from control server enabled

                      ADMIN CONSOLE

                      • Nameservers: Magic DNS
                      • Global nameservers, Local DNS settings: pfSense LAN IP
                      • Search domains: tailnet, pfSense domain
                      • Advertise sub-net routes and exit node enabled for both pfSense and NAS

                      CLIENT

                      • iOS 18.4 RC
                      • Tailscale 1.81.193 via TestFlight

                      IMG_3055.png

                      IMG_3057.jpeg

                      1 Reply Last reply Reply Quote 1
                      • E
                        elvisimprsntr
                        last edited by elvisimprsntr Mar 28, 2025, 7:36 AM Mar 28, 2025, 7:29 AM

                        1.82.0 is released with some MagicDNS fixes.

                        Changelog

                        Screenshot 2025-03-28 at 3.25.00 AM.png

                        I manually updated my NAS docker container.

                        tailscale update
                        reboot
                        

                        Give it a few days for a FreeBSD package to be available.

                        Freshports

                        J E 2 Replies Last reply Mar 28, 2025, 5:14 PM Reply Quote 0
                        • J
                          jacobhall @elvisimprsntr
                          last edited by Mar 28, 2025, 5:14 PM

                          @elvisimprsntr I'll give it another try once that version makes it to Google Play, but at first glance this appears to be an unrelated bugfix. I have been experiencing this issue using a v1.82.0 client on Linux, which should include the patch you mention. My pfSense box is currently running 1.80.3, so maybe it's worth testing 1.80.3_1 in case that makes a difference.

                          I agree with @Soloam above that this is likely an issue only experienced by headscale users. Regardless, I think it's the pfSense package that requires fixing as my other exit nodes running Linux have not had any issues. I don't have the time right now to delve into the Tailscale, FreeBSD, and pfSense codebases at the moment, but I hope to support this bugfix however I can.

                          I am hopeful someone on this forum can help contextualize this issue in terms of pfSense's DNS system and point us (me) in the right direction for contributing a fix.

                          1 Reply Last reply Reply Quote 0
                          • E
                            elvisimprsntr @elvisimprsntr
                            last edited by elvisimprsntr Mar 29, 2025, 1:27 PM Mar 29, 2025, 9:20 AM

                            I upgraded 2.7.2 CE to TS 1.82.0

                            No issues so far.

                            1 Reply Last reply Reply Quote 0
                            • D
                              Defiling2063 @jacobhall
                              last edited by Apr 30, 2025, 6:47 PM

                              @jacobhall

                              I was on the stock version (pfsense community 2.7.2) of tailslcale connecting to headscale.

                              I upgraded tailscale client on pfsense to 1.82.5 while leaving headscale unchanged. I was able to reproduce the problem -- my android tailscale client cannot resolve dns when using the tailscale client on pfsense as an exit node. If I disable "Use tailscale DNS" on my android client, internet connectivity works.

                              I am going to leave it broken for now, if anyone wants me to try different things. Thanks.

                              M 1 Reply Last reply 9 days ago Reply Quote 0
                              • M
                                mathiashedberg @Defiling2063
                                last edited by 9 days ago

                                @jacobhall @Defiling2063
                                I think it has something to do with DNS over HTTPS DoH.

                                I have all the same issues. For me it worked after setup until i rebooted.

                                It seems that the clients are pushed a faulty dns config and thinks it can do dns over https:

                                sudo tailscale dns status
                                

                                Resolvers (in preference order):

                                • 1.1.1.1
                                • 9.9.9.9

                                I can use dig to check that the dns resolves using these servers just fine.

                                When the system uses tailscales dns servers, the issue arises:

                                % tailscale dns query apple.com
                                DNS query for "apple.com" (A) using internal resolver:
                                
                                failed to query DNS: 500 Internal Server Error: resolving using "/dns-query": unrecognized resolver type "/dns-query"
                                unrecognized resolver type "/dns-query"
                                

                                My guess is that headscale is pushing a faulty dns config?

                                J 1 Reply Last reply 9 days ago Reply Quote 0
                                • J
                                  jacobhall @mathiashedberg
                                  last edited by 9 days ago

                                  I would like to note here that Headscale recently released version v0.26.0, which included some significant changes. I intend to test if the DNS issues persist using this new version soon.

                                  @mathiashedberg, would you be willing to share the software versions you tried in your testing, for our reference? Many thanks.

                                  Additionally, I have been dealing with this unrelated issue with Tailscale (w/ Headscale) on Android. In case you fellow Headscale users are experiencing something similar...I'm trying to iron out the usability of this VPN system :)

                                  J 1 Reply Last reply 9 days ago Reply Quote 0
                                  • J
                                    jacobhall @jacobhall
                                    last edited by 9 days ago

                                    Quick update: I upgraded my Headscale control server to version 0.26.0, and this issue persists. I continue to use the pfSense-pkg-Tailscale 0.1.4 and tailscale 1.80.3 in pfSense.

                                    M 1 Reply Last reply 9 days ago Reply Quote 0
                                    • M
                                      mathiashedberg @jacobhall
                                      last edited by mathiashedberg 9 days ago 9 days ago

                                      @jacobhall Hi.

                                      For me the issue was prevalent pre 0.26. I set up a new fresh headscale instance with v0.26.0 (upgrade did not work) and everything worked until i rebooted pfsense.

                                      I mitigate this by adding --accept-dns=False to my clients when using exit nodes, and then set that dns manually in the system.

                                      Regarding issues, im dealing with this also: https://github.com/juanfont/headscale/issues/2634

                                      J 1 Reply Last reply 9 days ago Reply Quote 0
                                      • J
                                        jacobhall @mathiashedberg
                                        last edited by jacobhall 9 days ago 9 days ago

                                        @mathiashedberg to clarify, even using your fresh 0.26.0 instance, your clients had to disable the accept-dns option when using the pfSense exit node? This aligns with my experience (with both 0.26.0 and previous versions).

                                        Setting the DNS manually is possible, but a headache. I don't want to make all of my users do so, especially on mobile.

                                        Regarding issues, im dealing with this also: https://github.com/juanfont/headscale/issues/2634

                                        Concerning indeed!

                                        M 1 Reply Last reply 9 days ago Reply Quote 0
                                        • M
                                          mathiashedberg @jacobhall
                                          last edited by 9 days ago

                                          @jacobhall With my fresh instance on 0.26.0, and pfsense added to the net, my clients could use pfsense as an exit node without disabling accept-dns. It was only after rebooting that it stopped working.

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post
                                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.
                                            [[user:consent.lead]]
                                            [[user:consent.not_received]]