Hello Selfhosted!

So I have an interesting issue. I have a docker host, and that host i have a Caddy container. I have that setup to handle reverse proxying. I have it setup to be local only. I have a pihole and a wireguard server. And can connect to my network successfully.

The part that confuses me is that while on network everything works great. While on VPN I can connect to services by IP:Port. If I use mobile data with VPN, I can’t use the site addresses. x.domain.xxx (for privacy sake I’m leaving my domain out of the post.) But when I connect to WiFi, any WiFi, and connect to VPN I can go to the address I have setup for reverse proxying.

I am unsure how to troubleshoot this. Any pointers would be appreciated.

    • Hellmo_luciferrariOP
      link
      fedilink
      English
      11 day ago

      I have DNS handled by my PiHole (using unbound as-can upstream DNS)

      On my PiHole, I have an A record for the docker box, and then CNAME records pointing to the A name record.


      It makes little sense why it works on an offsite WiFi, but not mobile data.

      • sylver_dragon
        link
        English
        31 day ago

        It makes little sense why it works on an offsite WiFi, but not mobile data.

        I’d agree with unbuckled above, it’s a DNS issue. If your mobile device is capable, use nslookup or dig to see what responses you are getting in different scenarios. It’s possible that your VPN software is leaking DNS queries out to the mobile data provider’s DNS servers while you are on mobile data and only using the correct DNS settings when you are on wifi. Possibly look for split tunnel settings in the VPN software, as this can create this type of situation.

        You can also confirm this from the pihole side. Connect to the VPN via mobile data and browse to some website you don’t use often, but is not your own internal stuff. Then open the query log on your pihole and see if that domain shows up. I’d put money on that query not showing in the pihole query log.

        • Hellmo_luciferrariOP
          link
          fedilink
          English
          11 day ago

          I turned on query logging for my PiHole. I chose a random site I don’t typically browse, and confirmed I saw it logged in my PiHole. Though, I am thinking it’s likely DNS that’s causing issues.

          I even tried turning off split tunneling, and it does the same thing.

          I checked automatic DNS setting on my phone.


          I don’t know if it will make a difference but the DNS records for my local services are CNAME records, so I am going to change it to an A/AAAA record on PiHole.

          I have these set in PiHole and not my Unbound.

      • Strit
        link
        fedilink
        English
        21 day ago

        In that case, are you sure the VPN is actually on, when on cellular?

          • @[email protected]
            link
            fedilink
            English
            21 day ago

            I don’t have a lot of networking skill here, but could it be your WiFi connections (anywhere) are IPv4 and on mobile it forces IPv6, thus why you can connect via IP:port? Typically your wireguard host machine has IP forwarding/masquarading setup so you can reach your home LAN. Could this be an issue through the router / proxy?

              • @[email protected]
                link
                fedilink
                English
                21 day ago

                It may not even be the issue, I’m just spitballing, and it maybe DNS issues like others mentioned or cell provider blocking some aspect. As you probably know Wireguard can be set for all traffic to route through the tunnel, or some outside of it. Maybe cell network is not routing DNS through the tunnel, but using its own, or maybe they used a cached Domain name lookup that doesn’t have your domain IP. Again, networking/DNS etc is my blind spot. I.e. I have setup openmedia vault on a 256MB RAM arm board to serve my music and SMB shares, but I don’t understand reverse proxy LOL.

                • Hellmo_luciferrariOP
                  link
                  fedilink
                  English
                  21 day ago

                  So, I of course rebooted everything i could, the box hosting my DNS/PiHole, VPN, docker box, etc. However, was remote and couldn’t reboot my modem.

                  I lowered my MTU on my VPN client config after rebooting my modem, and it’s working.

                  I don’t fully understand why it worked, but it did.

                  Maybe something on my ISPs end that wasn’t functioning.

                  • @[email protected]
                    link
                    fedilink
                    English
                    21 day ago

                    It’s probably still IPv6 related. If you use something like Network Analyzer on your phone while only connected to the mobile network you may find that it only shows an IPv6 address and DNS server, no IPv4 config. That could explain the difference. Particularly if you were using the maximum typically permissible MTU. Your provider might also be doing some 6to4 tunneling somewhere that adds overhead and causes size problems.

          • Strit
            link
            fedilink
            English
            21 day ago

            Beats me then. Network wise an external Wifi should follow the same rules as an external cellular connection.