Haphazard Homelab

2026-08-16 Live

Architecture & Service Inventory Infographic Doc Sweeps Pending

Oracle Cloud VPS

OCI ARM

Oracle Linux 9.8 • Hostname: haphazard-vps-oracle

Edge Hub
Public IP 82.70.253.152
Private VCN 10.0.0.160
Tailnet IP 100.64.0.1

Terminates all incoming public TLS traffic via Caddy (Let's Encrypt). Holds the control plane endpoint frps :7000 to receive outbound connections from home, bridging public HTTP subdomains to local & tunnelled containers.

Edge & Local Services
Caddy Proxy frps Tunnel Wallabag Karakeep Miniflux Homepage Uptime Kuma Headscale BentoPDF

iMac at Home

macOS Sonoma

User: yjpecht • Zero Inbound Ports Open

Storage & Compute
Home LAN IP 10.0.0.63
Tailnet IP 100.64.0.2
Storage Setup APFS + ExFAT/NTFS

Houses heavy workloads & media libraries. Initiates a single persistent outbound tunnel (frpc LaunchDaemon) to VPS. Home ISP block is transparently bypassed. Backup orchestrator (Backrest).

Heavy & Media Services
Plex Media Server Tautulli Seerr Audiobookshelf Bookorbit Maintainerr Backrest (Restic)

Traffic Routing Architecture & Outbound FRP Tunnel Logic

How external HTTPS requests cross CGNAT/Inbound blocks to reach home containers

Public Web Flow Tailnet Admin Layer
1. Entry Point

Public Internet

*.haphazard.one

Spaceship DNS A-Record
→ 82.70.253.152
2. OCI Edge VPS

Caddy Proxy & FRP Server

Terminates TLS (Let's Encrypt)

80/443: Caddy Reverse Proxy
7000: frps (Control plane)
3. Persistent Tunnel

Single Outbound TCP

Initiated by iMac LaunchDaemon

No port forwarding at home!
frpc dials OUT to frps
4. iMac Home Containers

Local Docker Apps

APFS DBs + External Media

• Plex (TCP 32400 Direct)
• Seerr (5055)
• ABS (13378) • Books (8083)
1

Outbound-Only Tunnel

frpc dials out to VPS. Home IP can drift without breakage and no open router ports are required. Single point of failure if frpc dies.

2

Caddy Owns All TLS

Caddy handles Let's Encrypt for both local VPS and tunnelled iMac services. Zero containers deal with cert renewals or HTTPS listeners.

3

Plex Direct Exception

Bypasses Caddy entirely. Operates as raw TCP tunnel on port 32400 with dual-IP setting so home clients get gigabit LAN speed directly.

4

Parallel Admin Network

Headscale Tailnet handles all admin traffic (Dozzle, Beszel, SSH). Nothing sensitive gets a public hostname, replacing complex auth layers.