>> Home / site lore / sysadmin, linux
∵ Julius Enriquez ∴ 2024-01-27 ∞ 6'
After an unfortunate incident with Oracle Cloud no longer accepting my cards, the original server went down along with the (sub)domain. So, what to do?
The first plan for getting the site back up was to dust off an old desktop PC and turn it into the new server, with all of the fancy bells and whistles of the old one; this included Nextcloud, everything that was under Sitemap (ripperoni), and a couple other private-use services. However, there were some issues with this course of action.
Most ISPs (mine included) have CGNAT (carrier-grade network address translation) for IPv4 connections. In possibly oversimplified terms, this allows for multiple devices over a large area (a city for example) to share a single IP address. This is done primarily due to the long-running problem of IPv4 address exhaustion (read: not many IPv4 address available anymore), but it apparently also has some privacy benefits; however, it is also why you may get botchecks (read: CAPTCHAs) occasionally.
Now if this was just dynamic IPs, then that'd be fine. There are many free dynamic DNS solutions available which include subdomains (Afraid.org's FreeDNS, DuckDNS, etc.). But no, CGNAT meant that clients from outside networks wouldn't be able to figure out which of the possibly thousands or millions of hosts sharing an IPv4 address is the Meanderspace server.
Then apparently the ISP started rolling out IPv6 support and its addresses were not behind CGNAT! Yeah they were dynamic, which is a bit befuddling and may cause some issues (based on later research). Not sure what the point of dynamic IPv6 addresses are, given that we're prolly not running out of those anytime soon. Still, that's better than the IPv4 situation!
After doing some research into IPv4 and IPv6 tunneling followed by an extensive search for a VPS with a static IPv6 address, that wouldn't leave me penniless with the quickness (very low budget), I was ready to set up an intermediate server to bridge the soon-to-be-new Meanderspace server with the rest of the Internet. Oh yeah, this also included finding a cheap domain to own. Unfortuantely meander.space
was way out of my price range, same with shorter ones starting with mdr
on less common TLDs (top-level domains). I did eventually find meander.site
for a really low annual price, so thanks Namecheap.
Side note:
I had to learn a lot more about IPv6 in the process of doing all this. IPv6 wasn't really taught much during my education; it was practically a footnote compared to IPv4. There's prolly a lot more to learn about IPv6 personally, but more urgent meatspace concerns meant that I couldn't get into it more in-depth. Especially when doing this for free, without a reason besides pure curiosity and novelty back then. Also from what I've heard, my university still hasn't changed a lot in this regard specifically. So one the off-chance that recruiters will see this and know where I went to college, expect students from there to need IPv6 training at minimum. Just a heads-up. ;)
As I was preparing to set up the VPS and the home server for Meanderspace, the second issue made itself known.
The home server was built off multiple hard disk drives (HDDs), harvested from previous desktops and laptops. The server itself was my former desktop PC, in its 10 GB RAM and AMD Bulldozer-era CPU glory (not great in a tropical environment). A quick read on PXE (the front USB ports didn't work) and a Debian netboot setup later, the web server was configured and running fine locally. While preparing the VPS for tunneling, the home server was rebooting after a system update.
It never booted properly again.
The cause was determined very quickly by the sounds of clicking, emanating from the bowels of the older PC. The dreaded clicking of death. (ripperoni again)
There were actually two drives in there, failing at the same time. They're not even from the same manufacturer, much less the same model or batch! What are the chances, huh? Anyways, this is your not-really-regular reminder that RAID != backup.
And so, Meanderspace went away for a while.
While I did still have a VPS, but it's a really small one. In the interest of not disclosing too many potentially sensitive details of a public-facing server, in short it is magnitudes lower-specced than the old server and the home server. SO no Nextcloud, nothing under Sitemap, or other services really.
This setback was extremely demotivating and there were more important matters to attend to, for a while.
Eventually as meatspace concerns began to go away, I started to consider bringing back Meanderspace. As I'm about to enter the job market, it's prolly a good idea to have some kind of website up and running to point people towards. Besides, it would be a good opportunity to brush up some sysadmin chops. Also the VPS and domain are still being paid for, so it'd be unwise to keep them unused. Therefore, Meanderspace is back! In a reduced capacity anyways, but at least with a cloud provider that actually accepts my payment details (looking at you Oracle).
Instead of Debian, the new server runs Alpine. The tradeoff between familiarity and resource usage is worth it, as Alpine was significantly less intensive from the get-go, compared to most other distributions that the VPS provider offered. A fresh install of Alpine was only around 65-75 MBs of RAM! I had used Alpine in the past, but only as a curiosity. This is my first time using it in any remotely production capacity. Ok well, I have also been using it indirectly via postmarketOS on a PinePhone for a while now. However that phone is mostly as a fallback, so I'm not considering it a production use.
Long-term, I'd like to get back to an old plan of changing the website's fork of zola.386/BOOSTRA.386 further. BOOSTRA.386 somewhat recently started being updated again, so perhaps I'll look into possibly updating the fork accordingly. Also in the very long-term, being able to afford multiple servers. In hindsight, it is prolly not a good idea to put everything into a single server. Right now, I'm just using someone else's Nextcloud instance; considerably more limited storage space and functionality, but it's enough for CalDAV and notes.