Im sure this has been asked before i juat can’t find where it has been - Maybe need to work on how to search Lemmy better. But…

Id like to eventually self host some sevices that require external access. While I have IpV6 addresses my IPV4 is dynamic.

Whats the best free way to be able to point some domains/ subdomains I have to my external dynamic IP and keep it updated. Im running OpenWrt on my router. - So possibly should be posting there.

Free Dyndns services seem to be a bit crap. Do I need to pay for a VPS? (seems to defeat the point of self hosting)

  • MehBlah@lemmy.world
    link
    fedilink
    English
    arrow-up
    8
    ·
    edit-2
    2 years ago

    I use afraid.org to keep my dynamic dns pointed at my routers ip. With afraid.org dns you only need a curl statement scheduled on the opendnswrt router to keep the dynamic ip updated.

  • loudwhisper@infosec.pub
    link
    fedilink
    English
    arrow-up
    6
    ·
    2 years ago

    Since you run already OpenWrt, you can check out https://openwrt.org/docs/guide-user/services/ddns/client

    There is a list on this page of compatible services. If you don’t want to use one more service (DNS), you can use a domain registrar with an API (like porkbun) and find online tools that work with that.

    Be aware of the risks of hosting your websites publicly from home, make sure to run them in very isolated environments. Having your VPS compromised is bad, but having your home network compromised is much worse!

    • abeorch@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      2 years ago

      Yes I use no-ip but have to confirm the domain name every month or so and cant use my own domain on the free tier. (Maybe im just being cheap) - Also I haven’t been able to figure out how I would use / get SSL certificates.

      • loudwhisper@infosec.pub
        link
        fedilink
        English
        arrow-up
        3
        ·
        2 years ago

        Yes, I have used it in the past and it was annoying…

        You can get SSL certs with letsencrypt, but you need to use the http verification method.

    • abeorch@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      2 years ago

      Be aware of the risks of hosting your websites publicly from home, make sure to run them in very isolated environments. Having your VPS compromised is bad, but having your home network compromised is much worse!

      Agree - Not something I will throw myself into.

  • BearOfaTime@lemm.ee
    link
    fedilink
    English
    arrow-up
    5
    ·
    2 years ago

    VPS with a tunnel between it and home services (Wireguard/Tailscale, etc)in my opinion is Best Way as it isolates your home gateway (no open ports, because you make outbound connections to your VPS), and let VPS handle Identity and Access Management

    (Or an equivalent isolating architecture).

    Alternatively, Tailscale has a Funnel feature which can route public traffic into your Tailscale network. Though I don’t love this approach, it does work for low-volume connections.

  • Wolfwood1@lemmy.world
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    2
    ·
    2 years ago

    Self hosting doesn’t mean you should host everything yourself at home, using a VPS you manage (so the data inside it is still yours) is also a viable option for selfhosting. I myself host some services at home and a few others in a VPS.

    As for Dyndns, I’ve used a few providers over the years. DuckDNS is the one I’ve been using for 5 years or so and it’s not failed me once. Pretty happy with it.

    Maybe you could have a duckdns pointing to your dynamic IP and your domains / subdomains with a CNAME pointing to the dyndns address?

  • Taasz/Woof@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    1
    ·
    2 years ago

    Many DNS providers have an API and are supported by various dynamicDNS clients. I use Cloudflare and the built in client on my Opnsense router.

    OpenWRT should have a client too that supports a bunch of services.

  • Nomecks@lemmy.ca
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 years ago

    Script that checks your external IP and updates your DNS provider via API.

  • Kit@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 years ago

    Namecheap domains include a dynamic DNS application for free and it works well. Be aware that it only runs on Windows.

    • Pika@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 years ago

      also keep in mind for people not on windows, namecheaps API only functions for business grade, and also is not clearly documented, there is a “dynamic dns setup page” but it isn’t up to date. I find myself trying to use openwrt’s DDNS pages for it but it still isn’t accurate, I am likely going to transfer elsewhere when im closer to the end of my lease. This API restriction also prevents you from easily automating your SSL process using letsencrypt as you are locked down to subdomain based entries instead of wildcard domains.

  • Revv@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 years ago

    You can get super cheap VPSs and use them just as a reverse proxy (with access via VPN). I host 11 servers using one single-core VPS as a reverse proxy. All data resides on premises, in house. I pay 10/yr for VPS. It definitely does not defeat the purpose.

      • Revv@lemmy.blahaj.zone
        link
        fedilink
        English
        arrow-up
        2
        ·
        2 years ago

        Check out low end box. I found coupons for racknerd. I have one VPS that’s $10/yr, another that’s $18/yr. I’ve had zero downtime in the 18 months I’ve used them. No complaints from me. YMMV of course.

  • adr1an@programming.dev
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 years ago

    There are two options, one is tunneling (e.g. tailscale, cloudfare tunnels, or a VPS either with special software or plain old SSH port forward constant connection). The other option, the most popular answer (I think, influenced by how yoy asked) is Dynamic DNS or DynDNS (e.g. duck, hurricane, freedns, etc.) this second one is like the classic solution.

  • abeorch@lemmy.mlOP
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 years ago

    Wow thanks everyone. I think I need to take another look at some of the DynDNS provides and digest all your great feedback.

    Id like to go beyond personal self hosting stuff and maybe run some stuff that requires Federation. Im just thinking at the moment.

  • cizra@lemm.ee
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 years ago

    How often does your IP actually change? Mine changes so rarely (during extended power outages, say) that I am able to just update my IP manually when it does.

    I even used to run my own authoritative DNS server at home (the one offered by my registrar isn’t configurable enough, think SRV and TXT records) - for that, I have a web UI at my registrar to set the IP addresses of the DNS server.

    • phanto@lemmy.ca
      link
      fedilink
      English
      arrow-up
      3
      ·
      2 years ago

      I have dyndns, have since they were 10$ a year, and I’ve gradually realized that my ISP changes my IP on average less than once a year…

  • DontTakeMySky@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 years ago

    Many registrars let you buy a domain and set up dynamic DNS for it within their system so you can own a domain and get dyndns on it.

    Otherwise you could accomplish it with a VPS but you’d only need the smallest one available because it would just need to run nginx to forward to your home ip (and a small tool to update that IP when it changes). So you could probably get something for less than $5/mo.

  • JRaccoon@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    2 years ago

    I’ve been using No-IP free plan for years without issues. Inputted the credentials to my routers DDNS client and then basically forgot about it. Free users need to confirm their account once a month via email but that’s just one click.

    If your domain registrar happens to have an API to update DNS entries, you could implement DDNS yourself by writing a simple automated script to check the external IP (e.g. via ipify.org) and if it’s changed from the last check then call the API to update the DNS entries.

      • JRaccoon@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 years ago

        Sure. I’m not recommending anything, just stating what has worked for me. For simple use cases, I think most of the DDNS services are pretty much the same anyway and it’s easy to switch to an another one if one stops working for some reason.

    • abeorch@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      2 years ago

      Yeah been using No-ip free but I worry that one day I will forget to confirm and ill ge cut-off.