My Networking Journey

PS Vita

The way I got into networking was with my PS Vita. It was my first gaming console, and I wanted to breathe life into it again and get some use out of it. Mainly, I wanted to stream my Vita to the big screen via HDMI. I tried all sorts of YouTube videos and jailbreaking methods, but nothing worked.

While going down that rabbit hole, I found a Reddit thread talking about Moonlight and NVIDIA GameStream. This allowed users to stream their NVIDIA GPU to almost any device, including my tiny and low-powered PS Vita. There was a whole community around this, and I spent time figuring out how to get it working.

At first, it was difficult since it was my first time playing with IP addresses, but eventually, it worked. I used it to play games from my bedroom without turning on the living room TV, or even just walk around the house with the power of my desktop in the palm of my hand.

ZeroTier

Then I started thinking — what if I left the house? Could I still stream? This led me to ZeroTier, a self-hosted VPN that routed traffic through my home as if I were still there. This allowed me to access my home computer from anywhere.

The PS Vita couldn’t run a VPN, but I could set it up on my phone. That meant I could remote into my PC from anywhere, mainly at school. I loved that I could bring a PlayStation controller and play whatever I wanted wherever I wanted, as long as I remembered to turn my PC on before leaving.

Home Assistant

After a while, I wanted to take things further. I got curious about Smart Home and IoT devices. On Reddit, I found two main options: Apple HomeKit or Home Assistant. Home Assistant caught my interest.

I had never used virtual machines before, but to run Home Assistant, I needed one. I followed a YouTube tutorial on VirtualBox, later switched to Hyper-V on Windows 11 Pro, and got it running. But leaving a gaming PC running a tiny VM 24/7 wasn’t practical, so I repurposed an old laptop with VirtualBox and moved the server there.

Networking

The next challenge was networking. The laptop’s connection was terrible, so I bought the longest Cat6 Ethernet cable I could afford. That gave me gigabit networking. I also added a switch so my gaming PC, work laptop, and even my Apple TV 4K could get fast wired connections.

Now I had networking to my bedroom, fast game streaming via Moonlight, and a working smart home server. But I wanted remote access to Home Assistant and the ability to turn my PC on and off. With ZeroTier, OpenSSH, and Wake-on-LAN in Home Assistant (via custom YAML), I achieved exactly that.

Media Server

With confidence growing, I decided to build a media server. Netflix’s £10/month fee annoyed me, so I installed Jellyfin and hosted my own movies and shows from the box sets I had collected over the years. On home Wi-Fi, it worked perfectly.

I tried ZeroTier again, but Jellyfin didn’t support it well. I turned to port forwarding but hit a wall: my ISP used CGNAT. They offered to move me to 2.5 Gbps for a fee, but instead, I found another solution — Cloudflare. I set up Cloudflare Tunnel as a service so Jellyfin started with my PC.

At first, I only got random Cloudflare URLs. Buying a domain was cheap, so I linked it to my services. Now I could access my media library anywhere in the world, in any language (sometimes even French releases, since they were cheaper).

TrueNAS

Running Jellyfin on my PC 24/7 still wasn’t practical. To solve this, I repurposed a Mac Mini into a NAS. I harvested two 500 GB drives and another ~400 GB spare, installed TrueNAS, and set up a proper home server. That was my introduction to “homelabs,” even though I didn’t know the term at the time.