I’m connected via a 4G modem. Got this setup about 3 years ago. In the beginning it was enough to look for the public IP (what’s my IP). The modem showed some sort of private ip in the ui. I’m running stuff at home (Homeassistant, Gitea,) and bought a domain and pointed it to my home IP via Cloudflare. After some time I’ve noticed my modem shows the public IP also internally. For about 2 years now it ran flawlessly, the IP changed from time to time, but not really more than once in several weeks. For about a week all stopped working and the modem shows IP 100.xxxx and outside 85.something I guess I’m behind NAT now. Normal port forwarding on the modem is useless now. Is it possible to open the ports via UPNP? I’ve tried via miniupnp from my Ubuntu server, but it just throws an error.

upnpc -a ifconfig enp1s0| grep "inet addr" | cut -d : -f 2 | cut -d " " -f 1 22 22 TCP

Can I use this to somehow open the ports via UPNP on my modem and bypass the blocking? I can’t even OpenVPN to my modem anymore.

EDIT: i also run AdguardHome, that I use as Private DNS on my Android phone

UPDATE: everything except Adguard Home used as Private DND on my Android works! I’ve used this: https://github.com/mochman/Bypass_CGNAT/wiki/Oracle-Cloud-(Automatic-Installer-Script) - free Oracle VPS + automated well described script. Even HTTPS works fine!

  • @[email protected]
    link
    fedilink
    English
    82 years ago

    I use a VPN that I setup on an Oracle free tier VPS when I need to access my stuff over IPv4. I also have IPv6, so I can connect directly when using 5G on my phone.

    • @[email protected]
      link
      fedilink
      English
      22 years ago

      Oracle is awesome in this one specific way. They suck in all other ways but this is really good.

        • Perhyte
          link
          fedilink
          English
          22 years ago

          I believe on the free ARM instances you get 1Gbps per core (I’ve achieved over 2Gbps on my 4-core instance, which was probably limited by the other side of the connections). What you say may be correct for the AMD instances though.

    • KokeshOP
      link
      fedilink
      English
      12 years ago

      Can I setup a tunnel from my machine to the VPS and link it’s IP to my domain?

  • @[email protected]
    link
    fedilink
    English
    252 years ago

    You’re already using cloudflare, so check out cloudflare tunnels. You install their software on your server which makes an outbound connection, bypassing the need for open ports or a public IP. Note this only does http traffic.

    Another option is tail scale, which won’t make your site public but will let you access it remotely on devices you have their software/app on.

    • @[email protected]
      link
      fedilink
      English
      22 years ago

      I’m actually not sure you can easily get tailscale up and running om such as a setup as it uses the same cgnat ip range.

      • Greg Clarke
        link
        fedilink
        English
        22 years ago

        I haven’t had any issues running Tailscale and cloudflared on the same machines

      • @[email protected]
        link
        fedilink
        English
        92 years ago

        This page says (at the very bottom):

        Tailscale can route its packets peer-to-peer over IPv4 or IPv6, with and without NAT, multi-layer NAT, or CGNAT in the path.

        • @[email protected]
          link
          fedilink
          English
          22 years ago

          Yeah, you’re absolutely correct. I misread that thinking OP would have the CG NAT endpoint and taikscsle on the same physical device, which, I still think, would be a problem: you’d have two interfaces for 100.64.0.0/10. But if CG NAT terminates on the modem and you run taikscale on devices connected to it them there’s surely no issue at all.

          • @[email protected]
            link
            fedilink
            English
            22 years ago

            I run it on my router which has the CG-NAT IP address.

            Whilst you’re right that it could clash, it’s very unlikely (a 1 in 4194302 chance), I imagine Tailscale would detect the clash and change IPs though I could be wrong as it never happened to me (and probably never will - though in all fairness it will eventually happen to someone).

            • @[email protected]
              link
              fedilink
              English
              22 years ago

              I went looking into how that works, and, apparently, tailscale adds individual node routes (in table 52). So yeah, you have very low chances of getting into trouble even if you have an interface with 100.64/10.

      • @[email protected]
        link
        fedilink
        English
        62 years ago

        Been using Tailscale behind CG-NAT for years. It works wonderfully and very rarely needs to route through the DERP infrastructure - it’s almost always a P2P connection.

  • Joe
    link
    fedilink
    English
    502 years ago

    Welcome to the world of Carrier Grade NAT. 100.64.0.0/10 is reserved for this.

    If you are lucky, you also have an IPv6 address. The catch is you need IPv6 on the client-side too.

    A VPS or similar running wireguard and a proxy might bridge the gap.

    It might also be possible to ask your provider for some port forwarding. Probably not, but check anyway.

    Good luck!

    • @[email protected]
      link
      fedilink
      English
      22 years ago

      This is exactly what happened to me, but was able to contact my ISP to drop IPv6 support and get back my ports forwarding to work on my line

      • @[email protected]
        link
        fedilink
        English
        24
        edit-2
        2 years ago

        N.B. to anyone reading this: ask your isp to “opt out of CG-NAT”. Talking about IPv6 may confuse the staffer you’re talking to, it’s partially related but not the fully picture.

  • @[email protected]
    link
    fedilink
    English
    232 years ago

    i’ve been on CGNAT and just pointed my domain to my ipv6 address with no issues - every isp should hand out huge v6 subnets dedicated to you.

    Since my v6 prefix is not stable, i use ddclient from my homeserver to update my domains AAAA record

    • @[email protected]
      link
      fedilink
      English
      1
      edit-2
      2 years ago

      I tried that and couldn’t make it work. My server was unable to receive any http requests. Then I tried doing some tweaking in my ISP router configuration but with no success. So far cloudflare tunnel was the only solution I found

    • lemmyvore
      link
      fedilink
      English
      162 years ago

      Unfortunately IPv6 adoption is not universal. There will be parts of the internet that won’t be able to reach you at a 6-only address.

      • whoareu
        link
        fedilink
        English
        22 years ago

        Yup, my gemini capsule is suffering from it. :(

      • @[email protected]
        link
        fedilink
        English
        12 years ago

        wdym except Verizon? I have a whole section of /56 for me in ipv6, tho the Verizon website is ipv4 only

        • Encrypt-Keeper
          link
          fedilink
          English
          1
          edit-2
          2 years ago

          Verizon IPv6 rollout technically started but has been very limited in the last few years. I live outside one of the biggest cities in the U.S. and it hasn’t even made it here yet. In the last five years they’ve only made it to 50% of their userbase being capable.

  • @[email protected]B
    link
    fedilink
    English
    46
    edit-2
    2 years ago

    Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

    Fewer Letters More Letters
    CGNAT Carrier-Grade NAT
    DNS Domain Name Service/System
    Git Popular version control system, primarily for code
    HTTP Hypertext Transfer Protocol, the Web
    IP Internet Protocol
    NAT Network Address Translation
    VPN Virtual Private Network
    VPS Virtual Private Server (opposed to shared hosting)
    nginx Popular HTTP server

    [Thread #274 for this sub, first seen 11th Nov 2023, 18:30] [FAQ] [Full list] [Contact] [Source code]

  • plague-sapiens
    link
    fedilink
    English
    152 years ago

    Buy a cheap VPS, setup a Wireguard or OpenVPN server (wg-easy is quite nice). Then something like Nginx Prox Manager or plain nginx and expose your services over that.

      • sharpiemarker
        link
        fedilink
        English
        92 years ago

        (Well, never had an issue I didn’t cause myself at any rate.)

        As is tradition

      • plague-sapiens
        link
        fedilink
        English
        52 years ago

        Netcup is my favourite hoster in the EU, but I live in DE. 2€/m for 2c, 2/4gb ram, lots of traffic. They have coupons from time to time or xmas/easter/… deals. The whole front- and backend works like a charm too. Upload your own isos/qcow images, download backups, KVM is awesomely implemented too. Sadly they don’t take crypto and you need a call verification or id via mail for your first purchase (understandable as a german hoster), besides that just wonderful :)

    • andrew
      link
      fedilink
      English
      4
      edit-2
      2 years ago

      Personally I would strongly recommend learning how to do all of this. And then abandoning it for tailscale or something similar once you know what they’re doing behind the scenes. It’s incredibly useful knowledge but it’s also nice to have so much of the process automated and best practices like key rotation done for you. Plus unless your network is hugely crazy or enterprise, you can manage for the really great price of $0.

      And if you really really want to self host (which I understand) there’s headscale for a lot of the features.

      • plague-sapiens
        link
        fedilink
        English
        22 years ago

        Thanks for the tip. Haven’t used tailscale (or sth similar) yet. But I’ll take a look into it :)

  • SiblingNoah
    link
    fedilink
    English
    62 years ago

    You’re probably behind a CG-NAT. Look into establishing a tunnel, like via Cloudflare.

  • @[email protected]
    link
    fedilink
    English
    252 years ago

    A solid workaround is an ssh reverse tunnel with gateway ports enabled. You can do it for pennies with a cheap VPS.

    With this option you open an ssh tunnel outbound and then you can connect back through it from the other side for whatever local services you want to run.

    You first need a VPS with a public IP. Here’s a guide that explains it: https://www.howtogeek.com/428413/what-is-reverse-ssh-tunneling-and-how-to-use-it/

    Just remember to enable gateway ports in the VPS side sshd.conf and disable or adjust any firewall on the VPS so the internet can come in through the VPS ip address and tunnel back to your local system.

    • @[email protected]
      link
      fedilink
      English
      2
      edit-2
      2 years ago

      While I use ssh tunneling to access systems on a temporary basis, usually http, some caveats:

      • I don’t know of a daemon to set up locally that will re-establish tunnels on power loss and the like. Not technically-difficult, but something one probably wants if this is going to be how he’s gonna get at the system long-term rather than “I just need one-off access”.

      • One other downside – the service that the user here is aiming to expose is apparently ssh. For me – reaching an http server – wrapping the connection for remote use is desirable. For him, it probably isn’t, as there’ll be two layers of encryption. Not the end of the world, but it’s a hit. You do want encryption in the outer protocol at least insofar as you need it to protect authentication to the VPS anyway.

      • KokeshOP
        link
        fedilink
        English
        22 years ago

        I need more ports to be exposed - I’m running secure DNS, Git on one port, Webmin on other, Jelllyfin (I can live without that on data), HTTP server on 800/443, Homeassistant 8123,… I also had 3389 open for remote desktop to my Windows machine, etc.

        • @[email protected]
          link
          fedilink
          English
          12 years ago

          You can reduce some of those ports by using a reverse proxy. Do that you can access git home assistant etc from 443 with a subhuman.

      • @[email protected]
        link
        fedilink
        English
        22 years ago

        For reestablishing the connection, use the wrapper ‘autossh’. It can be run from systemd so that it’ll auto start and restart as you command it.

        I have a couple instances using this that are absolutely rock solid after years.

        • kglitch
          link
          fedilink
          12 years ago

          How does the data throughput compare to cloudflare or wireguard?

          • @[email protected]
            link
            fedilink
            English
            2
            edit-2
            2 years ago

            I’m the grandparent commenter, not the parent commenter, but for my very limited use, it’s not noticeable, but I’m also typically just giving a remote machine access to a local web service. I’m not trying to tunnel anything bulk (or where latency is critical, which I’d think might be a larger issue).

            The one thing I can say, though, without digging up numbers: ssh is fundamentally TCP-based. It forces ordering on anything it transports. While there are ways to cram UDP through an SSH tunnel, that’s gonna impose an unwanted constraint. if you want to provide access to anything that natively runs on UDP, I’d probably look into a UDP-based VPN – like Wireguard – that doesn’t do that.

          • @[email protected]
            link
            fedilink
            English
            22 years ago

            Haven’t done any comparisons, but I’m using this in cases where my throughput isn’t too important. I can stream my webcam over it in HD, establish an rdp connection, ssh back through, and control web interfaces like octoprint. It’s acceptable.

            The big advantage is that a $2/month vps gets a static IP, therefore I don’t have to worry about a VPN provider changing the IP or blocking ports.

            Tunneling an encrypted connection through an encrypted connection is pretty much always a bad idea but when you’re evading CGnat or other network blocks, sometimes it’s the best we can conjure up on a whim.

    • zeroxxx
      link
      fedilink
      English
      22 years ago

      That setup will yield off the chart latency if your VPS is not near your location 😱

      • @[email protected]
        link
        fedilink
        English
        12 years ago

        For sure. If you really need to host thrn get the right package of internet services for that activity. If you need a fast fix for a small issue, this method gets around most ISP attempts to block hosting.

  • @[email protected]
    link
    fedilink
    English
    242 years ago

    Have you reached out to your ISP to see if they can give you a dynamic public IP? I recently swapped to a new ISP that was using CGNAT but after contacting their support team with my use case, they were happy to set me up with a public IP so I could continue my self-hosting.

    • @[email protected]
      link
      fedilink
      English
      72 years ago

      This. I had the same situation being put behind CGnat and told them my security webcam needs port forwarding from outside and they had me back to a public IP within minutes.

      • Nik282000
        link
        fedilink
        English
        12 years ago

        ISPs in Canada usually include a clause in their TOS that explicitly prohibits selfhosting. Don’t move here, it sucks.

          • Nik282000
            link
            fedilink
            English
            22 years ago

            It’s to push users into getting commercial accounts.

            • @[email protected]
              link
              fedilink
              English
              5
              edit-2
              2 years ago

              I dunno. The IPv4 address space is getting pretty tight, and aside from rejiggering existing inefficient allocations, there’s not a lot you can do beyond NAT.

              In the US, we had it pretty good for a long time, because we had a rather disproportionate chunk of the IPv4 address space – Ford, MIT, and Apple alone each had their own Class A netblock, about half a percent of the IPv4 address space each, for example.

              But things have steadily gotten tighter as more and more of the world uses the Internet more and more.

              https://whatismyipaddress.com/ipv6-ready

              As expected, the ISPs are no longer receiving new allotments or allocations of public IPv4 addresses from the American Registry for Internet Numbers (ARIN). Some have managed to continue to provide new IPv4 addresses by reallocating some of the addresses they had been assigned in the past but perhaps had never passed on to customers. This buys them a little more time while they scramble to roll out and support IPv6 addresses.

              Like, there’s real scarcity of the resource. It doesn’t require the scarcity to be artificially-induced.

              My ISP used to let one get a /29 IPv4 block for residential users, though they stopped that years ago. Always have had a way to get publicly-facing IPv6 addresses, though.

              End of the day, the real fix is to get the world on IPv6.

        • Caveman
          link
          fedilink
          English
          12 years ago

          I don’t know Canada laws but does it only apply if you make money off it (or intend to). Self hosting Jellyfin server is basically just delayed uploading.

          • Nik282000
            link
            fedilink
            English
            12 years ago

            Afaik it’s at the ISP’s digression. Up until I switched, Bell would block ports 21, 22, 53, 80 and 443.

            • Caveman
              link
              fedilink
              English
              22 years ago

              That’s pretty nice compromise. 80 and 443 are the ones mainly used commercially

              • Nik282000
                link
                fedilink
                English
                12 years ago

                It’s kinda shitty of them to block the ports that makes up +30 years of what the internet IS. Bell/Rogers want your internet connection to be unidirectional, when you host your own content you don’t consume theirs.

                • Caveman
                  link
                  fedilink
                  English
                  12 years ago

                  Yeah, not arguing that, it doesn’t cost them extra to allow those. Still, you can use 8080, 8989, 5000, 7878 etc, for plex, Jellyfin, nextcloud and so on.

                  You can even workaround it by using cloudflare functions that forward requests to your specific port, DNS it to cloudflare and run a commercial webapp out of your garage anyway.*

                  *Except if you want to honor whatever ToS they had you agree to.

  • @[email protected]
    link
    fedilink
    English
    2
    edit-2
    2 years ago

    Unless they’re willing to give you your own IP (dynamic, or maybe static for a fee), that’s a good reason for replacing your ISP imo.

    • @[email protected]
      link
      fedilink
      English
      72 years ago

      You say that as if most don’t hold a monopoly in their available regions. At least in America, you typically have the choice of one, maybe more if you’re in a largeish city, and I suppose you have the option of a 5G hub but that’s terrible for running services.

      • @[email protected]
        link
        fedilink
        English
        3
        edit-2
        2 years ago

        Ouch, I was not aware of that. Here in scandinavialand we have a few local or regional ones in each area, plus a few big ones that cover the entire country.

        Once the fiber is in the ground, “any” ISP can use them, regardless who buried it. I think it’s a remnant from 20ish years ago when the default was ADSL over copper, and the telecom cables were considered public infrastructure.

        • @[email protected]
          link
          fedilink
          English
          42 years ago

          Dude I’d kill for that availability. Here, the companies own the infrastructure, and can offer to let others use it if they’d like but that doesn’t usually happen.