Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

agnos.is Forums

  1. Home
  2. Selfhosted
  3. Best way to get IPv4 connectivity to my self-hosted services

Best way to get IPv4 connectivity to my self-hosted services

Scheduled Pinned Locked Moved Selfhosted
selfhosted
24 Posts 17 Posters 27 Views
  • 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.
  • Q [email protected]

    Hi, I live in Germany and only have public IPv6. My address changes only very, very rarely and has never changed in the time I've been self-hosting.

    I also have a very small, pretty cheap VPS with static IPv4/IPv6 – which would seem like a great fit for some sort of tunneling/proxy setup. Now comes the question: What/how should I use it?
    I would like to not have the additional latency for IPv6 enabled hosts, can I just setup a reverse proxy for IPv4? Would Tailscale work for my usecase, what are some resources you found useful when using it?

    Currently, I'm just hosting everything IPv6-only and hoping my address never changes, but that does not work for everyone, as especially many new buildings with fiber optic connections still only have IPv4 (strangely).

    shimitar@downonthestreet.euS This user is from outside of this forum
    shimitar@downonthestreet.euS This user is from outside of this forum
    [email protected]
    wrote on last edited by
    #3

    Wire guard to the vps with nftables port forwarding.

    Check my wiki here https://wiki.gardiol.org/doku.php?id=networking%3Awireguard_redirects

    Or setup ssh with port forwarding as well. Less reliable but nothing to install on a basic Linux.

    D 1 Reply Last reply
    2
    • 2xsaiko@discuss.tchncs.de2 [email protected]

      Yes, you can just use a reverse proxy for IPv4 only and point it to the IPv6 upstream. That is what I do, with a separate DNS record which then combines the two. See the DNS records for id.knifepoint.net (CNAME), http.vineta.knifepoint.net (AAAA, A) and vineta.knifepoint.net (AAAA).

      The reverse proxy config and certificate management is set up with NixOS, if it helps: https://git.dblsaiko.net/systems/tree/nixos/defaults/v4proxy.nix https://git.dblsaiko.net/systems/tree/nixos/modules/sys2x/v4proxy.nix

      R This user is from outside of this forum
      R This user is from outside of this forum
      [email protected]
      wrote on last edited by
      #4

      But having a reverse proxy would enable someone getting access to it to read traffic, while having a VPN Tunnel won't.

      2xsaiko@discuss.tchncs.de2 gray@pawb.socialG 2 Replies Last reply
      0
      • Q [email protected]

        Hi, I live in Germany and only have public IPv6. My address changes only very, very rarely and has never changed in the time I've been self-hosting.

        I also have a very small, pretty cheap VPS with static IPv4/IPv6 – which would seem like a great fit for some sort of tunneling/proxy setup. Now comes the question: What/how should I use it?
        I would like to not have the additional latency for IPv6 enabled hosts, can I just setup a reverse proxy for IPv4? Would Tailscale work for my usecase, what are some resources you found useful when using it?

        Currently, I'm just hosting everything IPv6-only and hoping my address never changes, but that does not work for everyone, as especially many new buildings with fiber optic connections still only have IPv4 (strangely).

        H This user is from outside of this forum
        H This user is from outside of this forum
        [email protected]
        wrote on last edited by
        #5

        I'd just set up the reverse proxy on the VPS and make it forward everything via IPv6. But you could also use a tunnel/VPN, everything from Tailscale to Wireguard or even an SSH tunnel would work. And there are dedicated services like Cloudflare, nohost, neutrinet, pagekite...

        R 1 Reply Last reply
        2
        • R [email protected]

          But having a reverse proxy would enable someone getting access to it to read traffic, while having a VPN Tunnel won't.

          2xsaiko@discuss.tchncs.de2 This user is from outside of this forum
          2xsaiko@discuss.tchncs.de2 This user is from outside of this forum
          [email protected]
          wrote on last edited by
          #6

          If someone manages to get root (!) access on this VPS it's over either way.

          R 1 Reply Last reply
          0
          • Q [email protected]

            Hi, I live in Germany and only have public IPv6. My address changes only very, very rarely and has never changed in the time I've been self-hosting.

            I also have a very small, pretty cheap VPS with static IPv4/IPv6 – which would seem like a great fit for some sort of tunneling/proxy setup. Now comes the question: What/how should I use it?
            I would like to not have the additional latency for IPv6 enabled hosts, can I just setup a reverse proxy for IPv4? Would Tailscale work for my usecase, what are some resources you found useful when using it?

            Currently, I'm just hosting everything IPv6-only and hoping my address never changes, but that does not work for everyone, as especially many new buildings with fiber optic connections still only have IPv4 (strangely).

            death916@lemmy.death916.xyzD This user is from outside of this forum
            death916@lemmy.death916.xyzD This user is from outside of this forum
            [email protected]
            wrote on last edited by
            #7

            Tailscale is amazing. When i first started self hosting i tried a bunch of things to avoid a companies solution but tailscale just works perfectly and form what they say in interviews they dont intend to change the free tiers. Its also open source and there's headscale so eventually you could not rely on the company at all.

            J 1 Reply Last reply
            0
            • R [email protected]

              But having a reverse proxy would enable someone getting access to it to read traffic, while having a VPN Tunnel won't.

              gray@pawb.socialG This user is from outside of this forum
              gray@pawb.socialG This user is from outside of this forum
              [email protected]
              wrote on last edited by
              #8

              Your reverse proxy should have a cert with HTTPS.

              2xsaiko@discuss.tchncs.de2 1 Reply Last reply
              0
              • gray@pawb.socialG [email protected]

                Your reverse proxy should have a cert with HTTPS.

                2xsaiko@discuss.tchncs.de2 This user is from outside of this forum
                2xsaiko@discuss.tchncs.de2 This user is from outside of this forum
                [email protected]
                wrote on last edited by
                #9

                Tbf, technically data is still decrypted at the reverse proxy and then re-encrypted. So if someone manages to reconfigure the proxy or read its memory somehow they could read traffic in plain text.

                However then since they have to control the VPS, they could also get a new cert for that domain (at least the way I’ve configured it) even if it was passed as is to the real host via a tunnel and read the plaintext data that way, so I don’t think a tunnel protects against anything.

                H 1 Reply Last reply
                1
                • Q [email protected]

                  Hi, I live in Germany and only have public IPv6. My address changes only very, very rarely and has never changed in the time I've been self-hosting.

                  I also have a very small, pretty cheap VPS with static IPv4/IPv6 – which would seem like a great fit for some sort of tunneling/proxy setup. Now comes the question: What/how should I use it?
                  I would like to not have the additional latency for IPv6 enabled hosts, can I just setup a reverse proxy for IPv4? Would Tailscale work for my usecase, what are some resources you found useful when using it?

                  Currently, I'm just hosting everything IPv6-only and hoping my address never changes, but that does not work for everyone, as especially many new buildings with fiber optic connections still only have IPv4 (strangely).

                  T This user is from outside of this forum
                  T This user is from outside of this forum
                  [email protected]
                  wrote on last edited by
                  #10

                  Small and stupid question.

                  Why don't use a ddns client to update your ipv6 evytime it changes? With a ttl of a minute your shouldn't be able to see any downtime...

                  I (genuinely) thinks you are trying to solve a small problem in the complicated and hard way.. M

                  K 1 Reply Last reply
                  1
                  • 2xsaiko@discuss.tchncs.de2 [email protected]

                    Tbf, technically data is still decrypted at the reverse proxy and then re-encrypted. So if someone manages to reconfigure the proxy or read its memory somehow they could read traffic in plain text.

                    However then since they have to control the VPS, they could also get a new cert for that domain (at least the way I’ve configured it) even if it was passed as is to the real host via a tunnel and read the plaintext data that way, so I don’t think a tunnel protects against anything.

                    H This user is from outside of this forum
                    H This user is from outside of this forum
                    [email protected]
                    wrote on last edited by
                    #11

                    Or just use Nginx stream proxy, and all the encryption happens on the endpoints. No need for certs on the proxy at all.

                    This is how I make https and mqtts available on ipv4.

                    2xsaiko@discuss.tchncs.de2 1 Reply Last reply
                    0
                    • H [email protected]

                      Or just use Nginx stream proxy, and all the encryption happens on the endpoints. No need for certs on the proxy at all.

                      This is how I make https and mqtts available on ipv4.

                      2xsaiko@discuss.tchncs.de2 This user is from outside of this forum
                      2xsaiko@discuss.tchncs.de2 This user is from outside of this forum
                      [email protected]
                      wrote on last edited by
                      #12

                      Oh interesting, I’ll have to look into that. Is this with that “proxy protocol” I’ve seen mentioned? If not, does this preserve it pass through the client socket address?

                      H 1 Reply Last reply
                      0
                      • 2xsaiko@discuss.tchncs.de2 [email protected]

                        Oh interesting, I’ll have to look into that. Is this with that “proxy protocol” I’ve seen mentioned? If not, does this preserve it pass through the client socket address?

                        H This user is from outside of this forum
                        H This user is from outside of this forum
                        [email protected]
                        wrote on last edited by
                        #13

                        It's merely a tcp proxy. It doesn't even have to be http since it has no idea. The trick with tls is that it can extract the requested host name via SNI.

                        2xsaiko@discuss.tchncs.de2 1 Reply Last reply
                        0
                        • death916@lemmy.death916.xyzD [email protected]

                          Tailscale is amazing. When i first started self hosting i tried a bunch of things to avoid a companies solution but tailscale just works perfectly and form what they say in interviews they dont intend to change the free tiers. Its also open source and there's headscale so eventually you could not rely on the company at all.

                          J This user is from outside of this forum
                          J This user is from outside of this forum
                          [email protected]
                          wrote on last edited by
                          #14

                          I switched from Tailscale to headscale, and I still would suggest Tailscale to anyone. It’s just really done well and they seem to actually love that self-hosters and hobbyists use their stuff.

                          1 Reply Last reply
                          1
                          • Q [email protected]

                            Hi, I live in Germany and only have public IPv6. My address changes only very, very rarely and has never changed in the time I've been self-hosting.

                            I also have a very small, pretty cheap VPS with static IPv4/IPv6 – which would seem like a great fit for some sort of tunneling/proxy setup. Now comes the question: What/how should I use it?
                            I would like to not have the additional latency for IPv6 enabled hosts, can I just setup a reverse proxy for IPv4? Would Tailscale work for my usecase, what are some resources you found useful when using it?

                            Currently, I'm just hosting everything IPv6-only and hoping my address never changes, but that does not work for everyone, as especially many new buildings with fiber optic connections still only have IPv4 (strangely).

                            tfowinder@lemmy.mlT This user is from outside of this forum
                            tfowinder@lemmy.mlT This user is from outside of this forum
                            [email protected]
                            wrote on last edited by
                            #15

                            I have a VPS hosted on Digital ocean with Nginx running as proxy, I use openvpn to connect to the VPS and access all my services over the VPS ip address.

                            I own a domain and forward all the requests from my domain to the Home server IP from my VPS, very useful because I can use different subdomains for different services all on port 80 or 443 even though the service is running on random port.

                            1 Reply Last reply
                            1
                            • H [email protected]

                              It's merely a tcp proxy. It doesn't even have to be http since it has no idea. The trick with tls is that it can extract the requested host name via SNI.

                              2xsaiko@discuss.tchncs.de2 This user is from outside of this forum
                              2xsaiko@discuss.tchncs.de2 This user is from outside of this forum
                              [email protected]
                              wrote on last edited by
                              #16

                              Hm, okay, that does sound like the real client IP will get lost and every connection will appear to come from the proxy then. It would be good if that were passed somehow. My current setup adds the X-Forwarded-For header for example.

                              H 1 Reply Last reply
                              0
                              • 2xsaiko@discuss.tchncs.de2 [email protected]

                                Hm, okay, that does sound like the real client IP will get lost and every connection will appear to come from the proxy then. It would be good if that were passed somehow. My current setup adds the X-Forwarded-For header for example.

                                H This user is from outside of this forum
                                H This user is from outside of this forum
                                [email protected]
                                wrote on last edited by [email protected]
                                #17

                                That is correct. There is a trick where you can set the source ip to the ipv6 mapped ipv4 ip it originally came from. I have implemented that in a transparent tcp proxy I worked on some years ago, but I am not sure if nginx supports that.

                                I should look into that actually. It would be useful to me as well.

                                Edit: actually that only works if you are in the routing path. However a nat64 solution would work as well, where you map a /64 back to the proxy.

                                1 Reply Last reply
                                0
                                • shimitar@downonthestreet.euS [email protected]

                                  Wire guard to the vps with nftables port forwarding.

                                  Check my wiki here https://wiki.gardiol.org/doku.php?id=networking%3Awireguard_redirects

                                  Or setup ssh with port forwarding as well. Less reliable but nothing to install on a basic Linux.

                                  D This user is from outside of this forum
                                  D This user is from outside of this forum
                                  [email protected]
                                  wrote on last edited by
                                  #18

                                  I do this already, but I'm going compare my nftables rules when i get home. You're ip table looks more elegant.

                                  1 Reply Last reply
                                  0
                                  • Q [email protected]

                                    Hi, I live in Germany and only have public IPv6. My address changes only very, very rarely and has never changed in the time I've been self-hosting.

                                    I also have a very small, pretty cheap VPS with static IPv4/IPv6 – which would seem like a great fit for some sort of tunneling/proxy setup. Now comes the question: What/how should I use it?
                                    I would like to not have the additional latency for IPv6 enabled hosts, can I just setup a reverse proxy for IPv4? Would Tailscale work for my usecase, what are some resources you found useful when using it?

                                    Currently, I'm just hosting everything IPv6-only and hoping my address never changes, but that does not work for everyone, as especially many new buildings with fiber optic connections still only have IPv4 (strangely).

                                    Y This user is from outside of this forum
                                    Y This user is from outside of this forum
                                    [email protected]
                                    wrote on last edited by
                                    #19

                                    simplest that comes to mind is a reverse ssh tunnel and a reverse proxy on the vps maybe

                                    1 Reply Last reply
                                    0
                                    • Q [email protected]

                                      Hi, I live in Germany and only have public IPv6. My address changes only very, very rarely and has never changed in the time I've been self-hosting.

                                      I also have a very small, pretty cheap VPS with static IPv4/IPv6 – which would seem like a great fit for some sort of tunneling/proxy setup. Now comes the question: What/how should I use it?
                                      I would like to not have the additional latency for IPv6 enabled hosts, can I just setup a reverse proxy for IPv4? Would Tailscale work for my usecase, what are some resources you found useful when using it?

                                      Currently, I'm just hosting everything IPv6-only and hoping my address never changes, but that does not work for everyone, as especially many new buildings with fiber optic connections still only have IPv4 (strangely).

                                      R This user is from outside of this forum
                                      R This user is from outside of this forum
                                      [email protected]
                                      wrote on last edited by
                                      #20

                                      Ionos.de has a €1 a month VPS

                                      I think 1 core, 1gb ram, and 10gb.

                                      Use either caddy or Nginx proxy manager. Both are easy to setup. Also both are dockerized.

                                      I use Tailscale as my tunnel.

                                      Total latency is about 70-90ms for me.

                                      L 1 Reply Last reply
                                      2
                                      • T [email protected]

                                        Small and stupid question.

                                        Why don't use a ddns client to update your ipv6 evytime it changes? With a ttl of a minute your shouldn't be able to see any downtime...

                                        I (genuinely) thinks you are trying to solve a small problem in the complicated and hard way.. M

                                        K This user is from outside of this forum
                                        K This user is from outside of this forum
                                        [email protected]
                                        wrote on last edited by
                                        #21

                                        Plenty of IPv4 only networks still exist from which you would not be able to access the services. I am in a similar situation as OP with my offsite address being IPv6 + CGNAT IPv4 and my own address being IPv4 only.

                                        1 Reply Last reply
                                        0
                                        • H [email protected]

                                          I'd just set up the reverse proxy on the VPS and make it forward everything via IPv6. But you could also use a tunnel/VPN, everything from Tailscale to Wireguard or even an SSH tunnel would work. And there are dedicated services like Cloudflare, nohost, neutrinet, pagekite...

                                          R This user is from outside of this forum
                                          R This user is from outside of this forum
                                          [email protected]
                                          wrote on last edited by [email protected]
                                          #22

                                          I'll add Pangolin to the list, it's a self-hosted Cloudflare tunnel alternative.

                                          1 Reply Last reply
                                          2
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups