Aloha,

Long term lurker. I probably rather need help with knowing the right works to chant into Google than actual step by step help.

The Problem in short: my self hostet Nextcloud is only available most of the time locally…and rarely externally.

The Problem in long:

Back in 2020 I build a somewhat low energy NAS based on an AsRock J5005-ITX. It contains a single SSD with the OS on it (Debian, running Open Media Vault) and 2x 10TB HardDisks in Raid 1.

I live in Germany, this might be of some import.

In my last two previous flats my Internet was provided by Vodafone where I had a legacy IPv4 address that was mostly static (it changed every time cable reconnected which happened only every 100 days or so), I combined that with an .xyz domain to make it reachable from the outside. For that I had simple port forwarding rules in my FritzBox and some custom DNS entries in my PiHole to locally redirect the nc.[domain].xyz to a virtual machine inside the bare metal Debian box. That worked pretty good.

Now I moved to southern Germany and my new Provider is O2, again via cable, for some reasons I couldnt book Vodafone despite them actually owning the wires. Anyway, O2 only offers pooled IPv4 (DS-Lite Tunnel?) which in practice means that I can see IPv4 stuff but I don’t have a real outside IPv4 address. But I got whole /64 IPv6 Block all for myself. So I configured my domain to that IPv6 address of the virtual web server that contains the Nextcloud and that kinda worked (there was also some Router settings)

But it actually doesnt. Most public wifis or other residential networks dont seem to give me external access to my Nextcloud, ironically, my mobile network via phone does. This is Problem 1.

Problem 2 is a bit more fuzzy, I believe it is because i haven’t configured the DNS/Pi Hole for IPv6 correctly or rather, not at all. The observation is that on my Laptop, the connection to the Nextcloud randomly drops and then gets reestablished. On my phone, while in my home network, the NC is rarely available or only for a few seconds which screws my automatic backup of photos. This is annoying. I think it is because there are two conflicting routes to the NC, one via the internal IPv4 and the other over the publicly available IPv6. But I don’t know enough about networking to really unfuck that.

2020 me was rather knowledgeable when I set all those things up, 2024 me is somewhat busy and I already am busy enough just keeping PHP on the virtual web host current so I can update Nextcloud. I tried googling around, but I don’t quite get what my actual problem is which makes possible solutions a bit muddy. I can imagine that this problem is somewhat common, as there are a lot of folks with self hosted stuff around right? Right?

Problem 1 seems to be best solved with renting the cheapest VPS I can find and then…build a permanent SSH tunnel to it? Use the WireGuard VPN of my router? Some other kind of tunnel to expose a public IPv4? Iirc, VPS are billed by throughput, I am not sure if I might run into problems here, but the only people that use it are my gf and me, and when not at home, mostly for the CalDAV stuff.

Problem 2 looks like a configuration problem to me, but I might be deadly wrong and it might be complicated.

In short, I need confirmation for 1 and maybe some practical hints how to best slap something together, for 2 actual experience would be nice

Way to many words, thanks for your patience.

  • 2xsaiko@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    1
    ·
    5 days ago

    But it actually doesnt. Most public wifis or other residential networks dont seem to give me external access to my Nextcloud, ironically, my mobile network via phone does.

    A lot of those networks are run by boomers who don’t care about IPv6 or don’t want to set it up because (insert excuse from IPv6 Bingo) or non-tech people whose router doesn’t turn it on automatically. So yeah, that is unfortunately something you have to expect and work around.

    Problem 1 seems to be best solved with renting the cheapest VPS I can find and then…build a permanent SSH tunnel to it? Use the WireGuard VPN of my router? Some other kind of tunnel to expose a public IPv4? Iirc, VPS are billed by throughput, I am not sure if I might run into problems here, but the only people that use it are my gf and me, and when not at home, mostly for the CalDAV stuff.

    You don’t even need a tunnel. Just a proxy on a VPS that runs on IPv4 and connects to the IPv6 upstream. Set the AAAA record to the real host and the A record to the VPS. Assuming you actually get a static prefix which you should, but some IPv4-brained ISPs don’t and you get a rotating prefix, in which case it’s probably more annoying.

    I do this too, mine runs on a free Oracle Cloud ARM VPS.

    • Appoxo@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      2
      ·
      4 days ago

      Shouldnt it rather be the home instance of wireguard initiating the ssh tunnel to the vps? This way it shouldnt matter about the rotating subnet.

      • 2xsaiko@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        1
        ·
        4 days ago

        You don’t need a tunnel since your server is already accessible by the VPS over IPv6 (and you have to deal with changing prefix for the direct connection from other hosts already).

    • Burnoutdv@feddit.orgOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 days ago

      What I really wonder now…do I really need to actually rent a VPS or is there somewhere in the internet someone who overs IPv4 to IPv6 forwarding as a service. I looked at the Oracle ARM VPS but this seems to be a bit convoluted…and its Oracle Oo

    • cmnybo@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      2
      ·
      5 days ago

      I don’t think I’ve ever seen a public WiFi network with IPv6 enabled. I usually just use the hotspot on my phone to access my server since my cell carrier provides IPv6. I do have a VPN as a backup though.