Everything runs on one server I look after at home.
CPU2× XeonE5-4620 v2, 32 threads
Memory256 GBDDR3
Storage3.4 TBMirrored data pair plus spare drives
GPUGTX 1060NVIDIA, 6 GB
How it's wired
Hover a card to trace itWays in
How traffic reaches the serverWireGuardMy own public IPs
CloudflareDNS and tunnels
TailscalePrivate mesh
Eero 6+ and ZyxelLAN and VoIP
5G backupTakes over if the main line drops
Public side
Isolated network namespaceEdge proxynginx and Let's Encrypt
Sites and APIsSYNK Radio, WhensMyBus, Mimso
DataPostgres and PostGIS
Failover linkVirtual cable to the host
Host
Alpine LinuxFirewallnftables and fail2ban
ServicesRadio, files and voice
Remote accessSSH and dashboards
Rescue consoleDell iDRAC, out of band
Two sides, one box
Why it's splitThe host
Everyday services: the radio stack, file shares and Mumble. Anything public on this side goes out through Cloudflare Tunnels, so nothing needs an open port.
The public side
A separate Linux network namespace with its own public IPs over WireGuard, plus its own gateway, DNS and Docker. The public sites, the phone system and the game servers live here, walled off from the rest of the machine.
Storage
A system drive, a mirrored pair of drives for the big datasets, and extra drives for everything else.
At home
An Eero 6+ for Wi-Fi, plus a Zyxel router with a custom VoIP server and a real desk phone plugged in.
NextAbout me