Hacker News new | ask | show | jobs
by rohan1024 2345 days ago
> even go super old-school and run a web server at home. It's not as if we're short on options in 2020.

Though it's old school, it's incredibly difficult to run server at home now at least in India. The network I connect to is behind a NAT which is behind another NAT. At least that's what I saw when I tried to host my blog on Raspberry PI at home over a year ago. Ultimately I gave up on that endeavor. If anyone has solution that doesn't involve third party, please suggest.

I think I will have to wait until my ISP implements IPv6. That could take another decade :/

6 comments

You can always use https://ngrok.com and other similar "tunneling" solutions. It works like a charm:

https://ngrok.com

https://github.com/cloudflare/cloudflared

https://github.com/inlets/inlets

Thank you for all of these links. This is the first time I've heard of any of them. I especially like the inlets project.
Networks such as cjdns and secure scuttlebutt can help you overcome this problem, but introduces new ones (or introduces different models that are not already widely deployed)

- [0] https://github.com/cjdelisle/cjdns/

- [1] https://scuttlebutt.nz/

I ran my vlog on RasPi and did everything in a static generated way. I configured Cloudflare to cache everything for 30 days. Finally I have a cache warming script that requests each static file after I purge the cache (could be better by only purging and warming changed files, like via a Makefile). With this approach, a tunnel with a public port and IP could run minimally during the purge/warm cycle and then be shut down.

I solicit feedback via email rather than having public comments, and upcoming authenticated areas are done via Auth0 tokens.

Your ISP implementing IPv6 won't be enough: One can't reach it from the outside, as long as not "everybody" else has IPv6.
You don't need everyone on IPv6. Just most people. Then it becomes the issue of those still on v4
Right. Couple of decades in that case.
I've been running my homeserver for a couple of years now (in India), even gave a talk about it at RootConf last year. It is definitely doable. Two approaches that I'd suggest:

1. Talk to your ISP. Most of them will assign you a public static IP for a fee (5000 INR/yr was what I was quoted last time)

2. Setup a simple proxy on a $5 droplet on Digital Ocean. I run OpenVPN server on the droplet, a client on the homeserver, and `simpleproxy` that forwards the relevant ports. You can do the same with iptables as well.

3. Any other approaches involving ngrok-like solutions are much costlier, unless you host it.

Which isp are you on? For all you know, it might be possible to get an ipv6 now.

I was in the same predicament but there was a news item that act(ISP) was rolling out ipv6... speaking with customer care and even escalating to nodal support was useless as they were clueless... Spent an afternoon fiddling with router and I got a v6 address no problem!

Tl;dr; don't believe clueless tech support .. Just try it out at your end.. you might get a pleasant surprise!