hi everyone,

I was just about to self-host a Ghost blog but then was warned that my ISP might change my external IP address at any time, so I would need to pay for a static IP address.

Is that true?

(I’d not seen much about that in stuff I’ve looked up so far about self hosting)

  • Saik0@lemmy.saik0.com
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    1 month ago

    You only need a static address for hosting email or VoIP.

    You can do just about everything else with DDNS (dynamic DNS). However with DDNS, you will have downtime until the DDNS update takes effect and propagates to clients. This can be seconds… or hours. Depends on the DDNS service and TTLs that they set and how quickly your script/DDNS client works to push the update out.

    You should check how often your address changes and check how quickly your DDNS solution pushed the update out. If it’s 10 seconds every 10 months, you will likely find that perfectly acceptable. If it’s an hour every other sunday… maybe not. But only you will know how much downtime you can tolerate.

    I always will take static IP personally. But it’s not technically required and you can work around it if you want to save the 10-15$/month.

    Edit: You could also argo tunnel if you’re okay using cloudflare. But I don’t think that answer is particularly in scope of the question. But just in case it’s useful to someone out there I’m adding this edit. Doesn’t fix the PTR requirement for Email and VoIP stuff though.

    • 3dcadmin@lemmy.relayeasy.com
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 month ago

      I run an smtp relay exactly for that kind of stuff with emails. Clients still like wordpress and this is easy to use, many other will accept an smtp relay/service like say gmail (the first one I could think of)

    • atzanteol@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      0
      arrow-down
      1
      ·
      edit-2
      1 month ago

      You only need a static address for hosting email or VoIP.

      Email works fine with non-static IP addresses. I suspect VoIP does too.

      • Saik0@lemmy.saik0.com
        link
        fedilink
        English
        arrow-up
        0
        ·
        edit-2
        1 month ago

        No it does not. You need an active PTR record for email to work for most of the major carriers (Gmail, O365, etc…). Many providers will just outright block consumer IP ranges as well.

        You cannot host an email server on dynamic addresses.

        Edit: And you’ve edited in the VoIP part of your comment… Same thing there, you need PTR and such for those services to work well… Which generally can’t be assigned to dynamic addresses.

        • kevincox@lemmy.ml
          link
          fedilink
          English
          arrow-up
          0
          ·
          1 month ago

          Reverse DNS is different than static IP.

          But yes for outbound email, if you can’t control reverse DNS you will have pain. (Inbound is totally fine) You can in theory just use whatever hostname the ISP’s reverse DNS resolves to however you will get some spam score (or be rejected) as it doesn’t match your “from” domain.

          Outbound email is a huge pain really no matter what. Unless you have a long-term lease on the IP and it isn’t in a bad network you really have to pay someone else if you want reliable delivery.

          • Saik0@lemmy.saik0.com
            link
            fedilink
            English
            arrow-up
            0
            ·
            edit-2
            1 month ago

            You can’t assign a PTR record without a static address though. No ISP will do PTR that follows DHCP updates. I haven’t had issues with my leased IPs from my ISP (Through Centurylink). Though a year back I moved and haven’t been able to get a leased IP from my new provider… I have to relay my emails now through a service, that has been a pain in the ass. But now we head into anecdotal nonsense.

            And yes, we’re talking about hosting services. We’re in Selfhosted… and the OP is talking about publishing their ghost website… a webserver.

            But no, email is otherwise not an issue. I’ve been selfhosting a couple of personal domains for over a decade without issue. I also host several email services for work… no issues outside of some of our clients who want us to use their SMTP servers which apparently suck. But not my issue if their IT fails at managing it.

            Edit: DHCP -> PTR auto follow is a thing that exists though… which just makes it sad that ISPs don’t support it. I literally have hostname updates available and used inside of my own network. Just another sad day when pro-sumers are able to implement RFCs (RFC 2136, opnsense pushes updates to my internal DNS servers) better than ISPs.

            • Dultas@lemmy.world
              link
              fedilink
              English
              arrow-up
              1
              ·
              1 month ago

              You don’t need a PTR record though. I just use DKIM and SPF and have no issues.

          • Saik0@lemmy.saik0.com
            link
            fedilink
            English
            arrow-up
            0
            ·
            1 month ago

            PTR lookups has been a thing for email servers for a very long time… “used to work fine” would have been early 2000’s as far as I can remember.

            PTR is de facto requirement for over 20 years now. So unless you’re talking about pre-turn of the century, not really… email servers haven’t worked without PTRs for a very long time.

            I had to look it up, but Yahoo and AOL implemented PTR checks in 2003-2004. Gmail had it out of the box in 2004.

            Can you run a server without it? Yes… and it will work with any other server that doesn’t mandate valid PTR records. But no major consumer email server has supported receiving mail from a PTR-less server for 20+ years now. So you’re not going to be able to email basically anyone from your server.

      • poVoq@slrpnk.net
        link
        fedilink
        English
        arrow-up
        0
        ·
        1 month ago

        “works fine” as in you can pretend it works, but you will get filtered by any larger email provider.

        • Suzune@ani.social
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          1 month ago

          Dynamic IPs are filtered out, even on my server. This is done by using scores provided by Spamhaus. The majority of connects from such IPs are botnets.

          You can run a private server on your dynamic IP. It should not connect to public servers though.

  • Sliversun@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 month ago

    Some of the other options are cloud flare tunnel or ddns that would give you static ip effect without static ip

  • hperrin@lemmy.ca
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 month ago

    As others have said, you can use dynamic DNS, but you also might have an IPv6 address that doesn’t change. Or maybe it does, you’ll have to check with your ISP. But that one can be set up as an AAAA record in your DNS.

    Most ISPs support IPv6, but some don’t, so you might not be accessible to everyone without also having an A record.

  • some_guy@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    1 month ago

    You can rent a virtual private server (VPS). I used to have a number of these for under $10 / month. I imagine they might cost more now., but chances are you can still find something super affordable.

    Wordpress.org will let you have a free site but you don’t get a custom domain. Wordpress.com has a personal plan for $4 / month. Matt Mullenweg (CEO) has revealed himself to be a crazy piece of shit, so maybe look elsewhere. I’m just trying to give you a sense of how accessible this stuff can be.

    Running a VPS will require more learning, but it can be super gratifying if you enjoy nerdy computer stuff and solving puzzles just for self-satisfaction. I used to use Rackspace, Linode, and something else that I can’t recall at the moment. All were pretty reasonable. Rackspace had a ton of good setup guides for newbies that were well written. I’d occasionally land on those doing a web search for other hosting stuff and found them reliable.

    Edit: DigitalOcean was the one I couldn’t remember.

  • fmstrat@lemmy.nowsci.com
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 month ago

    How are you hosting? And do you have a domain? Lot’s of good advice here, but knowing if you’re running on a Pi, in Docker, etc, would help others give you the easiest/best method.

    In short, you do not need a static IP.

    • Paddy66@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      1 month ago

      Hi, I’m using Docker - one container for Ghost and one for Nginx Proxy Manager.

      I’ve decided to go with DDNS but am having trouble choosing a reliable free provider. I’ve seen Dynu.com recommended but that is not available in the dropdown list of servers in my router’s section on DDNS. Is that relevant?

      Or would I just ignore the router settings and set it up some other way?

      • fmstrat@lemmy.nowsci.com
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 month ago

        Cloudflare is a good choice. I used DNSExit for a while, and also NS1, but settled on Cloudflare. You don’t have to use their proxying, just DNS.

        Here’s a Docker Compose for you that will set myhost.mydomain.com to point to your public IP of wherever it is run:

        dyndns-cloudflare:
            image: oznu/cloudflare-ddns
            container_name: dyndns-cloudflare
            environment:
              - API_KEY=<key>
              - ZONE=mydomain.com
              - SUBDOMAIN=myhost
              - PROXIED=false
            restart: unless-stopped
        
      • RecitalMatchbox@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        1 month ago

        I’m having a good experience with cloudflare, using ddclient on a cron job

        To clarify: it doesn’t matter much what your router supports if you have a server with ddclient (possibly in Docker container). Then you can choose whatever provider you’d like, and there are tons of resources on ddclient.

        • Paddy66@lemmy.mlOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          29 days ago

          If I install ddclient on my mini-pc is that what you mean by having a server with ddclient?

          My Asus router is not shown in their docs as supported - does that matter?

          Also - can I just keep using my current domain name registrar, and not use Cloudflare?

  • 3dcadmin@lemmy.relayeasy.com
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 month ago

    Personally I would look at using a tunnel, something like Cloudflare tunnels (easy to setup, sorts dns out) but many here dislike Cloudflare for a lot of reasons. However the free plan allows you to get started, easily, and then once you are started and serving your blog you can look into other solutions, or failing that stay on Cloudflare. Other tunnels exist but if you have a domain, using cloudflare is the easiest imho to get started

  • Paddy66@lemmy.mlOP
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    1 month ago

    Thank you for your replies everyone!

    I’m looking into DDNS. Before I go with a provider, I notice that my router has this functionality built in. Should I use that?

    (It’s an Asus RT-AX86U Pro - so fairly chunky in terms of spec)

    For reference, the set up is:

    Docker containers for

    1. Ghost
    2. Nginx Proxy Manager
    • ohshit604@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      1 month ago

      (It’s an Asus RT-AX86U Pro - so fairly chunky in terms of spec)

      I have your exact router make and model! I self host my own server with a domain on my home network and make use of the built in DDNS feature.

      My domain registrar is Cloudflare so I have to use a custom script for DDNS, if you’re in the same boat I can provide the script.

      I would suggest looking into Asus WRT Merlin Firmware, the custom firmware enables more functionality to your router.

      Docker containers for

      1. Ghost
      2. Nginx Proxy Manager

      When hosting a reverse proxy like Nginx, Traefik, SWAG, Pangolin, etc keep in mind you 80:80 and 443:443 ports need to be exposed to the host machine then you will forward those ports on your router. This will allow your reverse proxy to communicate with Lets Encrypt generating and verifying your SSL certificates.

    • Dultas@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 month ago

      Running a service like ddclient may give you more options at the cost of being more complicated.

  • Prunebutt@slrpnk.net
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    1 month ago

    I could make this quick: Is your internet access behind a CG-NAT? If yes: you’re gonna need a static IP.

  • K3CAN@lemmy.radio
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 month ago

    I selfhost my blog without a static IP. You just need Dynamic DNS.

    Keep in mind that your outbound bandwidth might be different from your inbound. I get 300mbps in, but only 5mbps out. It’s not noticeable during normal Internet use, but as you start sharing content publicly, limited bandwidth becomes really noticeable.

    • Dultas@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      2
      ·
      1 month ago

      Don’t even need dynamic DNS. Just use ddclient to update your DNS record if your IP changes.